BFT
Класс алгоритмов консенсуса, выдерживающих сбои и злонамеренное поведение части участников сети. В TON BFT-семейство реализуется через протокол Catchain — pBFT-производный консенсус среди валидаторов.
Синонимы: byzantine fault tolerance, византийская отказоустойчивость, бфт
BFT (Byzantine Fault Tolerance, византийская отказоустойчивость) — свойство распределённой системы продолжать корректно работать, даже если часть её узлов выходит из строя или ведёт себя злонамеренно. Термин восходит к классической задаче «византийских генералов»: группа участников, среди которых могут быть предатели, должна согласовать общее решение, а оставшиеся честные участники — гарантированно прийти к одному и тому же ответу.
Зачем это блокчейну
Любая публичная сеть исходит из того, что среди валидаторов или майнеров есть недобросовестные. Задача консенсус-протокола — обеспечить, чтобы:
- Все честные узлы в итоге согласились на одну и ту же цепочку блоков.
- Атакующий не мог откатить уже подтверждённую транзакцию, не контролируя слишком большую долю сети.
- Система продолжала работать, даже если часть валидаторов офлайн или активно мешает.
Классический BFT-результат говорит: безопасность гарантирована, если злонамеренных узлов менее одной трети от общего числа.
BFT в TON: Catchain
Консенсус TON между валидаторами — это Catchain, протокол из семейства pBFT (Practical Byzantine Fault Tolerance), адаптированный под высокую производительность и шардовую архитектуру. На каждом раунде:
- Валидаторы делятся на группы по шардам.
- Внутри каждой группы выбирается лидер, который предлагает блок.
- Остальные валидаторы голосуют за блок; если набирается достаточная квалифицированная подпись (более двух третей), блок становится финальным.
- Параллельно мастерчейн агрегирует доказательства финальности из шардов.
Безопасность обеспечивается, пока менее одной трети валидаторов скомпрометированы. Стейк, который валидаторы блокируют для участия, делает атаку дорогой: при попытке двойной подписи блока их депозит сжигается (slashing).
BFT vs Nakamoto
Биткоин и ранний Ethereum используют так называемый Nakamoto-консенсус — вероятностный: блок становится «достаточно надёжным» после нескольких подтверждений, но строгого момента «теперь точно финален» нет. BFT-системы — другой класс: блок либо подписан квалифицированным большинством, либо нет; в первом случае откат невозможен без публичного нарушения протокола и потери стейка. TON, Cosmos, Tendermint, Polkadot принадлежат к BFT-лагерю.
Практические следствия
- Финальность. В BFT-блокчейнах подтверждение приходит за один блок, без необходимости ждать «6 confirmations».
- Отказоустойчивость. Сеть продолжает работать, пока менее трети валидаторов скомпрометированы или офлайн.
- Стимулы. Честное поведение поощряется наградой, а нечестное наказывается слэшингом стейка.
BFT — это не маркетинговое слово, а математически формализованная граница того, какую долю атакующих сеть может пережить без катастрофы.