+34 641 10 27 16

Корень Меркла

База знаний

Все транзакции в одной строке заголовка

· Обновлено

Корень Меркла это свёртка всех транзакций блока в одно число. Именно через него ваш асик, сам того не зная, подписывает состав блока.

Что это и зачем

Транзакции блока хешируются попарно, результаты снова попарно, и так до единственного числа наверху. Оно и называется корнем Меркла и лежит в заголовке блока. Асик перебирает хеши заголовка, значит каждая его попытка уже содержит в себе весь состав блока.

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

Дерево даёт и быстрые проверки: чтобы убедиться, что транзакция есть в блоке, не нужен весь блок, достаточно короткой ветки от неё до корня. На этом стоят лёгкие кошельки, которые не хранят цепочку целиком.

С майнингом у корня есть и бытовая связь: когда пул обновляет состав блока или двигает поле в служебной транзакции, корень пересчитывается, и воркеры получают новое задание. Частые новые задания от пула это как раз жизнь дерева Меркла, а не проблема связи.

Коротко в таблице

Что этосвёртка транзакций блока в одно число
Где лежитв заголовке блока
Что гарантируетсостав блока нельзя подменить тихо
Что даёт кошелькампроверку транзакции без всего блока
Связь с асикомновое задание при каждом пересчёте

Где майнер сталкивается с ним

Новые задания от пула каждые несколько секунд: пул перебрал состав блока, корень изменился, работа продолжилась с новым заголовком.

Смена задания при появлении свежего блока в сети: старый состав устарел целиком, и доработка по нему это stale share.

Лёгкий кошелёк на телефоне подтверждает вашу выплату веткой Меркла, не выкачивая блок: то самое дерево в быту.

В отчётах пула слово merkle root встречается в сырых данных заданий: пугаться его не нужно, это обычная часть протокола.

транзакции блокахеши попарноКорень Мерклазаголовок блокаперебор асиком

Пример на пальцах

В блоке четыре транзакции: A, B, C, D. Хешируются пары AB и CD, потом их результаты вместе, и остаётся одно число. Поменяйте в C хоть байт, и наверху окажется другое число, к которому вся найденная работа уже не подходит. Так четыре строки охраняются одной.

Связанные термины

Куда идти дальше на сайте

Монеты

Алгоритмы

Вопросы и ответы

Асик что-то знает о транзакциях блока

Нет, он видит только заголовок с готовым корнем. Состав блока собирает пул, асик доказывает работу над этим составом.

Почему пул присылает задания так часто

Пул обновляет состав блока: новые транзакции, новые комиссии. Каждый пересчёт корня это новое задание, и это нормальный ритм работы.

Корень Меркла и корень дерева это одно и то же

Да, дерево Меркла это структура попарных хешей, корень её вершина. В заголовок блока попадает только вершина.

Как термины связаны между собой

Любое звено кликабельно. Оранжевым помечено то, где вы сейчас.

К списку терминов

Ищете ASIC-майнер

В каталоге 212 моделей. Сравнить их можно по хешрейту и по джоулям на терахеш, а в калькуляторе подставить свой тариф и увидеть остаток на руки.

Страницу собрал и проверил Денис Климчук. Обновлено .