DPoS консенсус в Aergo Mainnet

27 мая на официальном ресурсе Aergo в Medium.com появилась статья под названием «DPoS консенсус в Aergo Mainnet».

Приводим здесь перевод данной статьи от ресурса CryptoCoinExpert.info:

Подробное описание консенсуса DPoS — делегированного доказательства доли (Delegated Proof of Stake), реализованного в ядре блокчейна Aergo.

Перевод статьи — DPoS: Consensus on the Aergo Mainnet, которую написал Сун Чже Ву — Developer at Blocko and AERGO

Вступление

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

Консенсус делегированного подтверждения доли (DPoS)¹, который используется в основной сети Aergo, находится посередине между вышеупомянутыми двумя консенсусами. Он делегирует исключительное право на генерацию блоков для ряда выбранных производителей блоков (BP), в то же время разрешая реорганизацию в ограниченном диапазоне. (A) Следуя модели Proof of Stake (PoS) и (b) поддерживая только ограниченное количество BP, это решает как проблему производительности, так и проблему чрезмерного энергопотребления, обнаруженную в консенсусе на основе PoW.

В этой статье дается подробное описание DPoS, реализованного в ядре блокчейна Aergo. В оставшейся части статьи «DPoS» означает DPoS, реализованный в ядре блокчейна Aergo, если не указано иное определение.

Делегированное доказательство доли в Aergo

Производство блоков

В DPoS разрешено генерировать блоки только ограниченному количеству² узлов, называемых производителями активных блоков (BP). Они выбираются путем голосования среди заинтересованных сторон. Время равномерно делится на слоты, и для каждого слота должен быть создан максимум один блок. Активные BP распределяются по этим слотам путем подсчета голосов и по очереди производят блоки.

Для простоты, давайте рассмотрим пример четырех активных BP, которые являются соответственно A , B , C и D в порядке убывания голосов. Интервал блока составляет 1 секунду. Если все в порядке, блокчейн работает так, как показано на рисунке 1.

Dops1

Рисунок 1. Производство блоков при нормальной работе; Буква в каждом квадрате — это блок производителя

Каждый BP генерирует блок каждые четыре секунды. Однако, когда первый блок не получен вовремя, следующий BP должен его сгенерировать. Например, предположим, что A создал блок «1», а затем B упал, прежде чем производить блок «2» В этом случае, С должна генерировать блок «2» , а не B . На рисунке 2 показано, как выглядит блокчейн в случае такого сбоя.

Dops2

Рисунок 2. Производство блоков при сбое B

Нет блоков, соответствующих слотам «1» и «5», так как B дает сбой, так что блоки распределяются неравномерно по времени; временной интервал между блоками «1» и «2» примерно в два раза длиннее (2 с), чем обычно (1 с).

Fork (разветвление)

С другой стороны, DPoS позволяет разветвление и реорганизацию, как в Bitcoin. Давайте предположим, что отключен от других BP из-за сбоя в сети. Даже в этом случае B и другие ( A , ) не останавливают производство блоков. Они соответственно управляют своими собственными блокчейнами, как показано на рисунке 3.

Dops3

Рисунок 3. Разветвление сети; B и (A, C, D) отключены друг от друга

Обратите внимание, что слоты «1» и «5» главной цепи (верхняя) пустые, потому что блоки, созданные B , не принимаются ( A , C , D ) из-за разделения сети.

Нижняя цепь, управляемая B, является боковой цепью, поскольку она короче другой; В то время как высота главной цепи становится равной 7, высота боковой цепи все еще составляет только 3. Таким образом, согласно правилу самой длинной цепи, как только проблема сети решена, и блоки главной цепи отправлены в B , B становится известно, что его цепь короче другой. Наконец, она начинает следовать основной цепи (реорганизация).

Законченность: Последний необратимый блок

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

Говоря техническим языком, LIB определяется в два этапа:

  1. Когда большинство (⅔+) ВР присоединяют к цепочке блоки, первым из них становится предлагаемая LIB.
  2. Предложенная LIB, наконец, становится LIB, когда дополняется блоками из другого большинства BP.

Первоначально диапазон голосования [или подтверждения] по блоку не имел ограничений. Другими словами, блок, подключенный к цепочке, считался голосованием за сам блок и все вышестоящие блоки. Однако позже он будет изменен, чтобы избежать конфликтующих LIBs³. В модифицированном варианте блок, сгенерированный BP X, подтверждает только ряд предшественников блока, произведенного BP X в последний раз.

Dops4

Рисунок 4. Определение последнего необратимого блока в случае 4 BP 

Простой пример приведен на рисунке 4. Это случай с сетью DPoS 4-ВР, большинство голосов в ней составляет 3. В этом случае голоса 3 ВР необходимы для достижения консенсуса соответственно на каждом из этапов определения LIB. Поэтому, как показано на рисунке 3, блок «1» становится предлагаемой LIB при подключении блока «3» к цепи (1 фаза). После этого блок «1» окончательно переходит в LIB, когда к нему добавляется блок «5» (вторая фаза). При нормальных условиях, как только блок завершен в виде LIB, высота LIB увеличивается на 1 при подключении нового блока; один новый блок сопровождает новый LIB.

Ставки, голосование и выборы

Активные BP выбираются пользователями Aergo, которые ставят свои токены (Aergo) ⁴. Заинтересованная сторона может свободно голосовать за нескольких кандидатов (максимум 30 кандидатов), хотя голосование ограничено 1 голосом в день. Результат голосования собирается каждые 100 блоков. Рейтинг влияет на смену режима после 100 блоков. Эта схема выборов проиллюстрирована на рисунке 5. Здесь ВР на блоке «700»выбираются в соответствии с рейтингом, собранным на блоке «600» (а не «700»). Она призвана снизить вероятность неоправданно частой смены режима в результате реорганизации, поскольку реорганизация прошлых блоков менее вероятна, чем недавних.

Dops5

Рисунок 5. Схема выборов ВР

Резюме

На простом примере, состоящем из 4 BP, мы объяснили, как работает DPoS. Его основными достоинствами являются:

  • генерирование блока ограниченным количеством избранных ВР; и
  • возможность реорганизации только в пределах ограниченного диапазона блоков.

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

_____________________________________________________________________________________________________

  1. DPoS был впервые представлен как алгоритм консенсуса для BitShares. Текущая реализация Aergo похожа на реализацию в EOS.
  2. В настоящее время сеть Aergo работает с 13 активными ВР на стадии инкубации.
  3. Прочтите «Исправить потерю консенсуса DPOS из-за противоречивого последнего необратимого блока».
  4. Ставка и голосование проводятся путем подачи заявок на участие в торгах.

Опубликовано

в

от

Метки:

Комментарии

17 комментариев на ««DPoS консенсус в Aergo Mainnet»»

  1. Аватар пользователя najlepsze escape roomy

    You actually make it appear really easy with
    your presentation but I in finding this topic to be really one thing which I think I’d by no means understand.
    It seems too complex and very vast for me.
    I’m looking forward in your subsequent put up, I’ll try to get the dangle of it!
    Escape room lista

  2. Аватар пользователя MagnoliaT

    Very interesting subject, thanks for putting up..

  3. Аватар пользователя Fort lauderdale

    May I simply just say what a relief to discover someone that actually understands what they are discussing on the web. You actually understand how to bring a problem to light and make it important. A lot more people ought to read this and understand this side of the story. I was surprised you are not more popular given that you most certainly have the gift.

  4. Аватар пользователя sex

    I used to be able to find good information from your articles.

  5. Аватар пользователя ontario

    Hi, I do think this is a great web site. I stumbledupon it 😉 I am going to come back once again since i have bookmarked it. Money and freedom is the best way to change, may you be rich and continue to guide others.

  6. Аватар пользователя Mushroom gummies

    Right here is the perfect web site for anybody who wishes to understand this topic. You realize a whole lot its almost tough to argue with you (not that I personally will need to…HaHa). You certainly put a fresh spin on a topic that has been written about for ages. Great stuff, just excellent.

  7. Аватар пользователя ngentot memek

    I love it when folks come together and share thoughts. Great site, stick with it!

  8. Аватар пользователя iptv

    May I just say what a comfort to discover an individual who really understands what they’re talking about on the net. You definitely know how to bring a problem to light and make it important. More and more people must read this and understand this side of the story. I can’t believe you’re not more popular because you most certainly have the gift.

  9. Аватар пользователя iptv

    There is definately a great deal to know about this topic. I like all of the points you made.

  10. Аватар пользователя iptv

    I couldn’t resist commenting. Very well written!

  11. Аватар пользователя ดูซีรีย์จีน

    I really like reading through a post that will make people think. Also, many thanks for permitting me to comment.

  12. Аватар пользователя lehenga

    I’m very pleased to discover this great site. I want to to thank you for your time due to this wonderful read!! I definitely loved every bit of it and I have you book-marked to see new information in your site.

  13. Аватар пользователя Mitch Celani

    Can I simply say what a relief to find someone that truly understands what they are discussing on the net. You definitely understand how to bring an issue to light and make it important. More and more people must check this out and understand this side of your story. I was surprised that you’re not more popular given that you surely possess the gift.

  14. Аватар пользователя Art Pfeffer

    You need to take part in a contest for one of the most useful sites online. I am going to highly recommend this site!

  15. Аватар пользователя 78win

    Great article. I am going through a few of these issues as well..

  16. Аватар пользователя jacket provider

    I have to thank you for the efforts you have put in penning this blog. I really hope to view the same high-grade blog posts by you in the future as well. In fact, your creative writing abilities has inspired me to get my own, personal site now 😉

  17. Аватар пользователя 6789bet

    Nice post. I learn something totally new and challenging on websites I stumbleupon every day. It will always be exciting to read articles from other writers and practice something from other sites.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *