HASH

Что такое HASH?

Хеш – это функция, которая преобразует ввод букв и цифр в зашифрованный вывод фиксированной длины. Хеш создается с использованием алгоритма и необходим для управления цепочкой блоков в криптовалюте.

Ключевые моменты

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

Как работает хеш

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

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

Решение хэша начинается с данных, имеющихся в заголовке блока, и, по сути, решает сложную математическую задачу. Заголовок каждого блока содержит номер версии, временную метку, хэш, использованный в предыдущем блоке, хэш корня Меркла, одноразовый номер и целевой хэш.

Майнер фокусируется на nonce, строке чисел. Этот номер добавляется к хешированному содержимому предыдущего блока, которое затем хешируется. Если этот новый хеш меньше или равен целевому хешу , то он принимается в качестве решения, майнеру дается вознаграждение, и блок добавляется в цепочку блоков.

Краткая справка

Процесс проверки транзакций блокчейна основан на шифровании данных с использованием алгоритмического хеширования.

Решение хэша требует, чтобы майнер определил, какую строку использовать в качестве одноразового номера, что само по себе требует значительного количества проб и ошибок. Это потому, что одноразовый номер – это случайная строка. Очень маловероятно, что майнер успешно найдет правильный одноразовый номер с первой попытки, а это означает, что майнер потенциально может протестировать большое количество вариантов одноразового номера, прежде чем сделать его правильным. Чем выше сложность – мера того, насколько сложно создать хэш, который удовлетворяет требованиям целевого хэша, – тем больше, вероятно, потребуется для генерации решения. 

Пример хеша

Хеширование слова «привет» даст результат той же длины, что и хеш для «Я иду в магазин». Функция, используемая для генерации хэша, является детерминированной, что означает, что она будет давать один и тот же результат каждый раз, когда используется один и тот же ввод. Он может эффективно генерировать хешированный ввод; это также затрудняет определение ввода (что приводит к майнингу), а также вносит небольшие изменения в результат ввода в неузнаваемый, совершенно другой хэш.

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