Алгоритм хэширования Bitcoin: просто о сложной технологии

Год 2017 для криптовалютного мира стал значимым. Стремительный рост котировок цифровых монет, Bitcoin (BTC) в частности, побудил в рядах обывателей жгучий интерес не только к майнингу виртуальных денег, спекуляциям на биржах, но и к самим электронным платежным системам (ЭПС), как явлению. Армия пользователей растет.

Большинству интересен вопрос, как функционируют виртуальные архитектуры, блокчейн и криптография, цифровые валюты. Попробуем ответить на этот вопрос доступно на примере старейшего, но не идеального для криптовалютного мира протокола SHA-256, составляющего основу первой криптовалюты с собственной цифровой монетой BTC.

Важно! Протокол SHA-256 – однонаправленный алгоритм хеширования биткоина семейства SHA-2, созданный с целью защиты информации путем преобразования сообщения любой длины (хоть четырехтомник Л. Толстого «Война и мир») в короткий «отпечаток». Длина такой «краткой аннотации» 256 Бит.  

Немного истории…

О том, когда и кто явил миру это чудо человеческой мысли. В 2002 году не какая-то «шарашка», а сама «Цитадель зла» АНБ США (агентство, что отвечает за нацбезопасность Штатов) презентовала в узких кругах протокол кодирования информации SHA-256. Спустя пару месяцев несколько видоизмененный алгоритм, зато на федеральном уровне и громогласно представил метеорологический университет все тех же Соединенных Штатов. После 2-летних творческих мук вышла еще одна, усовершенствованная версия инновационной технологии шифрования.

На этом Агентство не остановилось, продолжая «допиливать» собственный проект еще 3 года. Результатом доработки протокола стал патент под лицензией «Royalty-free», защищающий интеллектуальную собственность версии №2, что дало возможность использовать инновационную технологию коммерческим структурам. Этим воспользовался Сатоши Накамото (кто бы он ни был), возведя на основе SHA-256 архитектуру Биткойна. При этом протокол, для усиления безопасности, задействован в ЭПС дважды.

Факт! Даже в том случае, если активный пользователь Сети не добывает в поте лица «виртуальное золото», он все равно сталкивается с данной технологией. Многие веб-ресурсы защищены протоколом безопасности SSL. Фундаментом его функционала является известный алгоритм. Поэтому, заходя на подобные сайты, пользователь в автоматическом режиме контактирует с алгоритмом.

Хэш-функция SHA-256, что это?

Прежде чем перейти к объяснению, разберемся в терминологии. Хэширование – метаморфозы, происходящие с входящими данными неограниченного размера, превращающие их в исходящую цифровую строчку. Преобразования происходят, благодаря заранее разработанному математическому уравнению. Полученная строчка абсолютно уникальна и является неким «дайджестом» входящего информационного массива. Именно эту строчку именуют хэш-суммой, хэш-кодом или по-простому – хэш. Алгоритм, который претворил в жизнь чудесную метаморфозу, носит название хэш-функция.

Для полноты понимания приведем пример: предложим хэш-функции на входе бессмертное произведение А. С. Пушкина «Евгений Онегин». В итоге получим замысловатый код примерно такого типа: c8ca7865a9b924590dcc54a6f117659b. Обратить вспять «подпись» – получить оригинал произведения, нельзя. Однако если изменить хоть один знак в поэме, хэш будет выглядеть кардинально иначе. Объем входящего массива данных не играет роли – длина хэш-блока будет та же. Например, введя букву «А», получим тот же шестнадцатеричный код, состоящий из набора случайных символов. При майнинге на видеокартах, отживающих свой век и асик-чипах используется тот же принцип.

Генерация блоков в хэш-суммы при майнинге «битка» или другого альткойна отображается в интерфейсе программного обеспечения короткой строчкой типа «Accepted 0aef59a3b». При этом блок может включать в себя десятки, сотни тысяч, даже миллионы подобных строчек, но лишь одна является той самой «подписью», которую так рьяно ищут майнеры с помощью собственных вычислительных мощностей. Поиск в виртуальных залежах «того самого» хэша происходит путем решения множества уравнений. Количество нулей вначале изыскиваемого кода определяет «правильность» хэша. Вероятность обнаружения обусловлена уровнем сложности независимой структуры ЭПС.

Важно! По данным на первый квартал 2018 года, количество «0» в верном хэш-коде составляет плюс/минус 17 знаков. Вероятность нахождения – примерно 1 к 1.4*1020. Другими словами, это даже не иголка в стоге сена. Скорее это похоже на поиск песчинки правильной формы на всех песочных зонах планеты (пустыни, пляжи и т.д.). Поэтому, добыча «битка» требует серьезных мощностей и энергозатрат.

Как это работает?

Прежде, немного цифр. Определяющие параметры протокола выглядят так:

  • размер блока составляет 64 Байта;
  • максимальная длина сообщений – 33 Байта;
  • размер хэш-кода – 32 Байта;
  • количество итераций (повторений) – 64 в одном раунде;
  • максимальная скорость – приблизительно 140 MIB/s.

Функционирование технологии основано на методике Меркла-Дамгарда. Входящий информационный массив дробится на более мелкие составляющие весом по 512 Бит каждый, что соответствует 64 Байтам (1 Байт = 8 Битам). После дробления происходит перемешивание фрагментов по схеме, изначально заложенной в протоколе. На выходе получается хэш весом 256 Бит или 32 Байта. Процедура хэширования осуществляется путем 64 повторений (итераций). Сегодня этот показатель  является достаточно скромным, что находит подтверждение, если взглянуть на другие, более «свежие» проекты.

Важно! Каждая из 64 итераций активирует хэширование слов, которые являются неотъемлемой частью блока. Вычисления пар слов осуществляется функцией. Результат суммируется, образуя нужный хэш. Новый блок генерируется на базе предыдущего. Это и есть знаменитая технология блокчейн – цепочка блоков.

В заключении…

Подведем итог. Стремительно развивающееся криптовалютное сообщество показывает, что данная технология, некогда эффективная и надежная, выглядит сегодня довольно-таки слабовато. Причем настолько, что позволила разработать и запустить в реализацию асик-чипы, предназначенные непосредственно для обхода протокола. Это оборудование ликвидировало майнинг на «домашних» процессорах, добивает добычу койнов при помощи видеокарт. Казалось бы, конкуренция, что может быть плохого. Однако асик-чипы заметно централизуют криптовалюту и алгоритмы, попирая основополагающий принцип. На территории Китая функционируют не просто майнинг-фермы, а целые промышленные комплексы из асик-майнеров.

Большая часть криптовалютного рынка, по крайней мере, пока, под технологией SHA-256. Однако появляющиеся архитектуры на фундаменте принципиально новых алгоритмов уже наступают на пятки протоколу. К примеру, занимающий второе место по капитализации и стоимости койна ЭПС Эфириум, базируется на технологии Ethash известной ранее, как Dagger. Данный алгоритм уверенно удерживает максимально возможную децентрализацию. Возможно, в ближайшей перспективе именно он потеснит с пьедестала морально устаревший SHA-256.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: