Title: Экзотические алгоритмы консенсуса Post by: epidemia on June 24, 2020, 12:53:46 PM Доброго времени суток! :)
На протяжении длительного времени собирал информацию об алгоритмах консенсуса, которые встречаются очень редко или уже совсем мертвы. Для чего? Ответ прост: стало интересно...ведь большинство крипто проектов используют для своих монет более-менее стандартные PoW, PoS и dPoS. Но, на самом деле, алгоритмов очень много...правда далеко не о всех я нашел информацию. Поэтому предлагаю кратко пробежаться по тех механизмах консенсуса, о которых я нашел хоть какую-то инфу. Алгоритм консенсуса - это процесс, с помощью которого сеть (несколько вычислительных машин) может дойти к однозначному решению. Основная цель - создание условий, при которых риск создания альтернативного блокчейна минимальный. Материалов по этому поводу очень много, поэтому философствовать я не буду. Информацию для этой статьи я взял со своих же материалов, которые писал на протяжении нескольких месяцев. Все ссылки предоставляю. 1.Proof-of-Burn (PoB) (https://ru.minter.wiki/Proof-of-Burn_(PoB)) Proof of Burn (PoB) — это альтернативный алгоритм консенсуса , который используют как альтернативу для уже известных и проверенных PoS и PoW. Он не требует огромных мощностей и больших энергетических затрат, как PoW. Его принцип работы уникален: майнеры должны "сжигать" монеты. Именно разрушение даст им возможность создать новые блоки равносильно сумме сгоревших коинов. В блокчейне присутствует специальный "нулевой адрес" (burn address), который работает по принципу "Черной дыры" - все монеты, которые туда попадают, просто исчезают. Другими словами, майнеры посылают собственные монеты на этот "нулевой адрес", который их уничтожает. Все эти транзакции записывается в блокчейн и являються доказательством выполненной работы. Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок. С временем, "мощность" каждого участника уменьшается. Здесь провести аналогии с PoS-алгоритмом: мощность сети Биткоина и Эфириума тоже постоянно растет, естественно майнеры должны все время покупать новое оборудования. Так и здесь нужно сжигать все больше монет чтобы сохранить шанс на добычу следующего блока. Кто использует: - В Slimcoin (https://www.coingecko.com/ru/%D0%9A%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D0%B0%D0%BB%D1%8E%D1%82%D1%8B/slimcoin) доказательство сжигания используется в качестве консенсусного алгоритма и метода майнинга; - Counterparty (XCP) используют для первоначального создания токенов. Пользователь должен отправить определенное количество Биткоинов на "нулевой адрес" и за это получит токены Counterparty. 2.Leased Proof of Stake (LPoS) (https://ru.minter.wiki/Leased_Proof_of_Stake_(LPoS)) Leased Proof of Stake (LPoS) — это альтернативный алгоритм консенсуса, который работает по основным принципам PoS, но использует алгоритм "арендованного доказательства доли", который отвечает за бесперебойную работу сети через достижение полного консенсуса между всеми узлами. История: Leased Proof of Stake разработал криптовалютный стартап Waves под руководством Александра Иванова еще в 2016 году. Изначально, проект должен был работать на PoS-алгоритме, но потом разработчики решили немного изменить подход к системе валидирования. Как итог, LPoS сделали таким образом, что при этом алгоритме стало возможным предоставлять собственные токены в оплачиваемую аренду узлам-валидаторам и получать за это определенную прибыль. Особенности: В LPoS каждый владелец мастерноды имеет возможность получать от других пользователей определенное количество токенов для увеличения своего суммарного стейка. В обмен делегаторы получают вознаграждения за добытые блоки. В стандартном PoS холдеры с маленьким количеством токенов, в большинстве случаев, не имеют возможности добыть блок. Естественно, многие владельцы нод с небольшим количеством токенов никогда не будут принимать активное участие в работе сети. Исходя из этого, львиную часть всего дохода будет получать ограниченное количество пользователей с большими стейками. Это - полная централизация. Для предотвращения подобного сценария, в алгоритме Leased Proof of Stake используют функцию лизинга. Узлы с маленькими балансами сдают в аренду собственные токены другим крупным узлам (нодам). Средства, которые пользователи сдают в лизинг, всегда остаются под полным контролем владельцев. После создания блока, большой узел получает вознаграждение и пропорционально делит его между лизинговыми нодами, оставляя свою долю себе. После чего работа возобновляется как в стандартном PoS. 3.Proof of Importance (PoI) (https://ru.minter.wiki/Proof_of_Importance_(PoI)) Proof of Importance (PoI) – это алгоритм консенсуса доказательства важности. Он, как и многие другие алгоритмы, представляет собой расширенную версию PoS с некоторыми нюансами. Кроме числа участников, которые обладают коинами, алгоритм анализирует и действия всех участников сети. Особенности: Главная проблема алгоритмов консенсуса PoS и DPoS состоит в том, что каждую такую сеть с временем монополизируют богатые участники. Механизм работы PoI не поддерживает выбор узлов-валидаторов посредством голосования. Естественно, Proof of Importance (PoI) полностью отличался от "древнего" PoW, который первый раз применили на криптовалюте Bitcoin. Алгоритм POI включает в себя три основных компонента: - Количество коинов на аккаунте; - Активность аккаунта (количество совершенных транзакций); - Время нахождения определенного аккаунта в сети. Алгоритм самостоятельно определяет претендентов, которые в будущем будут формировать транзакции. Для получения статуса претендента, на счету определенного узла должно быть не меньше 10 000 монет. Вероятность формирования узлом очередной транзакции пропорциональна его репутации. Proof of Importance (PoI) разработал и крипто стартап NEM еще в 2014 году. На данный момент только этот проект его и использует. 4.Proof-of-Capacity (PoC) (https://ru.minter.wiki/Proof-of-Capacity_(PoC)) Proof-of-Capacity (PoC) - алгоритм достижения консенсуса в блокчейне, при использовании которого для добычи криптовалюты используется свободное место на устройстве хранения файлов (жесткий диск). При этом вычислительная мощность (как в PoW) и количество монет (как в PoS) не играют никакой роли. Иногда в этого алгоритма встречается другое название - Proof-of-space. Особенности: Майнинг на жёстком диске отличается от PoW-алгоритма тем, что для добычи коинов не требуется покупать дорогие видеокарты или асики, блоки питания большой мощности и материнские платы с большим числом разъемов. Чтобы майнить подобным образом, необходимо иметь самый обычный ноутбук со скудными параметрами и встроенную видеокарту. Вместо регулярного перебора разных числовых параметров в заголовке блока и повторного хэширования, PoC еще о начала процесса майнинга создает на жестком диске список возможных решений. Чем больше места выделено на жестком диске, тем больше возможных решений на нем хранится, что повышает шансы майнера найти в своем списке искомое значение хэша и получить награду за блок. PoC состоит из двух этапов: плотинга и майнинга. P.S. Первый раз эту концепцию озвучил еще в 2013 году польский эксперт Стефан Дзембовский (https://eprint.iacr.org/2013/796.pdf). Уже 10 августа 2014 на форуме bitcointalk была представлена монета Burstcoin (https://bitcointalk.org/index.php?topic=731923.0), которая первой начала использовать алгоритм PoC. Немного позже появились и другие криптовалюты на этом алгоритме. Самые знаменитые: SpaceMint и Chia. 5.Proof-of-Elapsed-Time (PoET) (https://ru.minter.wiki/Proof-of-Elapsed-Time_(PoET)) Proof-of-Elapsed-Time (PoET) - в переводе "доказательство истекшего времени" – это алгоритм консенсуса, который используют в блокчейн-сетях для определения победителей блоков в децентрализованной сети. PoET очень похож на всеми известный PoW, но потребляет в разы меньше электроэнергии. Оборудование нужно только для генерации блоков, которые создаются "случайным образом". А дальнейший функционал можно сравнить с лотереей, при которой каждый участник сети имеет шансы на победу. Вероятность выигрыша пропорциональна ресурсам, которые вложил кандидат. Ресурсами являются процессоры общего назначения с доверенной средой исполнения. За работу этого механизма отвечают специальные инструкции процессоров Intel Software Guard Extensions (SGX) (https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F_Intel_SGX), которые предоставляют возможность приложению создавать анклавы — области в виртуальном адресном пространстве. Как работает PoET - Каждый узел, который работает в сети, должен выждать определенный отрезок назначенного времени; - Все узлы блокчейна генерируют случайное время ожидания и переходят в спящий режим на указанный срок; - Тот участник сети, который первым выждал свое назначенное время ("проснулся первым"), получает "счастливый билет" - право добыть новый блок; - "Победитель" транслирует всю нужную информацию в сеть, после чего процесс повторяется. Кто придумал и кто использует Алгоритм Proof-of-Elapsed-Time был изобретен в 2016 года транснациональной корпорацией Intel. Компания создала собственный блокчейн под названием IntelLedger, а в качестве алгоритма консенсуса использовали PoET. На данный момент алгоритм присутствует только в одном из Hyperledger-продуктов. Но, по словам разработчиков, при необходимости механизм можно масштабировать до тысяч нод. 6.Proof-of-Contribution (PoCo) (https://ru.minter.wiki/Proof-of-Contribution_(PoCo)) Proof-of-Contribution (PoCo) - это алгоритм консенсуса, который основанный на вычислительной мощности.Его цель состоит в достижении доверия между разными агентами, в том числе между работниками и пользователями, с тем чтобы пользователи могли полагаться на результаты, рассчитанные внешним субъектом, стимулы которого в лучшем случае основываются на доходах. Особенности: - Каждое действие имеет порог доверия, который определяет минимальный уровень уверенности, необходимый для проверки результатов; - Вклад каждого работника сети имеет определенный уровень доверия, который зависит от репутации и доли работника; - Перед выполнением любых вычислительных действий каждый работник должны внести собственную долю (вклад, депозит); - Работники выполняют вычисление и предоставляют хэш результата, который они вычислили; - Репутация каждого работника постоянно корректируется; - Когда несколько работников предоставляют идентичный результат, то их доверенность агрегируется для вычисления уверенности в результатах. Задача дублируется до тех пор, пока один из предложенных результатов не превысит доверительный порог. На данном этапе достигается консенсус по результатам применения: 1. Работники, которые вычислили ошибочный результат, потеряют свою долю; 2. Работники, рассчитавшие проверенный результат, будут совместно использовать вознаграждение, состоящее из платежей приложения и доли, потерянной работниками, опубликовавшими ошибочный результат. Кто использует Самым знаменитым проектом, который использует PoCo является iExec (https://coinmarketcap.com/currencies/rlc/)— децентрализованный проект облачных вычислений на основе блокчейна. Он использует идею грид-вычислений (Desktop Grid), также называемую "вычислениями на волонтерской основе" (Volunteer Computing). Эта форма распределенных вычислений означает сбор компьютерных ресурсов через интернет, которые мало используются, для их объединения в "виртуальный суперкомпьютер". Таким образом можно параллельно запускать очень большие приложения за долю от стоимости традиционного суперкомпьютера. Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on June 24, 2020, 12:55:07 PM 7.Delayed proof-of-Work (dPoW) (https://ru.minter.wiki/Delayed_proof-of-Work_(dPoW))
Delayed proof-of-Work (dPoW), дословный перевод "Отложенное подтверждение работы" - это механизм консенсуса второго плана, который гарантирует колоссально высокий уровень безопасности в дополнение к существующим алгоритмам консенсуса. Доступен для PoW и PoS блокчейнов. Алгоритм dPoW был разработан стартапом Komodo, который позже был внедрен в основную кодовую базу Zcash. Это дало возможность обеспечить конфиденциальность с нулевым разглашением и основательно повысить безопасность всей сети из-за использования хешрейта Биткоина. Как это работает: С интервалом в десять минут система Komodo делает снимок своего блокчейна. Затем снимок автоматически записывается в блок Bitcoin-сети. Этот процесс создает резервную копию всей системы Komodo, которая сохраняется в блокчейне первой криптовалюты. В данный момент, dPoW используют в связке с Биткоином, но технически его можно "привязать" к любому другому блокчейну, который использует модель UTXO (https://coinpost.ru/p/chto-takoe-utxo-v-seti-bitkoin-obuyasnyaem-prostymi-slovami). 8.Serialization of Proof-of-work Events (SPECTRE) (https://ru.minter.wiki/Serialization_of_Proof-of-work_Events_(SPECTRE)) Serialization of Proof-of-work Events (SPECTRE) - алгоритм консенсуса, который совмещает в себе основные принципы PoW и DAG для масштабируемости достижения консенсуса. Базовая модель SPECTRE относится к категории частично синхронных сетей: ее безопасность зависит от наличия некоторого ограничения на время доставки сообщений между участниками которые честны, но сам протокол не содержит определенных параметров, которые зависят от этих ограничений. Для добычи блока в этой сети необходимо указать сразу нескольких родительских блоков, а не один. Добыча блока, указывающего на родительские блоки, валидирует эти блоки. В отличие от основного принципа алгоритма PoW, где "всегда побеждает самая длинная цепь", SPECTRE использует принцип "побеждают блоки с наибольшим количеством “дочерних” блоков". При любой пропускной способности SPECTRE всегда устойчив к атакам злоумышленников, ибо сеть использует до 50% вычислительной мощности. Вывод - Атака 51% здесь невозможна. SPECTRE может работать с произвольно высокими скоростями создания блоков. Это означает, что его транзакции всегда подтверждаются в считанные секунды. В традиционных блокчейнах порядок между любыми двумя транзакциями должен быть решен и согласован всеми не поврежденными узлами. В отличие от них, в SPECTRE возможен консенсус только в отношении транзакций, выполняемых честными пользователями. В контексте "Интернета денег"" два конфликтующих платежа, которые подтверждаются одновременно, могли быть созданы только недобросовестным пользователем, поэтому сеть может позволить себе отложить принятие таких транзакций без ущерба для удобства использования системы. Структура SPECTRE формализует этот более слабый набор требований для распределенного реестра. SPECTRE ещё не работал в реальных сетях. 9.Proof-of-Location (PoL) (https://ru.minter.wiki/Proof-of-Location_(PoL)) Proof-of-Location (PoL) - алгоритм достижения консенсуса в блокчейне, при использовании которого каждый пользователь имеет доступ к геолокационным меткам, с помощью которых можно определить местонахождение узлов, на которых хранится криптовалюта. Основная информация: Создателями протокола Proof-of-Location (PoL) считают проект Platin (на данный момент НЕ работает). Главная особенность данного алгоритма состоит в том, что он позволяет видеть, в какой конкретной точке Планеты находятся те или иные цифровые активы. Проект Platin планировал интегрировать собственный блокчейн с Ethereum, EOS и другими топовыми проектами. Платформа должна была использовать протокол доказательства с нулевым разглашением, который позволил бы определить конкретное местонахождение цифровых активов. Если рассмотреть алгоритм с технической стороны, то PoL дает возможность возможность зафиксировать за собой конкретную GPS-локацию (точку) и этим самым аутентифицировать себя в сети. Протокол зависит от BFT-маячков (beacons), которые в свою очередь записывают конкретную геолокацию и маркеры времени в блокчейне. Теоретически, это должно предотвратить сбои в системе и мошеннические действия. На данный момент на данном алгоритме достижения консенсуса никто не работает. 10.Directed Acyclic Graphs (DAG) (https://ru.minter.wiki/Directed_Acyclic_Graphs_(DAG)) Directed Acyclic Graphs (DAG, ориентированный ациклический граф) - это высокомасштабируемый альтернативный тип технологии распределенных реестров, который использует особый механизм работы с инновационной структурой данных. Развитие DAG может идти только от ранних блоков к поздним и никак иначе. И DAG , и блокчейн - очень близкие родственники, но это не одно и то же. Многие ошибочно называют DAG "Блокчейном 3.0", но это грубая ошибка, Directed Acyclic Graphs - это реестр без блоков, ориентированный граф (https://ru.wikipedia.org/wiki/%D0%9E%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B3%D1%80%D0%B0%D1%84), в котором нет циклов. DAG работает как сеть взаимосвязанных ветвей, которые растут наружу сразу в нескольких направлениях: https://ru.minter.wiki/images/a/a5/DAG1.jpg Каждая следующая транзакция ссылается на родительские, подписывает их хэши и включает их в свой состав. В итоге формируется "древо" транзакций, где каждая из них является подтвержденной и неизменной. Кто использует Directed Acyclic Graphs Самый известный проект, базирующийся на DAG - основанная в 2005 году популярная система контроля версия Git (https://en.wikipedia.org/wiki/Git). Самый популярный криптовалютный проект на основе DAG – IOTA (https://coinmarketcap.com/currencies/iota/). Они используют уникальный алгоритм Tangle, который в свою очередь построена на механизме DAG. Tangle предоставил возможность создавать ациклические графы в 3D, при этом сеть может работать даже в режиме оффлайн. Другие проекты, которую используют DAG: Nano, Obyte, Byteball, Fantom и еще несколько менее известных стартапов. 11. Особняком можно выделить алгоритмы, которые работают с использованием принципов Византийской отказоустойчивости (https://ru.minter.wiki/%D0%92%D0%B8%D0%B7%D0%B0%D0%BD%D1%82%D0%B8%D0%B9%D1%81%D0%BA%D0%B0%D1%8F_%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%BE%D1%83%D1%81%D1%82%D0%BE%D0%B9%D1%87%D0%B8%D0%B2%D0%BE%D1%81%D1%82%D1%8C). Я не вижу смысла описывать их все, ибо этот принцип используют практически все распределенные сети. Все началось с Задачи двух генералов (1975 год) (http://hydra.infosys.tuwien.ac.at/teaching/courses/AdvancedDistributedSystems/download/1975_Akkoyunlu,%20Ekanadham,%20Huber_Some%20constraints%20and%20tradeoffs%20in%20the%20design%20of%20network%20communications.pdf), позже, в 1982 году Шостак, Лэмпорт и Пиз, усложнили задачу и дали название Задача Византийских Генералов. Решение (на примере подчиненных): https://ru.minter.wiki/images/8/85/2_%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D0%BB%D0%B0.png - Командир отправляет свое решение каждому лейтенанту; - Если подчиненный не получает задание, или отказывается его исполнять, то он использует функцию ОТСТУПИТЬ; - В итоге консенсуса можно достигнуть только в том случае, когда 2\3 участников будут честны и подтвердят назначение командира. Данная задача в разы сложнее, но у нее решение есть. Когда Сатоши Накамото изобрел Биткоин, то одним с первых решений, использованных им, было доказательства работы вероятностного решения задачи "Византийских генералов" (https://www.mail-archive.com/cryptography@metzdowd.com/msg09997.html) 12. Roll-DPoS - (A Randomized Delegated Proof of Stake) Рандомизированное делегированное доказательство доли Спасибо dushanya (https://bitcointalk.org/index.php?action=profile;u=1168192), источник тут - https://bitcointalk.org/index.php?topic=5257760.msg54734003#msg54734003 Кто использует На сегодняшний день алгоритм консенсура Roll-DPoS уже больше года успешно используется проектом IoTeX для функционирования сети Интернета Доверенных Вещей. Чтобы иметь быстрый и эффективный механизм консенсуса с мгновенным завершением блоков в контексте IoT, разработчики объединили концепции DPoS, PBFT и VRF (Verifiable Random Functions). Как работает алгоритм Roll-DPOS имеет четыре фазы: выбор кандидатов, формирование комитета, предложение блока и завершение блока. Набор кандидатов В этой фазе могут участвовать — т.е. голосовать за кандидатов комитета —все узлы сети. Чтобы мотивировать узлы на голосование, система удостоверяется, что делегаты разделяют полученные вознаграждения с голосующими. Кандидаты формируют группу минимум из 97 делегатов; в будущем это число будет увеличиваться, во избежание в дальнейшем централизации майнинг-мощностей. Выбранные кандидаты вносятся в одну эпоху, которая состоит из 47 итераций. Формирование комитета В каждой итерации посредством VRF из пула кандидатов случайным образом выбирается комитет из 11 кандидатов, для создания блоков в следующих 11 раундах. Идея заключается в том, чтобы использовать хэш блока из последней итерации и личный ключ узла в качестве входных данных для VRF и создания (Boolean output) логического вывода - если некто выбран как член комитета, преимущество, указывающего на его очередь в предложении блока, и доказательства, указывающего на его квалификацию для предложения блока в определенном раунде. Использование VRF имеет важное значение, поскольку обеспечивает не интерактивный способ сортировки всех делегатов для предложения блоков справедливым и безопасным образом. С этой целью используется эффективный VRF, так, как он используется в Algorand. Предложение блока В каждом раунде (это примерно каждые 3 секунды), каждый узел в комитете предлагает новый блок и передает его всей сети, вместе с приоритетом и доказательством. Только блок, предложенный узлом с самым высоким приоритетом, еще не выносившей предложений в той же итерации, рассматривается другими узлами и получает статус блока-кандидата. Завершение блока В том же раунде все остальные узлы голосуют за/против блока-кандидата посредством PBFT. Если более 2/3 узлов комитета соглашаются о валидности блока-кандидата, он завершается и добавляется каждым в сети к блокчейну. После этого, процессы предложения и завершения блока осуществляются в следующем раунде; если текущая итерация заканчивается, перед осуществлением процессов предложения и завершения блока формируется другой случайный комитет. Всем спасибо! Title: Re: Экзотические алгоритмы консенсуса Post by: BazilOK on June 24, 2020, 04:19:31 PM Хм. Спасибо за восполнение громадного пробела в области знаний по алгоритмам консенсуса))
Реально большой массив информации, который с первого раза даже не полностью удалось усвоить. Хотя казалось бы и опыт практический есть - непосредственно в майнинге сталкивался и с POS и с POW. О других алгоритмах как то даже не особо задумывался. Возможно просто по причине отсутствия практической пользы для зарабатывания денег)) Но, тем не менее "учить матчасть" иногда все же стОит. Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок. Вот интересно, а первоначальные монеты у майнеров откуда взялись? Выкупают у админов то что те по премайну намайнили?С временем, "мощность" каждого участника уменьшается. Здесь провести аналогии с PoS-алгоритмом: мощность сети Биткоина и Эфириума тоже постоянно растет, естественно майнеры должны все время покупать новое оборудования. Так и здесь нужно сжигать все больше монет чтобы сохранить шанс на добычу следующего блока. Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on June 24, 2020, 04:42:58 PM Вот интересно, а первоначальные монеты у майнеров откуда взялись? Выкупают у админов то что те по премайну намайнили? Опций на самом деле много, можно с помощью первого блока добыть половину эмиссии, а потом уже подключать других участников сети. Я на самом деле не рассматривал проекты Counterparty (XCP) и Slimcoin очень детально, но думаю там был определенный премайн. По свободе конечно попытаюсь найти больше информации об этих проектах, самому очень интересно. Одно могу сказать - Proof-of-Burn для рисковых криптанов :) Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on June 24, 2020, 07:35:08 PM Отличная статья, которую я видимо буду перечитывать, потому что такой объем информации за раз просто не реально переварить. Буквально по первому же алгоритму возни вопрос:
Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок. Получается часть майнеров сожгут свои монеты, но не получат в итоге вознаграждение, потому что блок добудет тот кто уничтожил большее количество монет?Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on June 25, 2020, 04:28:11 PM Отличная статья, которую я видимо буду перечитывать, потому что такой объем информации за раз просто не реально переварить. Буквально по первому же алгоритму возни вопрос: Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок. Получается часть майнеров сожгут свои монеты, но не получат в итоге вознаграждение, потому что блок добудет тот кто уничтожил большее количество монет?Спасибо Да, алгоритм не лишен "черных пятен": Quote Недостатки Proof-of-Burn Можно с уверенностью сказать, что прибыль получат только самые крупные холдеры, которые постоянно реинвестируют в определенную монету. Для "бедных" нет гарантий...и да, это проблема. - Богатые становятся богаче. PoB, как и другие алгоритмы консенсуса, не лишен этой проблемы. Богатый будет вкладывать все больше денег, естественно и получит на выходе больше; - Нет гарантий, что человек окупит свои инвестиции. На самом деле, мало кто использует Proof-of-Burn как основной алгоритм распределенного механизма. Как описал в статье (https://ru.minter.wiki/Proof-of-Burn_(PoB)) только 2 более-менее знаменитых проектах используют этот алгоритм: Slimcoin и Counterparty (XCP). Второй использует Proof-of-Burn как доп алгоритм, а первый...ну все можно посмотреть здесь - https://www.coingecko.com/en/coins/slimcoin. Т.е. он еще очень "жидкий". Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on June 26, 2020, 06:00:35 PM Отличная статья, которую я видимо буду перечитывать, потому что такой объем информации за раз просто не реально переварить. Буквально по первому же алгоритму возни вопрос: Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок. Получается часть майнеров сожгут свои монеты, но не получат в итоге вознаграждение, потому что блок добудет тот кто уничтожил большее количество монет?Спасибо Да, алгоритм не лишен "черных пятен": Quote Недостатки Proof-of-Burn Можно с уверенностью сказать, что прибыль получат только самые крупные холдеры, которые постоянно реинвестируют в определенную монету. Для "бедных" нет гарантий...и да, это проблема. - Богатые становятся богаче. PoB, как и другие алгоритмы консенсуса, не лишен этой проблемы. Богатый будет вкладывать все больше денег, естественно и получит на выходе больше; - Нет гарантий, что человек окупит свои инвестиции. На самом деле, мало кто использует Proof-of-Burn как основной алгоритм распределенного механизма. Как описал в статье (https://ru.minter.wiki/Proof-of-Burn_(PoB)) только 2 более-менее знаменитых проектах используют этот алгоритм: Slimcoin и Counterparty (XCP). Второй использует Proof-of-Burn как доп алгоритм, а первый...ну все можно посмотреть здесь - https://www.coingecko.com/en/coins/slimcoin. Т.е. он еще очень "жидкий". Вообще такие экзотические алгоритмы консенсуса выглядят скорее как попытка не очень удачного эксперимента и видимо создавались именно как эксперементальные Title: Re: Экзотические алгоритмы консенсуса Post by: Gellert Grindelwald on June 26, 2020, 06:30:13 PM Весьма неплохо и достаточно развернуто, но многие приведенные алгоритмы по большему счету, являются подвидом всем известных. Мне кажется можно дополнить известными алгоритмами, тем же POS и указать, какой из подвидов к какому виду относиться. Ничуть не хочется умалять Ваш труд, статья отличная, но предела совершенству нет, если еще приведете в структурированный вид, вполне потянет на весьма глубокое исследование, которое как мы видим интересно множеству пользователей. Тем более в нынешние смутные времена, когда каждый совсем не прочь повысить эффективность проекта, которым занимается.
Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on June 26, 2020, 06:47:11 PM Тогда не странно, что на этом алгоритме работает мало проектов. А тот же Slimcoin имеет Trading Volume $4.34, то есть можно сказать, что проект и не существует толком. Вообще такие экзотические алгоритмы консенсуса выглядят скорее как попытка не очень удачного эксперимента и видимо создавались именно как эксперементальные Ну не все и эксперементальные. Я хоть и не особо люблю Waves, но Иванов разработал довольно добротный Leased Proof of Stake (LPoS), на котором и работает проект 4 года. Proof of Importance (PoI) внедрили в NEM еще в 2014 году...есть примеры нормальные + не все алгоритмы я успел описать (времени маловато). Но да, Вы правы, в большинстве случаев это непонятные алгоритмы, которые практически никто не использует. P.S. Directed Acyclic Graphs хоть НЕ алгоритм, но этот механизм можно интегрировать практически в любой блокчейн...как по мне очень забавно :) Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on June 27, 2020, 05:35:57 AM Тогда не странно, что на этом алгоритме работает мало проектов. А тот же Slimcoin имеет Trading Volume $4.34, то есть можно сказать, что проект и не существует толком. Вообще такие экзотические алгоритмы консенсуса выглядят скорее как попытка не очень удачного эксперимента и видимо создавались именно как эксперементальные Ну не все и эксперементальные. Я хоть и не особо люблю Waves, но Иванов разработал довольно добротный Leased Proof of Stake (LPoS), на котором и работает проект 4 года. Proof of Importance (PoI) внедрили в NEM еще в 2014 году...есть примеры нормальные + не все алгоритмы я успел описать (времени маловато). Но да, Вы правы, в большинстве случаев это непонятные алгоритмы, которые практически никто не использует. P.S. Directed Acyclic Graphs хоть алгоритм, но этот механизм можно интегрировать практически в любой блокчейн...как по мне очень забавно :) А про Directed Acyclic Graphs видимо придется читать дополнительно, потому я совсем не понял принцип работы. Я насколько помню проект Vite тоже использует DAG, я за ними следил одно время, но даже тогда не вник что такое DAG Title: Re: Экзотические алгоритмы консенсуса Post by: Gellert Grindelwald on June 27, 2020, 12:43:07 PM Тогда не странно, что на этом алгоритме работает мало проектов. А тот же Slimcoin имеет Trading Volume $4.34, то есть можно сказать, что проект и не существует толком. Вообще такие экзотические алгоритмы консенсуса выглядят скорее как попытка не очень удачного эксперимента и видимо создавались именно как эксперементальные Ну не все и эксперементальные. Я хоть и не особо люблю Waves, но Иванов разработал довольно добротный Leased Proof of Stake (LPoS), на котором и работает проект 4 года. Proof of Importance (PoI) внедрили в NEM еще в 2014 году...есть примеры нормальные + не все алгоритмы я успел описать (времени маловато). Но да, Вы правы, в большинстве случаев это непонятные алгоритмы, которые практически никто не использует. P.S. Directed Acyclic Graphs хоть алгоритм, но этот механизм можно интегрировать практически в любой блокчейн...как по мне очень забавно :) А про Directed Acyclic Graphs видимо придется читать дополнительно, потому я совсем не понял принцип работы. Я насколько помню проект Vite тоже использует DAG, я за ними следил одно время, но даже тогда не вник что такое DAG Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on June 27, 2020, 04:36:29 PM Окей, если заговорили о Directed Acyclic Graphs, то что еще можно добавить? Я думаю, что графы в чистом виде нельзя использовать, ведь будет не совсем эффективно (ну реально тот же dPoS круче). Но, если интегрировать DAG в уже рабочий блокчейн, или мутировать уже существующий механизм с помощью графа...то здесь будет "Бинго!". А все потому, что в
Мне очень понравилась вот эта статья (англ) - https://hazelcast.com/glossary/directed-acyclic-graph/, все кратко и понятно - рекомендую. P.S. Если я правильно понял информацию, то DAG в теперешнем виде создал Серхио Демьян Лернер еще в 2012 году, правда самостоятельно так и не смог реализовать свою идею не в одном крипто проекте. А если говорить о графах в чистом виде...то это математика, я хз даже когда из придумали и когда начали использовать ;) Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on June 30, 2020, 07:16:19 PM Окей, если заговорили о Directed Acyclic Graphs, то что еще можно добавить? Я думаю, что графы в чистом виде нельзя использовать, ведь будет не совсем эффективно (ну реально тот же dPoS круче). Но, если интегрировать DAG в уже рабочий блокчейн, или мутировать уже существующий механизм с помощью графа...то здесь будет "Бинго!". А все потому, что в Спасибо за статью, действительно кратко и информативно, но на английском. Но с помощью гугл переводчика основная суть понятна. Теперь есть хотя бы беглое представление о DAG. Мне очень понравилась вот эта статья (англ) - https://hazelcast.com/glossary/directed-acyclic-graph/, все кратко и понятно - рекомендую. P.S. Если я правильно понял информацию, то DAG в теперешнем виде создал Серхио Демьян Лернер еще в 2012 году, правда самостоятельно так и не смог реализовать свою идею не в одном крипто проекте. А если говорить о графах в чистом виде...то это математика, я хз даже когда из придумали и когда начали использовать ;) Ну и еще раз спасибо за интересный топик. Даже странно почему тут такая не большая активность от форумчан, зато обсуждение человека который два года назад купил эфир на 15000 занимает 100500 страниц Title: Re: Экзотические алгоритмы консенсуса Post by: Julien_Olynpic on July 01, 2020, 04:09:27 AM НЕМ не упомянул, у него тоже необычный консенсус, довольно известная монета из топов... а так, экзотики, конечно, много больше. Но и то, что нарыл - тоже неплохо.)
Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on July 01, 2020, 07:11:37 PM НЕМ не упомянул, у него тоже необычный консенсус, довольно известная монета из топов... а так, экзотики, конечно, много больше. Но и то, что нарыл - тоже неплохо.) Упомянул ;D : Quote Proof of Importance (PoI) – это алгоритм консенсуса доказательства важности. Он, как и многие другие алгоритмы, представляет собой расширенную версию PoS с некоторыми нюансами. Кроме числа участников, которые обладают коинами, алгоритм анализирует и действия всех участников сети. https://ru.minter.wiki/Proof_of_Importance_(PoI)Тестовую сеть запустили еще осенью 2014 года...можно сказать это "старый-новый" экзотический блокчейн. Лет ему много, но вот использует только NEM. Я думаю это связано с большой "заумностью" этого алгоритма, ведь даже не каждый криптан с первого раза поймет что такое форжинг, а именно его систему в конкретном алгоритме (сам башку поломал + на листике рисовал). А еще - это полная централизация сети китами - "крутой в итоге станет еще круче" ;) Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on July 04, 2020, 04:24:41 PM НЕМ не упомянул, у него тоже необычный консенсус, довольно известная монета из топов... а так, экзотики, конечно, много больше. Но и то, что нарыл - тоже неплохо.) Упомянул ;D : Quote Proof of Importance (PoI) – это алгоритм консенсуса доказательства важности. Он, как и многие другие алгоритмы, представляет собой расширенную версию PoS с некоторыми нюансами. Кроме числа участников, которые обладают коинами, алгоритм анализирует и действия всех участников сети. https://ru.minter.wiki/Proof_of_Importance_(PoI)Тестовую сеть запустили еще осенью 2014 года...можно сказать это "старый-новый" экзотический блокчейн. Лет ему много, но вот использует только NEM. Я думаю это связано с большой "заумностью" этого алгоритма, ведь даже не каждый криптан с первого раза поймет что такое форжинг, а именно его систему в конкретном алгоритме (сам башку поломал + на листике рисовал). А еще - это полная централизация сети китами - "крутой в итоге станет еще круче" ;) Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on July 04, 2020, 06:36:02 PM Раз уж об этом речь зашла. расскажите, что такое форжинг? И я тут у вас увидел противоречие, вроде как этот алгоритм должен давать шанс не только китам, но и тем кто выполняет и другие условия: активность по транзакциям и время нахождения в сети. А потом ниже вы пишите, про централизацию китами. Ну здесь больше философский вопрос "что это": Quote Форжинг (от англ. Forging — ковка) или Минтинг (от англ. Minting — чеканка монет) — создание в различных криптовалютах новых блоков в блокчейне на основе подтверждения доли владения с возможностью получить вознаграждение в форме новых единиц и комиссионных сборов. Источник - https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D0%B6%D0%B8%D0%BD%D0%B3Как по мне, то это составляющая процесса майнинга...одна из частей алгоритма) О китах Тоже немного философии: когда искал информацию для статьи об Proof of Importance, то наткнулся на краткое объяснение...есть определенная торговая площадка (маркетплейс), на ней тысячи интернет-магазинов, которые торгуют одним типом товаров (электроника). Покупают товар у всех, но больший оборот имеют только несколько магазинов с самым высоким рейтингом. Остальные тоже имеют прибыль, но на порядок меньше. Вопрос с централизацией вроде как частично должен был решить Catapult (https://nemnews.io/160-2/), но я особо не интересуюсь криптовалютой Nem, поэтому если честно хз как там обстоят дела и сможет ли эта разработка как то повлиять на архитектуру блокчейна. Title: Re: Экзотические алгоритмы консенсуса Post by: Julien_Olynpic on July 04, 2020, 06:57:18 PM НЕМ не упомянул, у него тоже необычный консенсус, довольно известная монета из топов... а так, экзотики, конечно, много больше. Но и то, что нарыл - тоже неплохо.) Упомянул ;D : Quote Proof of Importance (PoI) – это алгоритм консенсуса доказательства важности. Он, как и многие другие алгоритмы, представляет собой расширенную версию PoS с некоторыми нюансами. Кроме числа участников, которые обладают коинами, алгоритм анализирует и действия всех участников сети. https://ru.minter.wiki/Proof_of_Importance_(PoI)Тестовую сеть запустили еще осенью 2014 года...можно сказать это "старый-новый" экзотический блокчейн. Лет ему много, но вот использует только NEM. Я думаю это связано с большой "заумностью" этого алгоритма, ведь даже не каждый криптан с первого раза поймет что такое форжинг, а именно его систему в конкретном алгоритме (сам башку поломал + на листике рисовал). А еще - это полная централизация сети китами - "крутой в итоге станет еще круче" ;) Title: Re: Экзотические алгоритмы консенсуса Post by: dushanya on July 05, 2020, 01:53:52 AM Немного дополню одним алгоритмом ;)
Roll-DPoS - (A Randomized Delegated Proof of Stake) Рандомизированное делегированное доказательство доли Кто использует На сегодняшний день алгоритм консенсура Roll-DPoS уже больше года успешно используется проектом IoTeX для функционирования сети Интернета Доверенных Вещей. Чтобы иметь быстрый и эффективный механизм консенсуса с мгновенным завершением блоков в контексте IoT, разработчики объединили концепции DPoS, PBFT и VRF (Verifiable Random Functions). Как работает алгоритм Roll-DPOS имеет четыре фазы: выбор кандидатов, формирование комитета, предложение блока и завершение блока. Набор кандидатов В этой фазе могут участвовать — т.е. голосовать за кандидатов комитета —все узлы сети. Чтобы мотивировать узлы на голосование, система удостоверяется, что делегаты разделяют полученные вознаграждения с голосующими. Кандидаты формируют группу минимум из 97 делегатов; в будущем это число будет увеличиваться, во избежание в дальнейшем централизации майнинг-мощностей. Выбранные кандидаты вносятся в одну эпоху, которая состоит из 47 итераций. Формирование комитета В каждой итерации посредством VRF из пула кандидатов случайным образом выбирается комитет из 11 кандидатов, для создания блоков в следующих 11 раундах. Идея заключается в том, чтобы использовать хэш блока из последней итерации и личный ключ узла в качестве входных данных для VRF и создания (Boolean output) логического вывода - если некто выбран как член комитета, преимущество, указывающего на его очередь в предложении блока, и доказательства, указывающего на его квалификацию для предложения блока в определенном раунде. Использование VRF имеет важное значение, поскольку обеспечивает не интерактивный способ сортировки всех делегатов для предложения блоков справедливым и безопасным образом. С этой целью используется эффективный VRF, так, как он используется в Algorand. Предложение блока В каждом раунде (это примерно каждые 3 секунды), каждый узел в комитете предлагает новый блок и передает его всей сети, вместе с приоритетом и доказательством. Только блок, предложенный узлом с самым высоким приоритетом, еще не выносившей предложений в той же итерации, рассматривается другими узлами и получает статус блока-кандидата. Завершение блока В том же раунде все остальные узлы голосуют за/против блока-кандидата посредством PBFT. Если более 2/3 узлов комитета соглашаются о валидности блока-кандидата, он завершается и добавляется каждым в сети к блокчейну. После этого, процессы предложения и завершения блока осуществляются в следующем раунде; если текущая итерация заканчивается, перед осуществлением процессов предложения и завершения блока формируется другой случайный комитет. Title: Re: Экзотические алгоритмы консенсуса Post by: Julien_Olynpic on July 05, 2020, 03:28:58 AM Quote Немного дополню одним алгоритмом Wink Ловите плюс). Хоть я и не пользуюсь айотексом, но для коллекции алгоритмов консенсуса вполне годно. Я точно не знаю, но, по-моему, есть сейчас много разных версий BFT-консенсуса. Они немного отличаются друг от друга. Было бы здорово, если бы кто-нибудь на форуме взялся провести классификацию и привести примеры с подробным разбором того, чем разные версии этого консенсуса отличаются друг от друга. Боюсь ошибиться, но, насколько я знаю, на форуме нет пока такого топика. ТС упомянул о них лишь вскользь. Можно было бы, кстати, и сравнить их по преимуществам, недостаткам и удобству для конкретного пользователя. Например, в плане делегирования токенов в стейк. Это бы сильно облегчило жизнь многим людям.Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on July 05, 2020, 06:00:37 AM Немного дополню одним алгоритмом ;) Roll-DPoS - (A Randomized Delegated Proof of Stake) Рандомизированное делегированное доказательство доли Большущее спасибо!🙏 Добавил в стартовый пост, по-свободе изучу детальнее + возможно напишу статью. Ловите+ Ловите плюс). Хоть я и не пользуюсь айотексом, но для коллекции алгоритмов консенсуса вполне годно. Я точно не знаю, но, по-моему, есть сейчас много разных версий BFT-консенсуса. Они немного отличаются друг от друга. Было бы здорово, если бы кто-нибудь на форуме взялся провести классификацию и привести примеры с подробным разбором того, чем разные версии этого консенсуса отличаются друг от друга. Боюсь ошибиться, но, насколько я знаю, на форуме нет пока такого топика. ТС упомянул о них лишь вскользь. Можно было бы, кстати, и сравнить их по преимуществам, недостаткам и удобству для конкретного пользователя. Например, в плане делегирования токенов в стейк. Это бы сильно облегчило жизнь многим людям. Сейчас практически все используют наработки с BFT, даже Сатоши четко описал, что его заинтересовала "Задача Византийских Генералов" и он включил этот принцип при разработке первой криптовалюты. Я тоже практически не изучал IoTeX, но на первый взгляд похоже на стандартный DPoS с элементами Proof of Importance (PoI)...гибрид что-ли. Вообще интересно, однозначно изучу этот алгоритм, явно нечто прикольное)) Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on July 05, 2020, 12:04:15 PM Кстати к экзотическим алгоритмам консенсуса можно еще отнести Catchain. Это алгоритм консенсуса на котором должен был работать Дуровский тон. Я сейчас про него статью читал, пишут, что этот алгоритм построен на основе practical Byzantine Fault Tolerance, но имеет ряд отличительных особенностей, поэтому его целесообразно отнести к самостоятельному классу алгоритмов
Title: Re: Экзотические алгоритмы консенсуса Post by: epidemia on July 05, 2020, 01:11:28 PM Кстати к экзотическим алгоритмам консенсуса можно еще отнести Catchain. Это алгоритм консенсуса на котором должен был работать Дуровский тон. Я сейчас про него статью читал, пишут, что этот алгоритм построен на основе practical Byzantine Fault Tolerance, но имеет ряд отличительных особенностей, поэтому его целесообразно отнести к самостоятельному классу алгоритмов Да там на самом деле много алгоритмов на BFT, даже сложно определить кто откуда содрал ;D Поэтому 11-м пунктом просто указал Византийская отказоустойчивость (https://ru.minter.wiki/%D0%92%D0%B8%D0%B7%D0%B0%D0%BD%D1%82%D0%B8%D0%B9%D1%81%D0%BA%D0%B0%D1%8F_%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%BE%D1%83%D1%81%D1%82%D0%BE%D0%B9%D1%87%D0%B8%D0%B2%D0%BE%D1%81%D1%82%D1%8C), ибо это заслуживает отдельной статьи...которую я возможно опишу. А ровнять их под одну гребенку...самые знаменитые: Practical Byzantine Fault Tolerance (о чем Вы и написали) и Federated Byzantine Agreement частично (или полностью?) используют в Stellar и Ripple. Есть и другие, но там все сложно)) Если все хорошо с техническим английским, то можно почитать вот этот прекрасный тех документ - http://pmg.csail.mit.edu/papers/osdi99.pdf Title: Re: Экзотические алгоритмы консенсуса Post by: minhlee95 on July 05, 2020, 01:38:00 PM Кстати к экзотическим алгоритмам консенсуса можно еще отнести Catchain. Это алгоритм консенсуса на котором должен был работать Дуровский тон. Я сейчас про него статью читал, пишут, что этот алгоритм построен на основе practical Byzantine Fault Tolerance, но имеет ряд отличительных особенностей, поэтому его целесообразно отнести к самостоятельному классу алгоритмов Да там на самом деле много алгоритмов на BFT, даже сложно определить кто откуда содрал ;D Поэтому 11-м пунктом просто указал Византийская отказоустойчивость (https://ru.minter.wiki/%D0%92%D0%B8%D0%B7%D0%B0%D0%BD%D1%82%D0%B8%D0%B9%D1%81%D0%BA%D0%B0%D1%8F_%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%BE%D1%83%D1%81%D1%82%D0%BE%D0%B9%D1%87%D0%B8%D0%B2%D0%BE%D1%81%D1%82%D1%8C), ибо это заслуживает отдельной статьи...которую я возможно опишу. А ровнять их под одну гребенку...самые знаменитые: Practical Byzantine Fault Tolerance (о чем Вы и написали) и Federated Byzantine Agreement частично (или полностью?) используют в Stellar и Ripple. Есть и другие, но там все сложно)) Если все хорошо с техническим английским, то можно почитать вот этот прекрасный тех документ - http://pmg.csail.mit.edu/papers/osdi99.pdf Title: Re: Экзотические алгоритмы консенсуса Post by: dushanya on July 05, 2020, 09:03:48 PM Quote Немного дополню одним алгоритмом Wink Ловите плюс). Хоть я и не пользуюсь айотексом, но для коллекции алгоритмов консенсуса вполне годно. Я точно не знаю, но, по-моему, есть сейчас много разных версий BFT-консенсуса. Они немного отличаются друг от друга. Было бы здорово, если бы кто-нибудь на форуме взялся провести классификацию и привести примеры с подробным разбором того, чем разные версии этого консенсуса отличаются друг от друга. Боюсь ошибиться, но, насколько я знаю, на форуме нет пока такого топика. ТС упомянул о них лишь вскользь. Можно было бы, кстати, и сравнить их по преимуществам, недостаткам и удобству для конкретного пользователя. Например, в плане делегирования токенов в стейк. Это бы сильно облегчило жизнь многим людям.Я бы и сама создала такую тему, тем более на такую информацию был бы спрос, но, к сожалению, я не сильно компетентна в технических вопросах, хоть и немного связана с этим консенсусом. Возможно, если кому-то нужна будет техническая информация с описанными формулами, то у меня есть источник, где почитать про PBFT (правда на английском). А если кому нужна такая информация, возможно я могла бы даже перевести такую бумагу)) |