Pages:
Author

Topic: Экзотические алгоритмы консенсуса - page 2. (Read 410 times)

full member
Activity: 527
Merit: 101
DIA | Data infrastructure for DeFi
Отличная статья, которую я видимо буду перечитывать, потому что такой объем информации за раз просто не реально переварить. Буквально по первому же алгоритму возни вопрос:
Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок.
Получается часть майнеров сожгут свои монеты, но не получат в итоге вознаграждение, потому что блок добудет тот кто уничтожил большее количество монет?
sr. member
Activity: 826
Merit: 330
Вот интересно, а первоначальные монеты у майнеров откуда взялись? Выкупают у админов то что те по премайну намайнили?

Опций на самом деле много, можно с помощью первого блока добыть половину эмиссии, а потом уже подключать других участников сети. Я на самом деле не рассматривал проекты Counterparty (XCP) и  Slimcoin очень детально, но думаю там был определенный премайн. По свободе конечно попытаюсь найти больше информации об этих проектах, самому очень интересно. Одно могу сказать - Proof-of-Burn для рисковых криптанов Smiley
member
Activity: 226
Merit: 34
Хм. Спасибо за восполнение громадного пробела в области знаний по алгоритмам консенсуса))
Реально большой массив информации, который с первого раза даже не полностью удалось усвоить. Хотя казалось бы и опыт практический есть - непосредственно в майнинге сталкивался и с POS и с POW. О других алгоритмах как то даже не особо задумывался. Возможно просто по причине отсутствия практической пользы для зарабатывания денег)) Но, тем не менее "учить матчасть" иногда все же стОит.
Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок.
С временем, "мощность" каждого участника уменьшается. Здесь провести аналогии с PoS-алгоритмом: мощность сети Биткоина и Эфириума тоже постоянно растет, естественно майнеры должны все время покупать новое оборудования. Так и здесь нужно сжигать все больше монет чтобы сохранить шанс на добычу следующего блока.
Вот интересно, а первоначальные монеты у майнеров откуда взялись? Выкупают у админов то что те по премайну намайнили?
sr. member
Activity: 826
Merit: 330
7.Delayed proof-of-Work (dPoW)

Delayed proof-of-Work (dPoW), дословный перевод "Отложенное подтверждение работы" - это механизм консенсуса второго плана, который гарантирует колоссально высокий уровень безопасности в дополнение к существующим алгоритмам консенсуса. Доступен для PoW и PoS блокчейнов.

Алгоритм dPoW был разработан стартапом Komodo, который позже был внедрен в основную кодовую базу Zcash. Это дало возможность обеспечить конфиденциальность с нулевым разглашением и основательно повысить безопасность всей сети из-за использования хешрейта Биткоина.

Как это работает:
С интервалом в десять минут система Komodo делает снимок своего блокчейна. Затем снимок автоматически записывается в блок Bitcoin-сети. Этот процесс создает резервную копию всей системы Komodo, которая сохраняется в блокчейне первой криптовалюты.

В данный момент, dPoW используют в связке с Биткоином, но технически его можно "привязать" к любому другому блокчейну, который использует модель UTXO.



8.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)

Proof-of-Location (PoL) - алгоритм достижения консенсуса в блокчейне, при использовании которого каждый пользователь имеет доступ к геолокационным меткам, с помощью которых можно определить местонахождение узлов, на которых хранится криптовалюта.

Основная информация:
Создателями протокола Proof-of-Location (PoL) считают проект Platin (на данный момент НЕ работает). Главная особенность данного алгоритма состоит в том, что он позволяет видеть, в какой конкретной точке Планеты находятся те или иные цифровые активы. Проект Platin планировал интегрировать собственный блокчейн с Ethereum, EOS и другими топовыми проектами. Платформа должна была использовать протокол доказательства с нулевым разглашением, который позволил бы определить конкретное местонахождение цифровых активов.

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

На данный момент на данном алгоритме достижения консенсуса никто не работает.



10.Directed Acyclic Graphs (DAG)

Directed Acyclic Graphs (DAG, ориентированный ациклический граф) - это высокомасштабируемый альтернативный тип технологии распределенных реестров, который использует особый механизм работы с инновационной структурой данных. Развитие DAG может идти только от ранних блоков к поздним и никак иначе.

И DAG , и блокчейн - очень близкие родственники, но это не одно и то же. Многие ошибочно называют DAG "Блокчейном 3.0", но это грубая ошибка, Directed Acyclic Graphs - это реестр без блоков, ориентированный граф, в котором нет циклов.

DAG работает как сеть взаимосвязанных ветвей, которые растут наружу сразу в нескольких направлениях:



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

Кто использует Directed Acyclic Graphs
Самый известный проект, базирующийся на DAG - основанная в 2005 году популярная система контроля версия Git.

Самый популярный криптовалютный проект на основе DAG – IOTA. Они используют уникальный алгоритм Tangle, который в свою очередь построена на механизме DAG. Tangle предоставил возможность создавать ациклические графы в 3D, при этом сеть может работать даже в режиме оффлайн.

Другие проекты, которую используют DAG: Nano, Obyte, Byteball, Fantom и еще несколько менее известных стартапов.



11. Особняком можно выделить алгоритмы, которые работают с использованием принципов Византийской отказоустойчивости. Я не вижу смысла описывать их все, ибо этот принцип используют практически все распределенные сети.

Все началось с Задачи двух генералов (1975 год), позже, в 1982 году Шостак, Лэмпорт и Пиз, усложнили задачу и дали название Задача Византийских Генералов.

Решение (на примере подчиненных):



- Командир отправляет свое решение каждому лейтенанту;
- Если подчиненный не получает задание, или отказывается его исполнять, то он использует функцию ОТСТУПИТЬ;
- В итоге консенсуса можно достигнуть только в том случае, когда 2\3 участников будут честны и подтвердят назначение командира.
Данная задача в разы сложнее, но у нее решение есть.

Когда Сатоши Накамото изобрел Биткоин, то одним с первых решений, использованных им, было доказательства работы вероятностного решения задачи "Византийских генералов"

12.
Roll-DPoS - (A Randomized Delegated Proof of Stake) Рандомизированное делегированное доказательство доли

Спасибо dushanya, источник тут - https://bitcointalksearch.org/topic/m.54734003

Кто использует
На сегодняшний день алгоритм консенсура 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 узлов комитета соглашаются о валидности блока-кандидата, он завершается и добавляется каждым в сети к блокчейну. После этого, процессы предложения и завершения блока осуществляются в следующем раунде; если текущая итерация заканчивается, перед осуществлением процессов предложения и завершения блока формируется другой случайный комитет.



Всем спасибо!
sr. member
Activity: 826
Merit: 330
Доброго времени суток! Smiley
На протяжении длительного времени собирал информацию об алгоритмах консенсуса, которые встречаются очень редко или уже совсем мертвы. Для чего? Ответ прост: стало интересно...ведь большинство крипто проектов используют для своих монет более-менее стандартные PoW, PoS и dPoS. Но, на самом деле, алгоритмов очень много...правда далеко не о всех я нашел информацию. Поэтому предлагаю кратко пробежаться по тех механизмах консенсуса, о которых я нашел хоть какую-то инфу.

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

Информацию для этой статьи я взял со своих же материалов, которые писал на протяжении нескольких месяцев. Все ссылки предоставляю.

1.Proof-of-Burn (PoB)

Proof of Burn (PoB) — это альтернативный алгоритм консенсуса , который используют как альтернативу для уже известных и проверенных PoS и PoW. Он не требует огромных мощностей и больших энергетических затрат, как PoW. Его принцип работы уникален: майнеры должны "сжигать" монеты. Именно разрушение даст им возможность создать новые блоки равносильно сумме сгоревших коинов.

В блокчейне присутствует специальный "нулевой адрес" (burn address), который работает по принципу "Черной дыры" - все монеты, которые туда попадают, просто исчезают. Другими словами, майнеры посылают собственные монеты на этот "нулевой адрес", который их уничтожает. Все эти транзакции записывается в блокчейн и являються доказательством выполненной работы.

Главная идея алгоритма консенсуса Proof-of-Burn - готовность пользователя потерять криптовалюту на краткосрочной дистанции ради крупных долгосрочных инвестиций. Чем больше монет уничтожил определенный человек, тем больше вероятность того, что именно он добудет следующий блок.

С временем, "мощность" каждого участника уменьшается. Здесь провести аналогии с PoS-алгоритмом: мощность сети Биткоина и Эфириума тоже постоянно растет, естественно майнеры должны все время покупать новое оборудования. Так и здесь нужно сжигать все больше монет чтобы сохранить шанс на добычу следующего блока.

Кто использует:
- В Slimcoin доказательство сжигания используется в качестве консенсусного алгоритма и метода майнинга;
- Counterparty (XCP) используют для первоначального создания токенов. Пользователь должен отправить определенное количество Биткоинов на "нулевой адрес" и за это получит токены Counterparty.



2.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)

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)

Proof-of-Capacity (PoC) - алгоритм достижения консенсуса в блокчейне, при использовании которого для добычи криптовалюты используется свободное место на устройстве хранения файлов (жесткий диск). При этом вычислительная мощность (как в PoW) и количество монет (как в PoS) не играют никакой роли. Иногда в этого алгоритма встречается другое название - Proof-of-space.

Особенности:
Майнинг на жёстком диске отличается от PoW-алгоритма тем, что для добычи коинов не требуется покупать дорогие видеокарты или асики, блоки питания большой мощности и материнские платы с большим числом разъемов. Чтобы майнить подобным образом, необходимо иметь самый обычный ноутбук со скудными параметрами и встроенную видеокарту.

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

P.S. Первый раз эту концепцию озвучил еще в 2013 году польский эксперт Стефан Дзембовский. Уже 10 августа 2014 на форуме bitcointalk была представлена монета Burstcoin, которая первой начала использовать алгоритм PoC. Немного позже появились и другие криптовалюты на этом алгоритме. Самые знаменитые: SpaceMint и Chia.



5.Proof-of-Elapsed-Time (PoET)

Proof-of-Elapsed-Time (PoET) - в переводе "доказательство истекшего времени" – это алгоритм консенсуса, который используют в блокчейн-сетях для определения победителей блоков в децентрализованной сети.

PoET очень похож на всеми известный PoW, но потребляет в разы меньше электроэнергии. Оборудование нужно только для генерации блоков, которые создаются "случайным образом". А дальнейший функционал можно сравнить с лотереей, при которой каждый участник сети имеет шансы на победу. Вероятность выигрыша пропорциональна ресурсам, которые вложил кандидат. Ресурсами являются процессоры общего назначения с доверенной средой исполнения. За работу этого механизма отвечают специальные инструкции процессоров Intel Software Guard Extensions (SGX), которые предоставляют возможность приложению создавать анклавы — области в виртуальном адресном пространстве.

Как работает PoET
- Каждый узел, который работает в сети, должен выждать определенный отрезок назначенного времени;
- Все узлы блокчейна генерируют случайное время ожидания и переходят в спящий режим на указанный срок;
- Тот участник сети, который первым выждал свое назначенное время ("проснулся первым"), получает "счастливый билет" - право добыть новый блок;
- "Победитель" транслирует всю нужную информацию в сеть, после чего процесс повторяется.

Кто придумал и кто использует
Алгоритм Proof-of-Elapsed-Time был изобретен в 2016 года транснациональной корпорацией Intel. Компания создала собственный блокчейн под названием IntelLedger, а в качестве алгоритма консенсуса использовали PoET. На данный момент алгоритм присутствует только в одном из Hyperledger-продуктов. Но, по словам разработчиков, при необходимости механизм можно масштабировать до тысяч нод.



6.Proof-of-Contribution (PoCo)

Proof-of-Contribution (PoCo) - это алгоритм консенсуса, который основанный на вычислительной мощности.Его цель состоит в достижении доверия между разными агентами, в том числе между работниками и пользователями, с тем чтобы пользователи могли полагаться на результаты, рассчитанные внешним субъектом, стимулы которого в лучшем случае основываются на доходах.

Особенности:
- Каждое действие имеет порог доверия, который определяет минимальный уровень уверенности, необходимый для проверки результатов;
- Вклад каждого работника сети имеет определенный уровень доверия, который зависит от репутации и доли работника;
- Перед выполнением любых вычислительных действий каждый работник должны внести собственную долю (вклад, депозит);
- Работники выполняют вычисление и предоставляют хэш результата, который они вычислили;
- Репутация каждого работника постоянно корректируется;
- Когда несколько работников предоставляют идентичный результат, то их доверенность агрегируется для вычисления уверенности в результатах. Задача дублируется до тех пор, пока один из предложенных результатов не превысит доверительный порог. На данном этапе достигается консенсус по результатам применения: 1. Работники, которые вычислили ошибочный результат, потеряют свою долю; 2. Работники, рассчитавшие проверенный результат, будут совместно использовать вознаграждение, состоящее из платежей приложения и доли, потерянной работниками, опубликовавшими ошибочный результат.

Кто использует
Самым знаменитым проектом, который использует PoCo является iExec — децентрализованный проект облачных вычислений на основе блокчейна. Он использует идею грид-вычислений (Desktop Grid), также называемую "вычислениями на волонтерской основе" (Volunteer Computing). Эта форма распределенных вычислений означает сбор компьютерных ресурсов через интернет, которые мало используются, для их объединения в "виртуальный суперкомпьютер". Таким образом можно параллельно запускать очень большие приложения за долю от стоимости традиционного суперкомпьютера.



Pages:
Jump to: