November 8, 2023

Отличия PoW от PoS и почему квантовые ПК могли бы убить крипту, если бы не...

Proof-of-Work

Proof-of-Work

Само по себе определение PoW появилось еще в 1999 году, однако проблему, которую он решает, описывали ещё в 1993 году, а именно защиту общего ресурса от злоупотребления, DDos атак и банального спама - путем вычисления сложной функции со стороны пользователя для получения доступа. Но не будем сильно вдаваться в историю, а перейдем сразу к концепции работы данной модели.

Всем нам известно, что система, построенная на PoW, работает за счет майнеров, а вот как именно это происходит объясню далее:

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

Пример:

Возьмем классический блокчейн на PoW - Bitcoin, для которого мы хотим запустить майнер, что бы добывать монеты, но перед изучением его работы - введем одно из наиболее важных понятий в крипте, дабы не потеряться в процессе:

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

Что бы мы не скормили алгоритму хеширования, на выходе он всегда будет выдавать код с равным количеством символов (например - 64 символа, которыми подписываются блоки биткоина)

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

Так вот, наш майнер, согласно алгоритму защиты блокчейна:

  1. Проанализирует свежий блок,
  2. За тем захеширует отдельно информацию о каждой транзакции произошедшей внутри блока
  3. После чего попарно захеширует результаты, и будет повторять этот пункт, пока не получит в результате лишь 1 набор символов, что зовется - Корнем (ну или Top Hash)

Выглядеть это будет примерно вот так:

  1. Получив корень, он добавит в строку к нему временную метку (дату и время попытки создать блок), а так же хеш прошлого блока и создаст уникальный код (называется он “Nonce”, и имеет для нас наибольшую важность)
  2. Из всего этого - майнер попытается сделать финальное хеширование, получив на выходе набор символов для всего блока. Процесс будет выглядеть вот так:

(** Prev_Hash – предыдущий хэш; Tx – транзакция; Tx_Root – корень транзакции; Timestamp – временная отметка; Nonce – уникальный символ.)*

И тут начинается самая проблемная часть:

Алгоритм консенсуса, посмотрев на результат, должен решить, подходит ли он или майнер должен все переделать заново, подставив новый уникальный Nonce.

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

Что бы гармонично регулировать сложность, алгоритм стремится привести среднее время добычи блока к 10 минутам так, что бы 2016 блоков добывались равномерно в течении двух недель.

Если ХешРейт начинает изменяться (Майнеры пересаживаются на новое поколение видеокарт, или, например, из за падения цены - выключают свои фермы), то алгоритм устанавливает цель на следующие 2016 блоков в виде, как например: “Каждый Хеш должен иметь в начале 20 нулей” (чем больше нулей, тем сложнее майнеру подобрать такой Nonce, что бы результат удовлетворял условиям).

Таким образом, алгоритм регулирует сложность майнинга так: какие бы ресурсы не были задействованы в процессе майнинга, среднее время добычи блока всегда будет 10 минут.

Отсюда же можно сделать следующий вывод: Чем больше майнеров в сети, тем меньше шансов именно у вас смайнить следующий блок (Больше майнеров = меньше наград / Меньше майнеров = больше наград)

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

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

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

Выходит стабильнее, но захочется ли вам делиться с другими участниками, если именно ваш майнер добыл блок:?

Плюсы PoW:

  • Обеспечение высокой безопасности блокчейна.

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

  • Высокий уровень истинной децентрализации

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

  • Награды, полученные за майнинг стабильно уходят в рынок обеспечивая базовый уровень ликвидности

(Алгоритм вынуждает продавать майнеров полученные токены, не храня их у себя, что обеспечивает стабильный минимальный уровень ликвидности на рынке)

Минусы PoW:

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

(по недавним исследованиям Кембриджского центра альтернативных финансов (CCAF), только на добычу BTC уходит около 1% мирового производства электроэнергии)

  • Вероятность атаки 51%

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

  • Низкая скорость транзакций и высокие комиссии

Proof-of-stake

Proof-of-Stake

Proof-of-stake или доказательство доли владения — модель консенсуса, при которой, в отличии от PoW, потребляется во много раз меньше вычислительных ресурсов, так как валидаторы (а-ля ПоСовские майнеры) не тратят усилия не перебор комбинаций для лучшего хеширования блока, чтобы определить право на создание оного, а просто - по цепочке хешируют фиксированную информацию в блоках

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

Данная модель консенсуса является очень гибкой, каждый проект выбирает тонкие настройки своей модели PoS, из за чего появляется множество разновидностей, как например:

  • Nominated Proof-of-Stake(NPoS) — предполагает наличие неких номинаторов, которые определяют добросовестность и качество валидаторов, внося за них залоги.
  • Leased Proof-of-Stake (LpoS) — пользователи дают свои монеты в аренду валидатору, за что получают фиксированный процент вознаграждения.
  • Effective Proof-of-Stake(EpoS) — стимулирует децентрализацию путем поощрения большого количества малых валидаторов, нежели нескольких крупных.
  • Proof-of-Authority (PoA) — валидаторы проходят KYC и одобряются разработчиками блокчейна.

*Важно подметить, что каждый отдельно взятый блокчейн может настраивать модель PoS по своему усмотрению, также может его и модифицировать. + Могут встречаться гибриды PoS и PoW с разными, уникальными свойствами

Плюсы PoS:

  • Низкое энергопотребление.

(Для корректной работы Валидатора - достаточно ограниченного количества ресурсов, ведь нет необходимости увеличивать их ради повышения конкурентоспособности)

  • Хорошие и гибкие условия для масштабирования и комиссий.

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

  • Сеть легче и быстрее обновлять / модернизировать

(Так как обычно в такой сети ограниченное число валидаторов (как правило около 100-200), то для полного обновления сети достаточно обновить лишь их, не прибегая к масштабным Форкам и длительным процедурам)

Минусы PoS:

Тут все зависит от определенного блокчейна, мода на PoS и его условий.

Например, для того чтобы стать валидатором сети Эфириума, необходимо внести на депозитный контракт минимум 32 ETH, что для большинства является значительны минусом.

Так что в комментариях ниже указаны минусы только для чистой версии механизма PoS:

  • “Богатые становятся богаче” и “Децентрализация уже не та”

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

  • Безопасность

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

  • Доверие

(Убедить несколько десятков известных обществу лидирующих по стейкингу монет Валидаторов в сети на подмену транзакций - выглядит намного проще, чем захватить 51% от всей сети на PoW для тех же целей)

Выводы:

Ни Proof-of-Work ни Proof-of-Stake - не идеальны и разработчики постоянно пытаются в доработки / создание новых механизмов консенсуса, создавая гонку технологий между собой, что создает высокую конкуренцию и большой простор как для развития действительно ценных технологий, так и для скама, но я надеюсь, что после прочтения, лучше поняв, как работают основные механизмы, вам будет проще анализировать всё новое, минимизируя шансы быть обманутым!

Но что там о Квантовых компьютерах и их угрозе.

Как известно, IBM***** еще в феврале 2021 года указали прогнозируемый прогресс своих квантовых компьютеров в 400 и 1000 кубитов в 2022 и 2023 году соответственно. Данным заявлениям компании можно верить, так как совсем недавно (ноябрь 22 года) IBM представила квантовый компьютер IBM Osprey, мощность которого составила рекордные 433 кубита. К слову, 1000 кубитов под капотом у квантового компьютера - примерно в 100млн. раз мощнее обычного, среднестатистического ПК.

Различие с обычным ПК тут состоит в следующем:

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

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

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

В чем угроза крипте?

  • Тут проблема кроется в самом устройстве кошельков , если рассматривать сеть биткоина, то в ней используется P2PKH (Pay-to-Public-Key Hash) — тип скрипта, который используется для привязки биткоина к хэшу публичного ключа. Предполагалось, что такие кошельки будут защищены от угрозы взлома квантовым компьютером, однако, как утверждает Deloitte (международная сеть компаний, оказывающих услуги в области консалтинга и аудита), кошелек может быть взломан, если он использовался более одного раза.
  • Также, помимо взлома ключей неоднократно использованных кошельков, существует еще одна проблема — в среднем транзакции проходят за 10 минут, если квантовый компьютер успеет вычислить приватный ключ быстрее, то сеть биткоина фактически будет взломана.
  • И куда же без банального брута?
    Обычный компьютер с помощью брута - может перебирать где то несколько тысяч возможных комбинаций сид фразы в минуту… Не сложно прикинуть, что квантовый пк на сотню кубитов будет перебирать уже сотни миллионов возможных комбинаций за то же время, находя уже созданные кошельки и сканируя их активность (в словаре банально слов не будет хватать, что бы классические сид фразы на 12 слов могли предоставить должную защиту)

Cпособы решения проблем:

  • Увеличение размера приватного ключа в целях увеличить время вычисления ключа квантовым компьютером.
  • Использование более сложного алгоритма шифрования
  • Постквантовая криптография

Некоторые заблуждения

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

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

Новостной фон и На каком мы этапе сейчас?

  • Сентябрь 19 года квантовый компьютер Google выполнил за 200 секунд вычисления, на которые у мощнейшего обычного компьютера ушло бы 10 тысячелетий.
  • Декабрь 20 года , Китай презентует свою железку которая за три минуты решает задачу, на которую у самого быстрого в мире компьютера уйдет более 600 млн лет.
  • Многие слышали, что в 2023 году японская компания Fujitsu совместно с исследовательским институтом Riken планируют запуск в коммерческую продажу квантового компьютера мощностью в 64 кубита. Однако, пока что, это не выглядит большой проблемой, так как эти компьютеры будут использоваться только исследовательскими компаниями в области медицины, изучения молекулярной динамики, а также для финансового прогнозирования. Подготовил для вас перевод статьи из первоисточника ТУТ.

Итог

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

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

“Для каждого криптографического алгоритма, который могут сломать квантовые компьютеры мы найдём замену которую квантовые компьютеры взломать не смогут."

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

Если смогут…