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