Radix vs Hashgraph
Защо Gossip протокола на Radix e имал нужда от допълнителни механизми при изграждане на консенсус
-------------------------
fuserleer:
В момента много се говори за Hashgraph, но за съжаление, въз основа на оскъдната налична информация, изглежда лесно да се наруши консенсуса.
На първо място, Hashgraph е консенсусен алгоритъм, а няма архитектура на списъка с транзакции. Това е просто мащабируем хоризонтално DAG с протокола "Клюки за клюки" отгоре му.
Както и да е, просто теорията зад Hashgraph изглежда е, че възлите клюкарстват на други възли това, което са видели и кога. Изглежда страхотно на пръв поглед, но ако се вгледате по-дълбоко, има някои проблеми (подобно на това защо Iota се нуждае от този координатор в момента).
Обмислете този прост сценарий:
Има мрежа от 4 възли, A, B, C, D.
Възел (A) свидетелства за транзакция (X) и според описанието на консенсуса подбира възел, който е свързан на случаен принцип. Да приемем, че избира възел (B) и казва на възел (B) за транзакция (X).
В същото време, възел (D) свидетелства за транзакция (X '), която е в конфликт с транзакцията (X). Тъй като възел (D) все още не е наясно с транзакцията (X), той приема и избира възел (C), за да разкаже за транзакцията.
След това възел (B) избира един от своите възли на случаен принцип, възел (C) и им казва за транзакция (X). Но възел (C) отхвърля транзакцията (X) и информира възела (B) за транзакцията (X ').
Сега имаме задънена улица, възли (A, B) мислят, че транзакция (X) е на първо място, а възли (C, D) мислят, че Transaction (X ') е вече направена.
Когато гласуването се извърши възли (A, B) ще гласуват ДА за транзакция (X), а възли (C, D) ще гласуват ДА за транзакция (X ') ... отново задънена улица. Няма ясен механизъм, обяснен в статията за това как се решават подобни ситуации.
Понеже атакуващият, може да запази този нерешен казус дотогава, доколкото му харесва и да възпроизвежда толкова сделки, които отразяват клона на транзакция (Х '), както му трябва той задръства консенсуса.
Въпросът с алгоритмите за "гласуване" е, че ВИНАГИ можете да стигнете до ситуация, в която имате неразрешимо обвързване на транзакции. Ако няма резервни механизми за прекъсване на връзката, тогава консенсуса се проваля.
https://www.reddit.com/r/Radix/comments ... hashgraph/