Delegated Byzantine Fault Tolerance (dBFT) - просто о главном

dBFT

Раскладываем полочки. Зрим корнем.

Что это блин такое?

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

Все не так уж и сложно. Есть два типа систем — централизованные и децентрализованные. До того как появился блокчейн, все делали централизованные системы. Например, Facebook. У них есть единственный центр управления — это их инженеры. Если у тебя будет не очень красивая фотка, то тебя заблокируют. Решение принимать будет сам Марк Цукерберг! Ну, то есть, он будет сам принимать решение — один. И ни с кем советоваться не будет. Так как Цукерберг.

А децентрализованные системы (криптовалюты и т.д.) — это такие же Facebook’и. Только у них нет Марка. Они состоят из тысяч нодов (узлы, на которых хранятся копии блокчейна). Ноды должны принимать решения, какие транзакции пропускать, а какие банить. В противном случае придет умный парень и напишет в системе, что ему только что перевели 1000 биткоинов. Все ноды сохранят в копии журнала…

Так вот, чтобы они принимали корректные решения, используются различные типы алгоритмов консенсуса (consensus algorithm). DBFT — один из них. Расшифровывается как Delegated Byzantine Fault Tolerance («делегированный византийский отказоустойчивый алгоритм»).

Здесь фишка в том, что все обычные держатели монет в экосистеме голосуют за делегатов. А уже делегаты смотрят на транзакции и принимают решение, блокировать или одобрять их. Делегатов всего может быть 10, 20, 30. А владельцев коинов может быть 10, 20, 30 миллионов.

А не опасно, что всего 20 делегатов в DBFT принимают решения?

Вот-вот. Криптовалюты — это децентрализованные системы. Но вот если у тебя в системе принимают решения всего 20 чувачков, то какая же это децентрализация?

Но разработки NEO, которые придумали DBFT, внедрили новый элемент системы — спикер (speaker). Теперь получается, что при любом сценарии злоумышленники-делегаты не могут ничего нахимичить, так как спикер впряжется и все разрулит. А вот если сам спикер начнет мутить что-то не то, то остальные делегаты не дадут ему ничего сделать.

Это самый оптимальный тип алгоритма консенсуса?

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

Единственное, что психологически, группка из 30 делегатов наверху — это очень напрягает. А так, на самом деле, здесь есть децентрализация и высокая скорость обработки транзакций. Именно это позволяет надеяться на отличную масштабируемость (scalability), без которой криптонише не видать как своих ушей повсеместного внедрения (adoption).

Очень рекомендую поближе познакомиться с различными типами этого алгоритма, включая PoW (работает на Bitcoin), PoS, DPoS. Это не просто познавательно, но также помогает лучше понять, как монеты устроены и как работает фундаментальный анализ на крипторынках.