Хеш (Hash)
Кратко: Хеш (hash) — это результат фиксированной длины, который выдаёт хеш-функция — алгоритм, применяемый для защиты и проверки данных.
Хеш (hash) — это результат фиксированной длины, который выдаёт хеш-функция — алгоритм, применяемый для защиты и проверки данных. Каким бы ни был размер входных данных, хеш представляет собой короткую строку, которая служит своего рода цифровым отпечатком этих данных.
Почему это важно
У хороших криптографических хеш-функций есть несколько ключевых свойств. Одни и те же входные данные всегда дают один и тот же хеш. Изменение даже одного символа даёт совершенно другой хеш. Практически невозможно вычислить входные данные по хешу или найти два разных набора входных данных с одинаковым хешем. Хеширование часто называют шифрованием данных, но это односторонний процесс: ключа нет, и восстановить данные по их хешу нельзя. Блокчейны повсеместно опираются на хеши. Заголовок каждого блока содержит хеш предыдущего блока, что связывает блоки между собой и делает любое вмешательство очевидным. Транзакции идентифицируются по своим хешам и сводятся в дерево Меркла, а майнинг по алгоритму доказательства работы — это поиск хеша блока, удовлетворяющего целевому значению. Bitcoin использует SHA-256, а Ethereum — Keccak-256.
Пример
Хеши SHA-256 для «hello» и «Hello» выглядят совершенно не связанными между собой, хотя эти слова различаются всего одной буквой, и каждый хеш состоит из 64 шестнадцатеричных символов. Когда криптобиржа показывает идентификатор транзакции (TxID) для вашего ввода или вывода средств, этот идентификатор — хеш, который можно вставить в обозреватель блоков, чтобы найти транзакцию.