Аннотация

Смешанное доказательство Merkle с разделением доменов объединило путь непотраченного выхода и путь защиты от повторного использования слота в одном отношении. Размер доказательства снизился с 29,69 до 23,75 КБ, но построение замедлилось с 2,68 до 4,50 секунды, а проверка — с 450,82 до 612,96 миллисекунды. После измерений объединённая конструкция была удалена.

Могут ли два отношения Merkle использовать одно доказательство?

State — аутентифицированный набор текущих непотраченных выходов транзакций (UTXO) и счётчиков консенсуса. Путь UTXO подтверждает наличие одного такого выхода в основном дереве State. Путь защиты от повторного использования подтверждал данные второго дерева: в исследованной конструкции оно не позволяло слишком рано занять недавно освобождённый физический слот. Оба пути относились к бинарным деревьям Merkle фиксированной глубины и проверялись при доказательстве точного перехода от одного корня State к следующему. Конструкция с раздельными доменными тегами объединила их в одну более крупную многолинейную трассу.

Гипотеза была простой: общая алгебра и одна оболочка доказательства должны сократить число байтов, существенно не изменив стоимость построения.

Измеренное сравнение

КонструкцияДоказательствоПостроениеПроверка
Два доказательства для отдельных доменов29,69 КБ2,68 с450,82 мс
Одно объединённое доказательство с доменными тегами23,75 КБ4,50 с612,96 мс

Объединение сократило объём на 20,0%, однако построение стало медленнее на 67,9%, а проверка — на 36,0%.

Почему меньшее доказательство оказалось медленнее

Объединённая конструкция создала одно более крупное многолинейное продолжение (MLE) — полиномиальное представление общей трассы над булевой областью. Работа sumcheck выросла вместе с областью, тогда как два независимых доказательства раньше выполнялись параллельно. Экономия байтов возникла благодаря общей оболочке; потеря времени — из-за отказа от разделения доменов и параллелизма.

Решение

После измерений объединённое отношение было удалено. Для доказательства точного State сохранены два специализированных доказательства Merkle.

Обобщаемый вывод

Размер доказательства сам по себе не определяет стоимость системы. Перед объединением отношений необходимо измерить размер увеличенного многолинейного продолжения, степень протокола sumcheck и потерю параллелизма. Для этой нагрузки сокращение сериализованного доказательства на 20% не оправдало увеличение времени доказывающей стороны на 68%.