Доказательство работы (PoW)

Что такое подтверждение работы (PoW)?

Доказательство работы (PoW) описывает систему, которая требует немалых, но выполнимых усилий для предотвращения легкомысленного или злонамеренного использования вычислительной мощности, такого как отправка спама или запуск атак типа «отказ в обслуживании». Впоследствии эта концепция была адаптирована для защиты цифровых денег Хэлом Финни в 2004 году с помощью идеи «многоразового доказательства работы» с использованием алгоритма хеширования SHA-256.

После своего появления в 2009 году Биткойн стал первым широко распространенным применением идеи PoW Финни (Финни также был получателем первой биткойн-транзакции). Доказательство работы также лежит в основе многих других криптовалют, обеспечивая безопасный децентрализованный консенсус.

Ключевые выводы

  • Доказательство работы (PoW) — это децентрализованный механизм консенсуса, который требует, чтобы члены сети затратили усилия на решение произвольной математической головоломки, чтобы никто не мог играть с системой.
  • Доказательство работы широко используется в майнинге криптовалют для проверки транзакций и добычи новых токенов.
  • Благодаря доказательству работы, транзакции с биткойнами и другими криптовалютами могут обрабатываться в одноранговой сети безопасным способом без необходимости использования доверенной третьей стороны.
  • Доказательство масштабной работы требует огромного количества энергии, которая только возрастает по мере того, как все больше майнеров присоединяются к сети.
  • Proof of Stake (POS) был одним из нескольких новых механизмов консенсуса, созданных в качестве альтернативы доказательству работы.

Понимание доказательства работы

Это объяснение будет сосредоточено на доказательстве работы, поскольку оно функционирует в сети биткойнов. Биткойн — это цифровая валюта, в основе которой лежит своего рода распределенная бухгалтерская книга, известная как « цепочка блоков ». Этот реестр содержит записи всех биткойн-транзакций, организованных в последовательные «блоки», так что ни одному пользователю не разрешается тратить свои активы дважды. Во избежание подделки реестр является публичным или «распределенным»; измененная версия будет быстро отклонена другими пользователями.

На практике пользователи обнаруживают подделку с помощью хэшей, длинных цепочек чисел, которые служат доказательством работы. Пропустите заданный набор данных через хеш-функцию (биткойн использует SHA-256), и он будет генерировать только один хеш. Однако из-за «лавинного эффекта» даже незначительное изменение любой части исходных данных приведет к полностью неузнаваемому хешу. Каким бы ни был размер исходного набора данных, хэш, сгенерированный данной функцией, будет такой же длины. Хэш — это односторонняя функция: его нельзя использовать для получения исходных данных, только для проверки того, что данные, которые сгенерировали хеш, соответствуют исходным данным.

Генерация любого хэша для набора биткойн-транзакций была бы тривиальной задачей для современного компьютера, поэтому, чтобы превратить процесс в «работу», биткойн-сеть устанавливает определенный уровень «сложности». Этот параметр настроен таким образом, что новый блок « добывается » — добавляется в цепочку блоков путем генерации действительного хэша — примерно каждые 10 минут. Установка сложности достигается путем установления «цели» для хэша : чем ниже цель, тем меньше набор действительных хэшей и тем сложнее его сгенерировать. На практике это означает хэш, который начинается с очень длинной строки нулей.

Краткий обзор

Доказательство работы изначально создавалось как предлагаемое решение растущей проблемы спама в электронной почте.

Особые соображения

Поскольку данный набор данных может сгенерировать только один хеш, как майнеры убедиться, что они генерируют хеш ниже целевого? Они изменяют ввод, добавляя целое число, называемое nonce («число, используемое один раз»). Как только действительный хэш найден, он транслируется в сеть, и блок добавляется в цепочку блоков.

Майнинг — это соревновательный процесс, но это больше лотерея, чем гонка. В среднем кто-то будет генерировать приемлемое доказательство работы каждые десять минут, но кто это будет, остается только гадать. Майнеры объединяются, чтобы увеличить свои шансы на добычу блоков, что генерирует комиссию за транзакции и, в течение ограниченного времени, вознаграждение в виде вновь созданных биткойнов.

Доказательство работы чрезвычайно затрудняет изменение любого аспекта блокчейна, поскольку такое изменение потребует повторного майнинга всех последующих блоков. Это также затрудняет монополизацию вычислительной мощности сети для пользователя или группы пользователей, поскольку оборудование и мощность, необходимые для выполнения хеш-функций, являются дорогостоящими.

Краткий обзор

Если часть майнинг-сети начинает принимать альтернативное доказательство работы, это называется хард-форком.

Пример подтверждения работы

Доказательство работы требует, чтобы компьютер произвольно выполнял функции хеширования, пока не достигнет результата с правильным минимальным количеством ведущих нулей. Например, хеш для блока № 429818, добытого 14 сентября 2016 г., например, равен 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Вознаграждение за этот успешный хеш составляет 12,5 BTC.

Этот блок всегда будет содержать 2012 транзакций с участием чуть более 1000 биткойнов, а также заголовок предыдущего блока. Если кто-то попытается изменить сумму транзакции даже на 0,000001 биткойна, полученный хэш будет нераспознаваемым, и сеть отклонит попытку мошенничества.

Часто задаваемые вопросы о подтверждении работы

Что означает доказательство работы?

PoW требует, чтобы узлы в сети предоставили доказательства того, что они израсходовали вычислительную мощность (т. Е. Работу), чтобы достичь консенсуса децентрализованным образом и предотвратить захват сети злоумышленниками.

Как подтверждение работы подтверждает криптографическую транзакцию?

Сама работа произвольная. Для Биткойна это включает в себя итерации алгоритмов хеширования SHA-256. Однако «победитель» раунда хеширования объединяет и записывает транзакции из мемпула в следующий блок. Поскольку «победитель» выбирается случайным образом пропорционально проделанной работе, он побуждает всех в сети действовать честно и регистрировать только истинные транзакции.

Зачем криптовалютам нужны доказательства работы?

Поскольку они децентрализованы и одноранговые по своей конструкции, такие блокчейны, как сети криптовалюты, требуют определенного способа достижения консенсуса и безопасности. Доказательство работы — один из таких методов, который делает попытки обойти сеть слишком ресурсоемкими. Существуют и другие механизмы подтверждения, которые менее ресурсоемки, но имеют другие недостатки или недостатки, такие как доказательство доли (PoS) и доказательство сжигания. Без механизма доказательства сеть и хранящиеся в ней данные будут уязвимы для атак или кражи.

Использует ли биткойн подтверждение работы?

Да. Он использует алгоритм PoW, основанный на хеш-функции SHA-256, для проверки и подтверждения транзакций, а также для выпуска новых биткойнов в обращение.

Чем Proof of Stake (PoS) отличается от PoW?

PoS — это механизм консенсуса, который случайным образом назначает узел, который будет добывать или проверять транзакции блоков в зависимости от того, сколько монет хранится на этом узле. Чем больше токенов хранится в кошельке, тем больше мощности для майнинга ему предоставляется. Хотя PoS гораздо менее ресурсоемкий, у него есть несколько других недостатков, включая более высокую вероятность атаки 51% для более мелких альткойнов и стимулы для накопления токенов, а не их использования.