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

Материал из BitcoinWiki
Это утверждённая версия страницы. Она же — наиболее свежая версия.
Перейти к: навигация, поиск

Доказательство активности с ограниченным доверием, Limited Confidence Proof-of-Activity (LCPoA) — метод защиты цепочки блоков в блокчейн системах, основанный на модификации алгоритма Proof-of-Work, в сторону уменьшения расхода вычислительных ресурсов - требуется подбор хеша блока, но в качестве дополнительного значения nonce использется текущая метка времени (unix timestamp) [1].

Общий принцип работы[править]

Proof-of-Activity[2][править]

В контексте описываемого алгоритма Proof of Activity  —  принцип, основанный на решении задачи, схожей с задачей принципа Proof of Work, но со значительно сниженной сложностью, благодаря которому решение задачи занимает от долей секунды до нескольких минут.

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

Несмотря на это, из-за особенностей работы алгоритма, злоумышленник может попытаться пересоздать часть или всю цепочку блоков с самого начала, и совершить атаку 51%, затратив при этом малое количество вычислительных ресурсов. Для предотвращения подобной ситуации, алгоритм дополняется алгоритмом "Ограничения доверия" (Limited Confidence).

Limited Confidence[3][править]

Алгоритм "Ограничения доверия", Limited Confidence —  представляет собой систему автоматического создания контрольных точек блокчейн цепи. В основе алгоритма лежит система, которая запрещает перезапись цепочки блоков, старше определенного заданного порога. Например, при установке порога в 5 минут, будет возможна перезапись блоков, не старше 4 минут 59 секунд.

Это позволяет предотвратить любую возможную атаку 51% на основную часть цепочки блоков, при этом используя заранее известное константное время для подтверждения добавления блока в сеть.

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

Похожие реализации контрольных точек блокчейн цепи реализованы в некоторых криптовалютах, например, Peercoin

Преимущества и недостатки[править]

Преимущества[править]

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

Недостатки[править]

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

Использование и авторство[править]

На текущий момент доказательство активности с ограниченным доверием используется только в блокчейн-платформе izzz.io[4] а также в продуктах, использующих платформу:

  1. BitCoen
  2. Buzcoin [5][6]
  3. Baikalika[7][8]
  4. NWP Solution[9][10]
  5. SBS Platform[11][12]

и другие.

Автором алгоритма является программист Андрей Недобыльский[13][14]

См. также на BitcoinWiki[править]


Примечания[править]

  1. LCPoA — универсальный как PoW, экономичный как PoS
  2. LCPoA
  3. LCPoA
  4. Шаблон:Cite web
  5. [BUZCOIN
  6. Buzar Whitepaper
  7. Why have we chosen izzz.io platform to run our own blockchain?
  8. | Izzzio - универсальная блокчейн платформа
  9. Status update 11.04.2018
  10. | Izzzio - универсальная блокчейн платформа
  11. SBS Platfor
  12. | Izzzio - универсальная блокчейн платформа
  13. LCPoA — универсальный как PoW, экономичный как PoS
  14. LCPoA