Какая необходимость в динамическом консенсусе в проектах Hyperledger

Я читал, что пила Hyperledger поддерживает динамический консенсус, что означает, что алгоритм консенсуса может быть изменен динамически. У меня вопрос: в чем необходимость или когда необходимо динамически менять консенсус? Что заставляет нас динамически менять консенсус?

Я прочитал документацию по Fabric и Sawtooth. Не удалось найти необходимость в динамическом консенсусе


person Srinivas Tata    schedule 29.01.2019    source источник


Ответы (1)


Ничто не заставляет любой блокчейн изменять консенсус - вы можете сохранить тот же алгоритм консенсуса навсегда.

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

Некоторые консенсусные алгоритмы являются BFT, Byzantine Fault Tolerant, что означает, что они противостоят плохим или злонамеренным участникам (узлам). Другие алгоритмы - это просто CFT, Crash Fault Tolerant, что означает, что они могут противостоять сбоям узла, но не плохим игрокам. Поэтому можно отказаться от алгоритмов, дружественных к BFT (например, PoET SGX).

Между прочим, Hyperledger Sawtooth поддерживает консенсус PoET, RAFT и DevMode. Последний предназначен только для экспериментального и тестового использования, а не для производства. Скоро будет добавлен консенсус PBFT. Подробнее о консенсусе Sawtooth см. https://github.com/danintel/sawtooth-faq/blob/master/consensus.rst

person Dan Anderson    schedule 29.01.2019