Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
izzzio
6 лет назад

LCPoA - универсальный как PoW, экономичный как PoS

Всем привет! Рады с вами познакомится, и стать частью потрясающей блог платформы GOLOS.

Мы - команда разработки блокчейн платформы IZZZIO (читается как "иззио"). На текущий момент мы активно разрабатываем приватные и ограниченные блокчейн-решения под задачи заказчиков, и работаем по классической модели заказ-проектирование-разработка.

Мы бы не хотели начинать наше знакомство с рекламных постов, поэтому их не будет. Сегодня мы хотим подробнее рассказать об одной из наших технологий - алгоритме консенсуса, который мы называем LCPoA.


LCPoA (Limited Confidence Proof of Activity, рус. Доказательство активности с ограниченным доверием) - гибридный алгоритм консенсуса сети блокчейн, состоящий из двух технических элементов:

  1. Proof of Activity - принцип, основанный на решении задачи, схожей с задачей принципа Proof of Work, но со значительно сниженной сложностью, благодаря которому решение задачи занимает от долей секунды до нескольких минут
  2. Limited Confidence(“Ограничение доверия”) - система автоматического создания “контрольных точек” в блокчейн сети

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


Для этой задачи мы разработали алгоритм LCPoA. Он прост в имплементации, и в работе. Ему требуется минимальное количество вычислительных ресурсов, а в качестве защиты он использует синхронизированный по всему миру ресурс - время.Создание блоков в сети теперь привязывается к известной всем компьютерам (с определенной погрешностью) величине - текущему времени по гринвичу. Это позволило:

  • Уравнять шансы компьютеров любой мощности на создание блока. Теперь самый мощный сервер, и обычный смартфон создают блок за одинаковое время
  • Перенести ответственность за генерацию блоков на клиента сети. Отпадает необходимость в майнерах, открывая путь другим способам поддержки сети.
  • Надежно защитить сеть от спама и атак, на подобии 51%. Алгоритм уже содержит в себе всё необходимое для защиты от атак.

В основе алгоритма лежит схожая с PoW задача: подбор хеша блока, путём перебора дополнительного значения nonce в блоке. В качестве nonce, мы используем текущую метку времени (unix timestamp) - количество миллисекунд, прошедших с начала 1 января 1970 года. Такой метод позволяет легко перепроверять информацию о том, сколько времени было потрачено на создание блока. В связке с ограничением добавления блоков младше, например, одной секунды, это обеспечивает одновременно простую для решения на любом устройстве, но достаточно продолжительную для защиты сети задачу.

В качестве защиты от атаки 51%, и других атак, позволяющих перезаписывать цепочку, мы использовали простой алгоритм, который позволяет создавать “контрольные точки”, или “точки невозврата” в сети. Этот алгоритм, по факту, запрещает перезапись блоков цепи, которые старше определенного заданного возраста. Например, при заданном пороге - 5 минут, будет возможна перезапись блоков, появившихся не позднее 4 минут 59 секунд. Остальные блоки проходят “архивацию”, и делают попытки перезаписи всей цепочки - невозможными.


Подобный способ защиты от атак 51% мы также применяем и для любых других алгоритмах консенсуса в сети.


Подробнее с LCPoA можно ознакомится в документе с описанием алгоритма https://docs.google.com/document/d/1KHeG4iUZFk2fj32-4kVnbx_3KsIQqM_xDMpzlctGRSc/edit?usp=sharing

а также на нашем сайте

izzz.io


Надеемся, что эта публикация оказалась интересна сообществу. Будем рады ответить на ваши вопросы :)
 

3
0.000 GOLOS
На Golos с June 2018
Комментарии (3)
Сортировать по:
Сначала старые