В неустанно расширяющейся вселенной криптовалют токен Tether (USDT) выделяется как значимый игрок. Tether это криптовалюта, служащая стейблкоином, привязанным к фиатной валюте, в частности к доллару США. Он был создан для обеспечения стабильности, позволяя пользователям проводить транзакции без значительных колебаний цены и для хранения и передачи стоимости в пространстве криптовалюты. За годы он стал одной из самых популярных криптовалют среди трейдеров и инвесторов, имея особое значение. В этой статье мы рассмотрим, что такое Tether, как его покупать и хранить, и коснемся ключевых аспектов использования этой криптовалюты.
ТОП-15 протоколов и алгоритмов консенсуса в блокчейне
Что такое алгоритм консенсуса?
Консенсус очень важен во всех сферах нашей жизни, используя его, вовлеченные стороны готовы принимать решения по важным вопросам. Системы блокчейн не являются исключением, поскольку они используют механизмы консенсуса, позволяющие участникам достичь соглашения в сети. Без алгоритма консенсуса сеть блокчейнов представляет собой не более чем неизменную базу данных.
Блокчейн-проекты децентрализованы и не имеют центральной власти в сети, поэтому для них важны алгоритмы консенсуса. Он позволяет узлам заключать коллективный договор друг с другом, мотивирует участников соблюдать правила, обеспечивает справедливость, позволяет избежать таких проблем, как двойное расходование средств, и обеспечивает отказоустойчивость сети. Механизм консенсуса остается безопасным и функциональным.
Как работают алгоритмы консенсуса?
Алгоритмы консенсуса жизненно важны в крупномасштабных отказоустойчивых системах, поскольку они позволяют набору распределенных/реплицированных машин или серверов работать как единая группа и согласовывать состояние системы даже в случае сбоев или простоев. Для этого алгоритм устанавливает порог или количество машин-участников, которые должны достичь консенсуса или соглашения. Когда они решают проблему консенсуса, алгоритмы консенсуса предполагают, что некоторые процессы и системы будут недоступны и что ответит только часть узлов. Они также предполагают, что некоторые сообщения будут потеряны во время передачи. Однако требуется ответ от доступных узлов. Например, алгоритм может потребовать, чтобы по крайней мере 51% узлов ответили для достижения консенсуса или соглашения о значении данных или состоянии сети.
Это гарантирует достижение консенсуса с минимальными ресурсами, даже если другие ресурсы недоступны или даже неисправны. Механизм также поддерживает целостность решений, принимаемых согласующими узлами в отказоустойчивой системе.
Применение алгоритмов консенсуса в блокчейне
Алгоритмы консенсуса имеют множество реальных применений в децентрализованных или распределенных компьютерных сетях. Одним из самых распространенных приложений является блокчейн.
Блокчейн — это распределенная книга, наиболее связанная с криптовалютой биткойн. Эта децентрализованная база данных коллективно управляется распределенными компьютерами или узлами в распределенной одноранговой сети. Каждый одноранговый узел или узел поддерживает копию реестра, чтобы предотвратить единую точку отказа. Любые обновления или проверки в сети отражаются во всех копиях одновременно. Это гарантирует точность и безопасность записей данных и создает доверие к системе без необходимости в централизованной доверенной третьей стороне.
Сети блокчейнов полагаются на алгоритмы консенсуса для достижения согласия между различными распределенными узлами. Механизм консенсуса, такой как доказательство работы (PoW) или доказательство доли (PoS), защищает сеть и не позволяет неавторизованным пользователям проверять неверные транзакции. Этот механизм также позволяет согласовать сеть, даже если ни один узел не является ответственным.
Другие применения алгоритмов консенсуса
Основываясь на базовом механизме, алгоритмы консенсуса решают, следует ли фиксировать распределенную транзакцию в базе данных. Они также обычно используются для синхронизации данных в децентрализованной сети и обеспечения согласованности и прозрачности транзакций. Алгоритмы консенсуса также используются для присвоения узлу статуса лидера.
Алгоритмы консенсуса синхронизируют реплики конечного автомата и обеспечивают согласованность между ними. Они часто используются для обеспечения доверия и безопасности в децентрализованной компьютерной сети, такой как блокчейн, и очень полезны для ведения записей.
Помимо блокчейна и криптовалют, эти алгоритмы поддерживают множество реальных вычислительных и цифровых систем, в том числе:
- балансировки нагрузки,
- синхронизация часов;
- управление беспилотными летательными аппаратами, такими как дроны.
Обзор основных алгоритмов консенсуса
1. Proof-of-Work (PoW — Доказательство работы)
Proof of Work (PoW) — это старейший и наиболее распространенный из алгоритмов консенсуса блокчейна. Впервые он был представлен в биткоине и сочетает в себе функции сетей P2P, цепочек Меркла и криптографических подписей. В Proof-of-Work майнеры хешируют данные и постоянно используют свои вычислительные ресурсы для решения сложных математических головоломок, чтобы проверять транзакции и добавлять их в блокчейн. Майнеры в сетях PoW соревнуются друг с другом, чтобы заработать вознаграждение за блок, а также получают долю комиссии за транзакцию. В PoW протокол излагает условия, которые делают блок действительным. Все майнеры пытаются найти действительный хэш, единственный способ сделать это — ввести ввод методом грубой силы. Для больших блокчейнов этот хэш чрезвычайно сложен. Чтобы конкурировать с другими майнерами, Вам нужно специальное оборудование для хеширования (ASIC), чтобы иметь возможность генерировать действительный блок. Сеть должна убедиться, что майнер создал действительный блок. Алгоритму необходимо запустить данные майнера через функцию, и если он выдаст действительный хеш, он будет одобрен, и майнер получит вознаграждение. В противном случае сеть отклонила бы его, а майнер зря потерял время и энергию.
Эти головоломки гарантируют, что майнерам будет выделено значительное количество ресурсов — сочетание времени и вычислительной мощности. Когда злоумышленники хотят нанести ущерб экосистеме, им приходится тратить много денег. Для атаки 51% злоумышленникам необходимо очень дорогое оборудование, чтобы захватить большую часть сети. Однако PoW не может работать на максимальных скоростях и поддерживать эффективную и масштабируемую сеть.
Пример использования: Bitcoin, Litecoin.
2. Proof-of-Stake (PoS — Доказательство доли)
Из-за энергозатратного характера Proof of Work Ethereum в настоящее время находится в процессе перехода от Proof of Work к консенсусу Proof of Stake (PoS). В Proof of Stake майнеры заменены валидаторами. Валидаторы размещают (хранят) определенное количество токенов соответствующей криптовалюты в сети. Люди, которые поставили определенное количество токенов, голосуют за проверку блока. Если большинство валидаторов соглашаются с реальностью блока, он добавляется в блокчейн. Таким образом, проверка блока в консенсусе Proof of Stake осуществляется путем голосования, в отличие от Proof of Work, где проверка блока выполняется путем решения головоломок.
В Proof of Stake обычно действует правило: чем больше токенов Вы ставите, тем больше у Вас шансов быть выбранным в качестве валидатора. Когда валидатор выбран, он должен предложить (или «подделать») блок. Если этот блок признан действительным другими пользователями, валидатор получает вознаграждение, состоящее из комиссий за транзакции этого блока. Ковка блока требует гораздо меньше энергии, так как требует в разы меньше вычислительной мощности от компьютеров. Это делает Proof of Stake гораздо более экологичным, чем его аналог.
Proof of Stake, в отличие от Proof of Work, менее безопасен, потому что с Proof of Stake безопасность определяется людьми, а не компьютерами (которые решают математические задачи). Не смотря на этом, консенсус Proof of Stake можно рассматривать как безопасный протокол консенсуса. Это связано с тем, что люди, являющиеся валидаторами, вложили значительную сумму денег в рассматриваемую криптовалюту, поэтому вряд ли они будут саботировать систему. Хотя вероятность минимальна, есть шанс, что на PoS группа валидаторов возьмет власть, чтобы саботировать систему. Для этого более 51% валидаторов должны согласиться с планом саботажа. С большей долей голосов валидаторы могут влиять на голосование, что также называется «атакой 51%». Эти атаки крайне редки и фактически никогда не реализуются на практике, потому что в случае с известными и «более надежными» криптовалютами свыше 51% токенов редко оказывается в руках злоумышленников.
Пример использования: NXT, Tezos, Ethereum.
3. Delegated Proof-of-Stake (DPoS — Делегированное доказательство доли)
Алгоритм консенсуса Delegated Proof-of-Stake (DPoS) работает так же, как модель PoS, но стейкеры в модели DPoS передают проверку блоков нескольким делегатам. Эти делегаты защищают систему блокчейна, отвечая за поддержание консенсуса в сети во время проверки новых блоков. Затем эти избранные делегаты принимают важные решения для всей сети, такие как определение допустимых транзакций и установка правил протокола.
Учитывая то, что механизм Delegated Proof of Stake похож на Proof of Stake в том смысле, что оба требуют, чтобы пользователи ставили монеты как средство участия в консенсусе. Основное отличие состоит в том, что в сети PoS все держатели монет участвуют в проверке и принятии решений непосредственно через ставки. Напротив, только избранные делегаты участвуют в проверке в сетях DPoS, в то время как остальные узлы участвуют косвенно, голосуя за делегата(ов) по своему выбору. Право голоса зависит от того, сколько монет ставит пользователь. Пользователи, которые ставят больше монет, имеют большее влияние на выбор узлов.
Каждая сеть на основе DPoS имеет собственную систему голосования. Вообще говоря, каждый кандидат в делегаты вносит предложение при запросе голосов. Кандидаты часто обещают, в случае избрания, разделить вознаграждение за блок (монеты, полученные за подтверждение транзакций) пропорционально пользователям, которые проголосовали за них.
Количество избранных делегатов сильно различается для каждой сети блокчейна. Независимо от этого числа, все сети на основе DPoS предполагают, что большинство избранных делегатов честны. Другими словами, делегаты хотят обеспечить безопасность сети и не будут намеренно пытаться подтвердить мошеннические транзакции. Пока это верно, честные узлы будут получать вознаграждение за блок, а нечестные — нет.
Пример использования: EOS, BitShares, Tron, Cardano, Cosmos.
4. Proof-of-Authority (PoA — доказательство полномочий)
Proof-of-Activity (PoA) объединяет протоколы PoW и PoS, что означает, что участники могут как майнить, так и закладывать долю для валидации блоков. Итак, протокол PoA обеспечивает баланс между майнерами и обычными участниками сети.
PoA использует преимущества реальных удостоверений личности, чтобы обеспечить проверку в блокчейне. Это означает, что валидаторы ставят свою реальную личность и репутацию в качестве гарантии прозрачности. Кроме того, PoA основан на ограниченном количестве валидаторов. Эта функция дает ему явное преимущество, высокую масштабируемость блокчейна, что положительно сказывается в приложениях, где скорость имеет первостепенное значение. Кроме того, он поддерживает высокий уровень контроля доступа к указанной цепочке блоков, поскольку участвовать могут только узлы с разрешением.
Работа протокола PoA довольно проста. Чтобы система работала, валидаторы должны выбираться случайным образом. Включение и выбор узлов делается благодаря системе голосования других ранее авторизованных узлов. Таким образом можно избежать включения вредоносных узлов и повлиять на работу сети. В дополнение к этому каждый валидатор может подписать максимум один из серии последовательных блоков во время своей проверки. Кроме того, PoA не требует майнинга, как это происходит в Bitcoin, так что это очень экологично.
Пример использования: Decred.
5. Proof-of-Location (PoL — Доказательство местоположения)
Proof-of-Location (PoL) или доказательство местоположения - это технология, которая позволяет передавать координаты физического местоположения устройства в блокчейн таким образом, чтобы другие устройства могли полагаться на данные о местоположении, не доверяя передающему устройству.
Приложения, зависящие от позиции, включают цепочку поставок, параметрическое страхование, проверку KYC/AML или даже потребительские транзакции.
Современные инструменты геолокации отлично подходят для определения местоположения устройства, но не могут предложить надежные услуги проверки местоположения. Они являются однонаправленными и не зашифрованными, что делает проблематичным использование GPS для смарт-контрактов, которые необходимо выполнять при соблюдении пространственных параметров. Динамическое подтверждение местоположения расширяет возможности автономной сети радиомаяков без разрешения, которые могут предлагать безопасные услуги проверки местоположения посредством синхронизации времени децентрализованным образом.
Пример использования: FOAM, Platin.
6. Proof-of-Importance (PoI — Доказательство важности)
PoI основан на идее, что вознаграждение должно осуществляться за сетевую активность, а не только за количество монет. Вероятность размещения блока зависит от нескольких факторов, включая баланс, репутацию (определяемую отдельной специально разработанной системой) и количество транзакций, совершенных с этого адреса и на него.
Proof-of-Importance — еще одна вариация PoS-алгоритма, разработанная для блокчейна NEM в 2015 году.
Доказательство важности определяет, какие сетевые узлы имеют право добавлять блок в цепочку блоков на основе определенных свойств. Этот процесс известен как «сбор урожая». В обмен на сбор блока узлы получают комиссию за транзакцию, связанную с размещением этого блока.
Чем выше показатель важности узла, тем выше вероятность того, что его выберут для сбора блока и получения этого вознаграждения. Если Вы заинтересованы в этом, Вы должны знать, что протокол NEM требует, чтобы учетная запись содержала не менее 10 000 XEM.
Proof of Importance стремится принять во внимание общую поддержку сети, и поэтому его можно рассматривать как новый подход к ставкам и теории игр.
Пример использования: NEM.
7. Proof-of-Elapsed-Time (PoET — Доказательство прошедшего времени)
Среди алгоритмов консенсуса и майнинга блокчейна одним из самых ярких алгоритмов является Proof of Elapsed Time (PoET), что на испанском языке означает Test of Elapsed Time. Это алгоритм консенсуса, разработанный с нуля для высокой масштабируемости и ориентированный на частные блокчейны.
Потенциал PoET ориентирован на применение при разработке блокчейнов в составе систем с высоким информационным трафиком. Например, компании, которым нужны комплексные системы аудита, гарантирующие неизменность указанной информации. Это относится, в частности, к высокотехнологичным и автоматизированным сборочным линиям, химическим и медицинским лабораториям.
Proof of Elapsed Time (PoET) разработан компанией Intel, как алгоритм консенсуса на основе временной лотереи, защищенного криптографией. Революционная концепция, используемая все технологии, которые Intel может предоставить в своих процессорах. На самом деле эта технология сильно привязана к продуктам Intel до такой степени, что ее нельзя использовать с гарантией за пределами ее продуктов.
Работа алгоритма PoET сводится к тому, что он создает кольцо доверия, в котором группа участников координируется контроллером. У этого контроллера есть задача принимать работу людей в доверительном кольце и проверять ее правильность. Для этого контроллер совместно использует секундомер и серию криптографических тестов, которые случайным образом позволяют участникам создавать блоки в блокчейне.
Как только участник выбран, он генерирует блок, разрабатывает криптографический тест и отправляет его контроллеру. Когда контроллер получает тест, он проверяет его и, если он правильный, принимает блок. В противном случае он отбрасывает его. Учитывая это последнее решение, таймер снова запускается, так что процесс выбора начинается снова, и тест создается другим участником. Процесс следует этому циклу повторений, что позволяет поддерживать работу сети на неопределенный срок.
Пример использования: Intel.
8. Leased Proof-of-Stake (LPoS — Арендованное доказательство доли владения)
Leased Proof-of-Stake является еще одним вариантом PoS-алгоритма, который был разработан исключительно для blockchain Waves.
LPoS имеет более обширные функциональные возможности, нежели PoS. Здесь не просто узлы, содержащие некое количество крипты и имеющие право на добычу последующего блока блокчейна, но и право на сдачу собственного баланса в аренду полным узлам.
LPoS дает возможность пользователям сдавать свои кошельки WAVES в аренду, принимая взамен вознаграждения. Чем больше сумму передаем, тем выше шансы, что данный полный узел выберут для создания нового блока. Если этот полный узел выберут для нового блока, тогда арендатор получит вознаграждение в виде процента комиссионных от проведенной транзакции, взимаемой полным блоком. .
В LPoS среде держатели сами могут выбрать либо запуск полного узла, либо сдать его в аренду и получить вознаграждение.
Также важно сказать о том, что монеты с кошелька пользователя никуда не пропадают, когда сдаются в аренду, но при этом ими Вы не сможете пользоваться, например, передать кому-то или обменять. А вот саму аренду можно отменить в любое время.
Пример использования: Waves, NXT
9. Proof-of-Space (PoSpace — Доказательство пространства)
PoSpace имеет и другое название, которое также часто встречается — Proof-of-Capacity (доказательство работоспособности, PoC).
PoSpace — алгоритм консенсуса, который для доказательства блока использует не вычислительную мощность компьютера, а место на жестком диске.
Майнеры бронируют место на жестком диске для подтверждения блоков. На старте на жестком диске создаются наборы решений математических заданий, дальше проходит майнинг. Майнер уже не ищет решение задачи, так как оно уже есть в памяти одного из жестких дисков. Чем больше память диска, тем больше выполненных решений там может быть, а это увеличивает шансы найти это решение данным майнером.
Данная концепция весьма интересна с технической точки зрения, ведь она обещает показать достаточно высокую скорость, но никак не смогла заполучить внимание большого количества криптовалютных проектов, как это удалось другим.
Пример использования: Burstcoin, SpaceMint (SpaceCoin), Chia
10. Proof-of-Burn (PoB — Доказательство сжигания)
Proof-of-Burn — это алгоритм консенсуса, альтернативный классическим PoW и PoS, использующий сжигание монет для увеличения ценности и уменьшения энергоупотребления.
По своей сути, сжигание монет обозначает их отправку на специальный адрес с невозможностью использования этих монет, поэтому они сжигаются (уничтожаются). Майнер создает новый блок и получает награду в виде новых монет сети. Чем больше монет сжигается, тем лучше шансы получить вознаграждение.
Цель Proof-of-Burn (PoB) заключается в «отрицательном майнинге». То есть, для создания нового токена, сначала уничтожаются уже существующие токены. И это делает процесс добычи нового токена более сложным, ведь он требует вложений для сжигания монет. Но тут есть и плюс, так как новые токены не так быстро обесцениваются из-за инфляции.
Довольно часто PoB применяют в проектах, занимающихся выпуском собственных токенов, ведь это защищает их от девальвации, а также инфляции.
Пример использования: Slimcoin, Counterparty, Factom.
11. Delegated Byzantine Fault Tolerance (DBFT — Делегированный протокол задачи византийских генералов)
DBFT — это DPoS-механизм консенсуса блокчейна, ориентированных на BFT.
Как и в системах DPoS, заинтересованные стороны используют делегатов, называемых бухгалтерами, для достижения консенсуса и создания новых блоков. Кроме того, владельцы голосуют за своего бухгалтера в режиме реального времени, а не через фиксированный срок. Эти бухгалтеры должны использовать свои настоящие личности, чтобы обеспечить голоса заинтересованных сторон. В блокчейнах DBFT нет анонимности, уровень централизации остается высоким, но он обеспечивает быструю генерацию блоков, высокую масштабируемость и энергоэффективность.
Пример использования: NEO, TON.
12. Practical Byzantine Fault Tolerance (PBFT — Реализация протокола задачи византийских генералов)
PBFT идеально подойдет тем, кто находится в поисках быстрого, масштабируемого, но в то же время и приватного блокчейна. Протокол Practical Byzantine Fault Tolerance весьма похож на Delegated Byzantine Fault Tolerance, а именно в его централизованном характере. Большим отличием этих двух протоколов можно назвать то, что первый более простой в реализации, а также довольно часто с ним работают в приватном секторе известные участники.
Валидатор, получая сообщение, вынужден решить — правдивое оно или нет. Процесс этой проверки начинается с личных проверок внутри валидатора, а после он делает опросы среди всех оставшихся нод по очереди, уточняя верят ли они в подлинность транзакции. В случае, когда две трети участвующих одобряют транзакцию, нода ее может принять и передать принятое свое решение в сеть для иных валидаторов. В таком случае консенсус будет достигнут на основании подтверждения, представленного всеми валидаторами.
Practical Byzantine Fault Tolerance максимально подойдет для систем с низкой задержкой, но при этом он будет весьма чувствителен к числу валидаторов и пропускной способности, ведь 1 уведомление создает большое количество различных проверок и запросов. PBFT идеальный для частного применения, где не нужна сильная нагрузка, но все таки есть нужда в большом числе транзакций.
Пример использования: Hyperledger, Chain.
13. Federated Byzantine Agreement (FBA — Федеративное византийское соглашение)
Протокол с названием Federated Byzantine Agreement не спрашивает права или ранее ведомого состава участников, в отличии от протокола Practical Byzantine Fault Tolerance и иных вариантов BFT. FBA дает возможность всем желающим добавиться к сети. В протоколе транзакции проходят валидацию с установленным числом участников, которых выбирают из числа тех, кто в данный момент находится online.
Согласно правил FBA, есть шлюзы, именуемые Gateways, и мэйкеры, имеющие название Market-Makers. Обе эти составляющие протокола гарантируют честность и ликвидность сети.
Шлюзы выполняют роль самых обычных банков, которые владеют финансами и обеспечивающий их эквивалент в виртуальных токенах. Мэйкеры ведут учетные записи с большим количеством шлюзов и одновременно в нескольких валютах.
Пример использования: Stellar, Ripple.
14. Directed Acyclic Graph (DAG — Направленный ациклический граф)
Самая главная проблема с blockchain — это его работа в синхронном режиме. Никакой из блокчейнов не может быть параллельным процессом к другому. В blockchain можно отредактировать размер и частоту выполнения блоков, либо число участников, валидирующих блоки, но все равно история событий будет заточена под строжайшую линейную последовательность. Как альтернатива был предложен протокол Directed Acyclic Graph, который работает асинхронно, давая весомое преимущество одновременным событиям.
В подобных системах протокол дает возможность участникам, дабы добавить 1 блок транзакций, подтвердить несколько прежних. Можно сказать, что чем больше новых транзакций, тем быстрее будут подтверждены старые.
Пример использования: IOTA, ByteBall.
15. HashGraph (ХэшГраф)
Создатели этого протокола говорят о том, что blockchain это уже устаревшая система. Они считают, что хорошей альтернативой ему является концепция Directed Acyclic Graph, но в то же время основной отличительной характеристикой HashGraph есть протокол «gossip about gossip», в котором нода приобретает набор транзакций с пометкой времени, «знающего» другой нодой. Дабы такой алгоритм работал, необходимо знать всех участников процесса. Синхронизируя ноды, каждая из нод хранит все подробности и истории получения данной информации всеми нодами из сети. Если нода увидит в истории, что определенное сообщение ранее было получено и проверено многими, без сомнения оно будет правдивым.
Но есть и некие ограничения. Первое — есть весьма мало подробностей практического применения в больших масштабах, особенно с проектами блокчейна, что работают. Второе — на технологию HashGraph есть патент и лицензия на ее покупку тане бесплатная. Третье - нет крепкого сообщества, которое помогло бы проверить надежность протокола, уязвимость к хакерским атакам, либо любые другие вопросы по совместимости технологии.
Недавно проект был обновлен и получил новое название - Hedera Hashgraph.
Пример использования: HashGraph.
Заключение
Протоколы и алгоритмы консенсуса — это неотъемлемая частица распределенных систем. В первую очередь, с их помощью можно достичь справедливости, избежав сбоев системы, когда один из участников нод выходит из строя. Во-вторых, децентрализованная среда требует решения, помогающего двигаться вперед и изменять общее состояние, даже в среде, где никто никому не доверяет. Определенные правила помогают достичь «консенсуса».
В этой статье мы постарались рассмотреть самые популярные и известные протоколы (алгоритмы), применяющиеся уже в десятках проектов. Есть еще много других и более экзотических протоколов, таких как Cross Fault Tolerance (XFT), Paxos, Sieve, Raft, Proof-of-Stake-Time (PoST) и т.п., которые мы просто не смогли вместить в эту статью, но обязательно опишем в последующих публикациях.
Актуальные статьи
11.11.2024
Победа Дональда Трампа на президентских выборах в США стала мощным катализатором для криптовалютного рынка. С момента объявления результатов выборов первая криптовалюта Bitcoin начала стремительно расти, достигая новых исторических максимумов почти ежедневно. 10 ноября 2024 года курс биткоина превысил отметку в 80 000 долларов, установив новый рекорд и превысив капитализацию корпорации Meta.
07.11.2024
С развитием криптовалют все больше внимания уделяется их потенциалу в различных областях, включая благотворительность и гуманитарную помощь. Стабильные криптовалюты, такие как USDT (Tether), обладают уникальными характеристиками, которые делают их особенно привлекательными для использования в международных пожертвованиях и благотворительных инициативах. В данной статье рассмотрим, как USDT может упростить процесс международных пожертвований и повысить прозрачность в использовании средств для благотворительных организаций.