Типы головоломок Proof of Work, аналогичные биткойнам, не зависят от размера данных. Неофициально, задача состоит в том, чтобы попробовать разные случайные значения, добавленные к сформированному блоку, которые при хешировании создают дайджест с определенным количеством битов в качестве шаблона префикса.
Формально в биткойнах задача состоит в том, чтобы найти случайное число r такое, что:
H (b || r)
, где b - это блок, который должен быть сформирован (включая набор отобранных транзакций из mempool), а D - параметр «сложность», который динамически изменяется со временем в сеть, чтобы сохранить скорость решения головоломки как можно более устойчивым. «Трудность» решения головоломки одинакова для заданной хэш-функции H (с определенным размером дайджеста в битах) и порогового значения D, независимо от того, равен ли размер блока b всего 1 КБ или 1 ТБ.
Таким образом, предполагаемое время решения головоломки в конечном итоге основано на D и количестве хешей / секунду, которое может выполнить ваша система. В биткойнах это переводит в грубую силу значение для r. Обратите внимание, что может быть случай, когда для этой головоломки не существует r , поэтому в этом случае должен быть выбран другой набор транзакций (то есть изменение b ).