основные идеи

  • Proof of Work (PoW) — это механизм консенсуса, предназначенный для предотвращения двойных расходов в цифровых платежных системах.

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

  • Биткойн и многие другие криптовалюты используют Proof of Work (PoW) как способ защитить свою сеть блокчейнов и данные.

введение

Короче говоря, Proof of Work (PoW) — это механизм, предназначенный для предотвращения двойных расходов в цифровых платежных системах. Биткойн и многие другие криптовалюты используют Proof of Work (PoW) как способ защиты своей сети блокчейнов и ее данных. Эти механизмы часто называют алгоритмами консенсуса или механизмами консенсуса, поскольку в них участвуют несколько сторон, достигающих консенсуса без необходимости доверять друг другу.

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

Алгоритм Адама Бэка HashCash является ранним примером алгоритма Proof of Work (PoW), предшествовавшего появлению криптовалюты, где получатель мог ограничить спам, потребовав от отправителя небольшого объема вычислений перед отправкой электронного письма. Вычисления ничего не стоили среднестатистическому отправителю. но стоимость выше для тех, кто отправляет массовые электронные письма.

Что такое двойные траты?

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

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

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

Для получения более подробной информации о двойных расходах вы можете прочитать объяснение двойных расходов.

Почему важно доказательство работы (PoW)?

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

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

Алиса платит Бобу 5 BTC, Боб платит Кэрол 2 BTC и т. д.

Однако каждый раз, когда вы совершаете транзакцию, вам нужно ссылаться на транзакцию, показывающую, откуда пришли средства, поэтому, если Боб платит Кэрол 2 BTC, записи на самом деле будут такими:

Боб платит Кэрол 2 BTC из транзакции, ранее заключенной с Алисой.

Итак, у нас есть способ отследить источник единиц BTC, поэтому, если Боб попытается совершить еще одну транзакцию, используя те же 2 BTC, которые он отправил Кэрол, все немедленно узнают об этом, и группа не позволит добавить эту транзакцию в блокнот, потому что эта сумма уже потрачена.

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

Именно здесь в игру вступает механизм «Доказательство работы» (PoW). Он гарантирует, что пользователи не тратят деньги, которые они не имеют права тратить. Используя теорию игр с криптографией, алгоритм «Доказательство работы» (PoW) позволяет кому угодно. обновлять блокчейн согласно правилам системы.

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

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

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

Механизм Proof of Work (PoW) требует, чтобы майнер (пользователь, создающий блок) использовал некоторые из своих собственных ресурсов, таких как электричество и вычислительная мощность, для хеширования данных блока-кандидата до тех пор, пока не будет найдено решение головоломки.

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

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

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

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

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

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

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

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

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

Подведем итоги того, что нам известно на данный момент:

  • Майнинг сложен и дорог, но он обеспечивает безопасность сети.

  • Майнеры, которым удалось создать здоровый блок, получают вознаграждение в виде недавно выпущенных криптовалют и комиссий за транзакции.

  • Генерация правильного значения хеш-функции требует времени, но другие пользователи могут легко проверить его достоверность, повторив процесс хеширования.

Пока выглядит хорошо. Но что, если вы хотите обмануть? Что помешает вам поместить в блок кучу мошеннических транзакций и получить действительное значение хеш-функции?

Здесь речь идет о роли шифрования с открытым ключом. Мы не будем подробно обсуждать эту тему в этой статье, но вы можете обратиться к разделу «Что такое шифрование с открытым ключом?». Для комплексного взгляда. Короче говоря, есть несколько отличных крипто-трюков, которые позволяют любому пользователю проверить, имеет ли человек право перевести деньги, которые он пытается потратить.

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

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

В этом привлекательность Proof of Work (PoW): оно делает мошенничество дорогостоящим, а честные действия прибыльными. Любой добросовестный майнер стремится получить прибыль от своих инвестиций, поэтому ожидается, что он будет действовать таким образом, который, скорее всего, обеспечит доход.

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

Помимо Proof of Work (PoW), существует множество консенсусных алгоритмов, наиболее известным из которых является Proof of Stake (PoS). Концепция возникла в 2011 году и была реализована в Ethereum и многих других протоколах.

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

Однако выбрать пользователя невозможно — скорее, протокол выбирает пользователей на основе нескольких факторов. Чтобы пройти квалификацию, участники должны зарезервировать ставку, которая представляет собой заранее определенную сумму в собственной валюте блокчейна. Квота выступает в качестве гарантии: точно так же, как обвиняемые платят крупную сумму денег, чтобы не допустить пропуска судебного разбирательства, аудиторы резервируют квоту для предотвращения мошенничества. Если они попытаются обмануть, их ставка будет аннулирована (или ее часть будет вычтена).

Каталог ссылок на ставки предлагает больше преимуществ, чем рабочий каталог. Наиболее заметным из этих преимуществ является небольшой углеродный след, поскольку в PSI нет необходимости в высокоэнергетических майнинговых фермах, поскольку потребляемая электроэнергия составляет лишь небольшую часть того, что потребляется механизмом PSI.

Однако Proof of Stake (PoS) не имеет такой же репутации и престижа, как Proof of Work (PoW), и хотя его можно считать расточительным, майнинг является единственным алгоритмом консенсуса, проверенным на практике более десяти лет. Механизм Proof of Stake, обеспечивающий PoW Биткойна, с момента его запуска обеспечил безопасность транзакций на триллионы долларов, а хранилище должно пройти надлежащее долгосрочное тестирование, чтобы гарантировать, что PoS может конкурировать с PoS с точки зрения функций безопасности.

Заключительные мысли

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

Статьи по Теме

  • Что такое майнинг цифровой валюты? Каков механизм его работы?

  • Что такое криптография с открытым ключом?

  • Каков алгоритм консенсуса в блокчейне?

Отказ от ответственности: этот контент предоставляется вам «как есть» только для общей информации и образовательных целей, без каких-либо заявлений или гарантий любого рода. Его не следует истолковывать как финансовую, юридическую или иную консультацию, а также как рекомендацию приобрести какой-либо конкретный продукт или услугу. Для предоставления консультаций необходимо обратиться за помощью к специализированным консультантам. Если статья предоставлена ​​третьей стороной, обратите внимание, что высказанные мнения принадлежат этой третьей стороне и не обязательно отражают точку зрения Binance Academy. Пожалуйста, прочитайте наш полный отказ от ответственности здесь для более подробной информации. Цифровые активы могут подвергаться колебаниям цен, стоимость ваших инвестиций может увеличиваться или уменьшаться, и вы не можете вернуть вложенную сумму. Вы несете единоличную ответственность за свои инвестиционные решения, и Binance Academy не несет ответственности за любые убытки, которые вы можете понести. Эту статью не следует рассматривать как финансовую, юридическую или профессиональную консультацию. Для получения дополнительной информации ознакомьтесь с нашими Условиями использования и Предупреждением о рисках.