Top.Mail.Ru

Хэш-функция SHA-256: что это и зачем она нужна?

Хэш-функция SHA-256

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

Историческая справка

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

Ее предшественница — хэш-функция MD5 — гораздо более доступная в вычислительном плане и дешевая. В конце 90-х появились сомнения в ее безопасности. Тогда Ханс Доббертин доказал, что при наличии определенных возможностей и навыков взломать систему может любой хакер.

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

Ее главное преимущество — удачное сочетание безопасности и вычислительной скорости. Они объясняются, прежде всего, 256-битными ключами. Поэтому хэш-функция стала использоваться во многих серверах и приложениях.

хэш-функция стала использоваться

Принцип работы

Безопасность SHA-256 обусловлена грамотным выстраиванием криптографических функций. Например, хэш-функций Merkle-Damgarding, которой присуще одностороннее сжатие Davies-Meyer. Этот метод устойчив к дублированию хэшей и обеспечивал достаточно высокую защиту.

Метод стал основой будущей функции SHA-256. Она вмещает хороший объем входных данных и выдает сводку информации ограниченной длины. Если введенные данные меняются, SHA-256 мгновенно создает новый хэш.

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

Поэтапный процесс вычисления хэшей SHA-256

SHA-256 — оптимизированная функция протокола сети Bitcoin. В ней перед майнерами стоит задача производить сложные вычисления.

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

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

Результат вычислений приобретает вид уникального идентификатора, доступного для обнаружения в любом блоке сети. Он и есть функция SHA-256.

Генерация адресов биткоина

Функция SHA-256 использовалась Накамото для создания биткоин-адресов. Они становятся исходом применения криптографической системы с цифровой подписью ECDSA. Эти подписи очень сложные и их много, поэтому Накамото решил их упростить.

Во-первых, сначала с применением ECDSA создаются ключи. Во-вторых, открытый ключ хэшируется с помощью SHA-256. В-третьих, к хэшу применяется функция RIPEMD-160. Она генерирует безопасный, оригинальный и достаточно короткий адрес.

Шестнадцатеричный идентификатор «0х00» сразу же добавляется в хэш RIPEMD-160. Более того, с его помощью можно выявить адрес в сети Bitcoin цифровым способом.

Далее следует применить функцию SHA-256, и полученный 4-байтный результат соединить с идентификатором 0х00. В заключение — использование функции с именем Base58Check, которая и создает готовый биткоин-адрес.

Эта процедура гарантирует несколько важных нюансов.

  1. В начале любого биткоин-адреса стоит цифра 1, по крайней мере, если они унаследованные. Другие адрес биткоинов генерируются иными способами.
  2. Все биткоин-адреса оригинальны и неповторимы.
  3. Полученные адреса можно проверить.
  4. Идентификация транзакций.

Что касается последнего пункта, его суть заключается в том, что уникальными являются не только адреса биткоинов, но и все транзакции, проходящие по сети. В результате полностью исключена вероятность утечки данных и использования их в корыстных целях.

Автор: Bigbit
Категория: О блокчейне
Дата: 08.04.2021
Нашли ошибку?

Нашли ошибку? Выделите фрагмент текста и нажмите Ctrl + Enter

Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Похожие статьи

Больше

4 способа для малого бизнеса извлечь пользу из блокчейна

4 мин.

Платформа EOS и ее криптовалюта

4 мин.

Смарт-контракты в сети блокчейн и их предназначение

4 мин.
Авторизация
*
*
Регистрация
*
*
*
*
Генерация пароля

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: