Хеш

Що таке хеш?

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

Ключові винос

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

Як працює хеш

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

Хешування вимагає обробки даних із блоку за допомогою математичної функції, що призводить до виведення фіксованої довжини. Використання виходу фіксованої довжини збільшує безпеку, оскільки кожен, хто намагається розшифрувати хеш, не зможе визначити, наскільки довгий чи короткий вхід, просто подивившись на довжину виводу.

Вирішення хешу починається з даних, наявних у заголовку блоку, і по суті вирішує складну математичну задачу. Кожен заголовок блоку містить номер версії, позначку часу, хеш, використаний у попередньому блоці, хеш кореня Merkle, nonce та цільовий хеш.

Майнер зосереджується на нонс, рядок чисел. Цей номер додається до хешованого вмісту попереднього блоку, який потім хешується. Якщо цей новий хеш менше або дорівнює цільовому хешу, він приймається як рішення, майнер отримує винагороду, а блок додається до блокчейну.

Короткий огляд

Процес перевірки для транзакцій блокчейну покладається на дані, що шифруються за допомогою алгоритмічного хешування.

Вирішення хешу вимагає від майнера визначити, який рядок використовувати як nonce, що саме вимагає значної кількості спроб і помилок. Це тому, що nonce є випадковим рядком. Навряд чи майнер з першої спроби успішно придумає правильний нонс, що означає, що майнер може потенційно протестувати велику кількість варіантів nonce, перш ніж це виправити. Чим більша складність – міра того, наскільки важко створити хеш, який відповідає вимогам цільового хешу – тим більше часу, ймовірно, знадобиться для створення рішення. 

Приклад хешу

Хешування слова “привіт” дасть результат такої ж довжини, як хеш для “Я йду в магазин”. Функція, яка використовується для генерування хешу, є детермінованою, що означає, що вона буде давати однаковий результат кожного разу, коли використовується однаковий вхід. Він може ефективно генерувати хешований вхід; це також ускладнює визначення вхідних даних (що призводить до видобутку корисних копалин), а також вносить незначні зміни у вхідні результати в невпізнаваний, зовсім інший хеш.

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