Криптография в блокчейне — все решает хеш
В прошлой статье мы уже писали о том, что такое блокчейн, и что криптография необходима для его функционирования. Мы даже прикрепили видео, где «на пальцах» объясняется работа криптографических хеш-функций. Сегодня расскажем, как именно с помощью криптографии создаются блоки и формируется цепочка. Продолжаем на примере блокчейна Биткоина.
Читать прошлую статью о том, что такое блокчейн
Базовые понятия
Блок — это базовый элемент цепи блокчейна, который состоит из тела блока, в котором находятся транзакции, и заголовка, который содержит техническую и криптографическую информацию.
Транзакции — это записи в блокчейне, содержащие информацию о перемещениях биткоинов от одних пользователей к другим.
Криптография — это наука о шифровании информации, ее защите и безопасной передаче. Также криптография помогает проверять подлинность данных.
Хеш-функция — это алгоритм, математическая формула, которая шифрует данные любого объема, превращая их в фиксированную по длине строку из букв и цифр. Эта строка называется хеш-суммой или просто хешем, а сам процесс преобразования — хешированием. Хешированием занимаются майнеры.
Эффект лавины — это важное свойство хеш-функции. Оно гарантирует, что если файл прогнать через хеш-функцию, а потом заменить в файле хотя-бы один знак и снова прогнать через ту же хеш-функцию, то на выходе получится уникальная хеш-сумма, полностью отличная от предыдущей.
Для чего используется хеширование
Хеширование позволяет установить, соответствует ли полученная копия файла оригиналу. Хеш-сумма какого-либо файла используется как электронная подпись. Когда файл пересылают, к нему прикрепляют хеш-сумму и информацию о той хеш-функции, которая использовалась для шифровки. Получатель информации всегда может прогнать полученный файл через хеш-функцию и сравнить полученную хеш-сумму с той, что была прикреплена к файлу. Если суммы совпадают, то файл оригинальный, то есть потерь и изменений по пути не было.
В блокчейне хеширование помогает децентрализовано и надежно хранить огромные массивы данных. База информации постоянно растет и занимает все больше памяти. Чтобы проверять подлинность данных, их надо сравнивать с резервными копиями. Резервные копии есть у каждого участника сети, а их подлинность определяется с помощью сравнивания хешей.
Для блокчейна не подходят обычные хеш-функции, потому что они ненадежны. Поэтому Сатоши Накомото экспериментировал с криптографическими хеш-функциями и запрограммировал в блокчейне Биткоина использование функции под названием Н.265. Разновидностей криптографических функций много, но все они должны обладать следующими характеристиками:
● Скорость — хеш должен вычисляться достаточно быстро.
● Однонаправленность — не должно быть способа превратить хеш в исходную информацию.
● Лавинный эффект — малейшее изменение исходных данных должно кардинально менять получаемый хеш.
● Стойкость к коллизиям — должны быть сведены к минимуму варианты получения одинакового хеша из разных исходных данных.
Для любопытных: как выглядит информация после хеширования и как это все применяется в жизни (помимо блокчейна и криптовалют):
Как формируется цепочка блоков
Блоки в блокчейне идут последовательно: от самого первого, который называется «родительским», до последнего на данный момент. Информация каждого блока хешируется майнерами с помощью хеш-функций. Когда один из майнеров находит хеш-сумму всего блока, полученная строка из букв и цифр добавляется в раздел технической информации следующего блока. Эта строка в новом блоке называется «переменной».
Записывание хеша каждого предыдущего блока в каждый последующий гарантирует эффект лавины. Потому что если поменять хоть один знак в одном из старых боков, то поменяется хеш-сумма этого блока, после чего поменяются хеш-суммы всех последующих блоков. Если такую операцию произведет один из участников сети, то полученные хеши не совпадут с теми, которые есть у остальных участников, а блокчейн автоматически заменит все измененные блоки на правильные копии. Именно поэтому данные в блокчейне крайне сложно, почти невозможно подделать.
Заключение
Тема криптографии и хеширования не только сложная, но и обширная, этому в одной из следующих статей расскажем подробно, как майнеры находят хеш-сумму и за что они вообще получают вознаграждение в виде биткоинов.
Почему это важно? Потому что круто и интересно. Понимая, как работает блокчейн, вы разберетесь и в сути криптовалют, начнете покупать, зарабатывать, сберегать, приумножать, тратить. А кто-то из вас создаст собственный проект на основе блокчейна.
Будем благодарны за репост этой публикации! Если вам нравится, что мы делаем, поддержите нас силой голоса или другими способами, которые собраны на этой страничке → https://teletype.in/@dnation/ByPVHKHZL
Команда Digital Nation