
Порядок транзакций — это не техническая деталь
В классической литературе по распределённым системам консенсусный протокол должен обеспечивать два свойства: согласованность (все узлы приходят к одинаковому журналу транзакций) и живучесть (новые транзакции продолжают обрабатываться). Эти свойства не говорят ровно ничего о том, в каком порядке транзакции попадают в журнал.
Именно в этом пробеле живёт MEV — maximal extractable value. Валидатор, строитель блоков или sequencer в L2-сети контролирует порядок включения транзакций. Он может поставить свою транзакцию перед чужой, скопировав выгодную сделку (frontrunning), или вклиниться между двумя транзакциями пользователя (sandwiching). Это не баг конкретной реализации — это прямое следствие того, что ни один протокол не предписывает, как именно упорядочивать транзакции, которые прилетели почти одновременно.
Чтобы закрыть эту дыру, исследователи предложили третье консенсусное свойство — справедливость порядка транзакций (transaction order-fairness): протокол считается справедливым, если ни один участник не может систематически смещать порядок сверх того, что объективно диктуют сетевые условия. Но как только начинаешь формализовывать эту идею, натыкаешься на математическое препятствие.
Почему «первым пришёл» нельзя гарантировать
Самое сильное и естественное определение справедливости называется Receive-Order-Fairness (ROF): если большинство узлов получило транзакцию A раньше транзакции B, то A должна обрабатываться первой. Звучит неопровержимо.
Проблема в том, что в асинхронной сети не существует единого глобального момента «получения». Сообщения идут с разными задержками по разным маршрутам. Один узел видит A первой, другой — B. Уже из этого следует, что строгий ROF требовал бы мгновенной коммуникации всех узлов — условия, невозможного в реальных сетях.
Но есть и более глубокий барьер, пришедший из теории голосования.
Парадокс Кондорсе в распределённой сети
Парадокс Кондорсе описывает ситуацию, когда у каждого избирателя есть транзитивные предпочтения (A > B > C), но при агрегировании по парам большинство образует цикл. Перенесём это на сеть из трёх узлов и трёх транзакций:
- Большинство узлов видит A раньше B
- Большинство узлов видит B раньше C
- Большинство узлов видит C раньше A
Получается цикл A → B → C → A. Ни один линейный порядок не удовлетворяет всем трём большинствам одновременно. Это не артефакт плохого проектирования — это структурное следствие асинхронности и децентрализации. Теорема о невозможности ROF показывает: если внешняя сеть асинхронна или максимальная задержка достаточно велика, ни один протокол не может одновременно гарантировать согласованность, живучесть и строгий ROF.
Диаграмма ниже показывает, где именно ломается интуиция:
flowchart LR
A["Локальный порядок\nкаждого узла"] --> B["Агрегирование\nбольшинством"]
B --> C{"Цикл\nКондорсе?"}
C -- "Нет" --> D["Строгий ROF\nвыполним"]
C -- "Да" --> E["ROF невозможен:\nнет единого\nлинейного порядка"]
E --> F["Переход к\nослабленным\nгарантиям"]
F --> G["DAG + медианные\nметки (Hashgraph)"]
F --> H["Batch-order\nfairness (Aequitas,\nThemis)"]
Здесь заканчивается математика — и начинается выбор между осмысленными компромиссами.
Два разных ответа на одну и ту же невозможность
Раз идеальная справедливость недостижима, разные протоколы по-своему ослабляют требования. Два наиболее проработанных подхода идут принципиально разными путями.
Hashgraph: причинный граф и медианные метки
Hedera использует алгоритм hashgraph — бесшнуровой консенсус на основе направленного ациклического графа (DAG). Каждый узел упаковывает полученные транзакции в «события» и обменивается ими по принципу gossip. Каждое новое событие содержит хэши ранее виденных событий и цифровую подпись — это создаёт криптографически верифицируемую причинно-следственную цепочку. Если событие A является предком события B в DAG, то протокол гарантирует: A было создано раньше B, и подделать это невозможно без нарушения консистентности графа.
Для транзакций, связанных причинностью, порядок определяется автоматически. Для параллельных событий (без общего предка) используется механизм «раундов получения»: событие относится к раунду, в котором супербольшинство (более двух третей) узлов смогло «сильно увидеть» его через структуру DAG. Транзакции более ранних раундов идут первыми.
Когда два события попадают в один раунд, их относительный порядок определяется через медианную временную метку: каждый узел фиксирует локальное время первого получения события, а консенсусная метка — медиана всех таких значений. При честном большинстве (менее трети Byzantine-узлов) медиана попадает на честное значение или между двумя честными значениями, что ограничивает, насколько сильно злоумышленники могут сдвинуть итоговое время.
Однако здесь есть важная оговорка, которую стоит сформулировать прямо: источники расходятся в оценке надёжности этого механизма. Одна точка зрения трактует медианное timestamping как ограниченную, но принципиально обоснованную эвристику — злоумышленник не может произвольно изменить порядок, а лишь смещает медиану в пределах допустимого диапазона. Другой анализ указывает на более серьёзную уязвимость: в некоторых конфигурациях даже один недобросовестный узел способен инвертировать порядок двух транзакций, если он стратегически выставляет свои метки. Это делает медианный подход скорее релаксацией fairness, чем криптографически строгой гарантией — особенно в пограничных сетевых условиях.
Дополнительный нюанс: DAG не контролирует, когда узел решает оповестить других об событии. Стратегическое затягивание gossip-распространения может формировать паттерны первого получения до того, как они зафиксируются в графе — не нарушая причинности, но влияя на медианы.
Aequitas и Themis: групповая справедливость вместо строчной
Протоколы семейства BOF (Block-Order-Fairness) идут от другой точки. Формально: если γ-доля узлов наблюдала транзакцию tx раньше tx′, то честный узел не должен выводить tx′ в блоке раньше tx. Ключевое смягчение — «раньше или одновременно»: транзакции могут оказаться в одном блоке.
Это именно та ослабленная версия, которая обходит парадокс Кондорсе: вместо того чтобы найти невозможный линейный порядок для цикла A→B→C→A, протокол помещает все три транзакции в один блок. Порядок внутри блока определяется детерминированным правилом (например, хэш-функцией). Таким образом, ни одна транзакция цикла не оказывается несправедливо опережённой — они просто объявляются «одновременными» для целей справедливости.
Aequitas реализовал этот принцип через три фазы: gossip (FIFO-рассылка локальных порядков), agreement (Byzantine-согласование набора порядков) и finalization (построение графа зависимостей, схлопывание циклов в strongly connected components). Проблема: Aequitas страдает слабой живучестью. Протокол обязан дождаться завершения полного цикла Кондорсе перед финализацией блока — а циклы могут нанизываться друг на друга бесконечно, задерживая доставку транзакций на неопределённое время.
Themis сохраняет то же свойство γ-BOF, но решает проблему живучести через deferred ordering и batch unspooling: незавершённые SCC выводятся инкрементально, а их внутренний порядок дофиксируется следующим честным предлагающим на основе верифицируемых отношений зависимостей, а не его личного усмотрения. Это обновляет слабую живучесть Aequitas до стандартной и добавляет гарантию финализации в пределах ограниченной задержки. Оптимизированная версия SNARK-Themis заменяет прямой обмен сообщениями между всеми парами участников на сжатые криптографические доказательства, снижая коммуникационную сложность с квадратичной до линейной.
Сравнение подходов
| Протокол | Тип гарантии | Механизм упорядочивания | Сильная сторона | Ключевое ограничение |
|---|---|---|---|---|
| Hashgraph (Hedera) | Приближение к ROF через медианы | DAG + причинность + медианная метка | Нет единого лидера; причинный порядок криптографически закреплён | Медианы уязвимы к стратегическому gossip-поведению; степень защиты от манипуляций не доказана криптографически |
| Aequitas | γ-Block-Order-Fairness | Gossip + Set-BA + SCC-схлопывание | Формально доказанная BOF; первый протокол с order-fairness | Слабая живучесть; высокая коммуникационная сложность; риск «заморозки» при длинных циклах |
| Themis / SNARK-Themis | γ-Block-Order-Fairness + стандартная живучесть | Deferred ordering + SCC + SNARK-доказательства | Устраняет слабую живучесть Aequitas; масштабируется линейно | Высокая протокольная сложность; преимущественно исследовательский контекст |
Что это значит за пределами «криптотемы»
История с fairness-консенсусом — это не узкоспециализированный технический спор. Это иллюстрация более широкого принципа: инфраструктура определяет цену, скорость и предсказуемость исполнения. На традиционных финансовых рынках аналогичные вопросы решаются через централизованный матчинг с атомарными временными метками сервера и строгими правилами приоритета. Это работает — ценой доверия к единому оператору и его регулятора.
В открытой децентрализованной сети этого оператора нет. Значит, либо смиряются с тем, что порядок транзакций частично определяется теми, кто строит блоки (и тогда MEV — легитимная часть дохода валидаторов), либо встраивают fairness прямо в протокол, принимая один из описанных компромиссов. Каждый выбор имеет экономические последствия: для пользователей DeFi, для разработчиков L2-sequencer’ов, для проектировщиков модульных блокчейн-стеков.
Важно понимать масштаб нерешённых вопросов. Ни один из рассмотренных протоколов не является принятым индустриальным стандартом: Aequitas и Themis остаются преимущественно исследовательскими конструкциями, а Hedera — коммерческой реализацией с собственным permissioned-набором валидаторов, что само по себе меняет модель угроз. Сопоставимых численных метрик по задержке, пропускной способности и стоимости для всех трёх подходов в одинаковых условиях в открытом доступе нет.
Справедливость — это выбор компромисса, а не бинарное свойство
Главный вывод из теоремы о невозможности ROF и парадокса Кондорсе состоит не в том, что блокчейны «несправедливы по природе». Он состоит в том, что справедливость порядка транзакций — не бинарное свойство, которым протокол либо обладает, либо нет, а спектр осмысленных ослаблений, каждое из которых что-то гарантирует и от чего-то отказывается.
Hashgraph выбирает сохранение причинного порядка через криптографически связанный DAG и агрегирование времени через медианы — принося в жертву строгую защиту от стратегического gossip-поведения. Aequitas и Themis выбирают формально доказуемую BOF, схлопывая конфликтующие транзакции в батчи, — принося в жертву простоту и увеличивая протокольную сложность.
Для читателя, следящего за развитием блокчейн-инфраструктуры, это означает следующее: когда следующий протокол или L2-решение заявит о «честном порядке транзакций», правильный вопрос — не «честно или нет?», а «какой именно компромисс они выбрали, от чего отказались и при каких условиях их гарантии перестают работать?». Математика здесь не оставляет выбора между идеалом и реальностью — она лишь определяет, какая реальность достижима.
Материал носит образовательный характер и не является инвестиционной рекомендацией. Исторические и теоретические свойства протоколов не следует воспринимать как гарантию будущего поведения рынка или сети.


