Получи случайную криптовалюту за регистрацию!

Всем привет и продолжим. Пришло время поговорить о доказательс | Как криптан криптану

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

Существует метод, который помогает избежать проблемы, описанной выше, и он называется "доказательство работы" (proof-of-work). Этот метод объединяет две другие идеи: сделать подтверждение транзакций затратным для пользователей сети, и вознаградить их за проверку транзакций. Награда за проверку транзакций мотивирует людей в сети помогать ее проверке, несмотря на затраты на вычисления. Идея состоит в том, что затратность проверки транзакций помогает избежать зависимости от количества пользователей в сети, которые могут быть подконтрольны кому-то. Только общая вычислительная мощность может оказывать давление на проверку. При этом мошенникам потребуется огромное количество вычислительных ресурсов, чтобы обмануть систему, что делает это почти невозможным.

Данное объяснение даёт краткое описание того, как работает доказательство работы (proof-of-work), но чтобы более глубоко понять его, необходимо рассмотреть детали и механизмы, которые используются для подтверждения транзакций и проверки блоков в сети.

Допустим, что в сеть поступило сообщение от Маши, в котором она говорит, что передает один инфокоин Васе с порядковым номером 1234567.

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

Иван передал Вике один инфокоин с номером 1201174
Валера передал Вове один инфокоин с номером 1295618
Маша передала Васе один инфокоин с номером 1234567.

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

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

О том, какую задачу нужно решить, я расскажу в другой раз.