владеет. Так же как и при майнинге, нужно было хешировать определенные
параметры, такие как данные предыдущего блока, текущее время и адрес, на
котором располагались принадлежащие валидатору средства. Полученный
хеш сравнивался с произведением двух значений, которые представляли
собой количество монет у валидатора и продолжительность владения ими. Как
только удавалось получить хеш, меньший по значению, чем это произведение, блок считался созданным. Очевидно, что чем больше у валидатора монет и
чем дольше он ими владел, тем выше шансы, что произведение этих чисел
будет весьма велико и превысит случайно полученный хеш, который всегда
можно рассматривать и как обычное число. Поскольку в процессе хеширования
есть только один постоянно меняющийся параметр — время в полных
секундах, то и сам хеш может меняться лишь один раз в секунду. Валидатор, создавший блок, непосредственное вознаграждение за это не получал, зарабатывая лишь совокупную комиссию от транзакций, помещенных им в
блок.
Как следует из алгоритма создания блоков Proof-of-Stake, значительных
энергозатрат для этого не требуется. Однако это не означает, что у данного
типа консенсуса нет недостатков или неудобств. Валидатор, создающий блоки
по принципу Proof-of-Stake, фактически замораживает средства на своем счету
и вынужден не использовать их достаточно длительное время, чтобы не
потерять накопленный потенциал для возможного создания блоков. Для самой
сети это не очень хорошо, поскольку скорость обращения денег внутри нее
может существенно замедлиться, что негативно скажется на возможностях ее
использования и развития. Подобный метод создания блоков мотивирует узлы
в первую очередь к накоплению, а не расходованию средств. Таким образом, их чрезмерная консолидация под контролем одного или нескольких узлов
может привести к повышению степени централизации процессов управления
сетью вопреки изначальному замыслу. Также на процесс создания блоков
практически не оказывают никакого влияния узлы с относительно небольшой
долей владения криптомонетами, поскольку у них практически отсутствуют
шансы стать валидаторами в силу своего незначительного финансового
потенциала.
Для устранения этих недостатков была разработана модификация протокола
Proof-of-Stake, где были представлены механизмы делегирования полномочий
валидаторов от рядовых участников сети к избранным ими узлам. Каждый узел
посредством специальной транзакции может отдать свой голос одному или
нескольким потенциальным кандидатам в валидаторы. Получившие
большинство голосов узлы-делегаты могут и не обладать значительным
количеством монет, но зато они готовы контрибуцировать свои
вычислительные возможности для поддержания стабильной работы сети, получая за это относительно скромную транзакционную комиссию. Подобный
принцип назвали «делегированным доказательством владения» (DPoS), и
именно эта форма протокола Proof-of-Stake впоследствии получила наиболее
широкое распространение в проектах, которые решили отказаться от
энергозатратного алгоритма доказательства работы.
Отличие DPoS от классической формы доказательства владения состоит в
том, что валидаторы, получившие право делегирования, уже не перебирают
хеши, чтобы найти подходящее его значение. Вместо этого они формируют
очередь из подобных им делегатов, чтобы договориться о строгом порядке
формирования блоков. Каждому из валидаторов выделяется определенный
временной период, в течение которого он имеет право создать блок,
принимаемый всей сетью. Сам период может быть довольно коротким и
исчисляться единицами секунд — это зависит от протокола сети и того, насколько большую пропускную способность участники сети хотят получить
для своих транзакций. В случае если по какой-то причине валидатор пропустил
свою очередь, право создания блока переходит к следующему по порядку
валидатору. Сам порядок имеет единые для всех правила формирования, при
этом каждый валидатор вычисляет его самостоятельно. Понятно, что у всех
валидаторов этот рассчитанный порядок должен в точности совпадать, иначе
работа сети может быть нарушена.
Преимущества формы Proof-of-Stake с делегированием полномочий очевидны.
Во-первых, узлы с незначительными балансами имеют хотя и косвенное, но
пропорциональное своему финансовому балансу влияние на выбор узлов-
Читать дальше
Конец ознакомительного отрывка
Купить книгу