Що містять 80 байтів?
| Поле | Розмір | Для чого він потрібен |
|---|---|---|
| Версія | 4 байтів | Яким правилам відповідає блок |
| Хеш попереднього блоку | 32 байтів | Пов’язує цей блок із попереднім |
| Корінь Меркла | 32 байтів | Один хеш для всіх транзакцій |
| Час | 4 байтів | Коли майнер каже, що створив блок |
| Біти (ціль) | 4 байтів | Наскільки малим має бути хеш блока |
| Нонс | 4 байтів | Число, яке майнери постійно змінюють |
Чому майнери хешують лише заголовок?
Тому що він представляє весь блок. Корінь Меркла враховує кожну транзакцію, тож будь-яка зміна платежу змінює заголовок. Хеш попереднього блока пов’язує його з усією історією, тож редагування старого блока порушує всі заголовки після нього.
А хешувати 80 байтів швидко. Майнери обчислюють подвійний SHA-256, порівнюють результат із ціллю, змінюють nonce і повторюють це трильйони разів на секунду.
Наскільки це мало насправді?
У ланцюзі приблизно 969 785 блоків (актуальні дані), тож усі заголовки від 2009 разом займають приблизно 78 MB. Тому легкі гаманці можуть завантажити всі заголовки, перевірити доказ роботи для кожного й усе одно поміститися на телефоні. Повні блоки за ними займають сотні гігабайтів.
Джерела
- Алгоритм хешування блока · Bitcoin Wiki
- Посилання про блокчейн: заголовки, дерева Меркла, ціль · Документація розробника Bitcoin
- Bitcoin: пірингові електронні гроші · Satoshi Nakamoto, 2008
Актуальні дані на цій сторінці надходять з API CloudMineCrypto та публічних даних блокчейну, регулярно оновлюються й позначені там, де відображаються. Лише для ознайомлення, не фінансова порада.