Taproot — обновление протокола Биткоин, активированное 14 ноября 2021 года на высотеблока 709 632. Оно объединяет три BIP (340, 341, 342) и вводит подписи Шнорра, новый тип адресов P2TR и обновлённый язык скриптов Tapscript. Это крупнейшее обновление Биткоина со времён SegWit.

Обзор: Taproot на 21ideas.

Три составляющих обновления

BIP 340 — Подписи Шнорра (Schnorr Signatures)

До Taproot Биткоин использовал алгоритм подписи ECDSA. Taproot вводит более эффективный алгоритм — подписи Шнорра.

Преимущества:

  • Меньше данных: публичный ключ Шнорра — 32 байта (против 33 у ECDSA), подпись — 65 байт (против 71–72 у ECDSA). Меньший размер = меньшая комиссия.
  • Агрегация ключей: несколько подписей (мультисиг, пороговые схемы) можно объединить в одну подпись. Транзакция 2-из-3 мультисиг выглядит как обычная одиночная подпись.
  • Лучшая защита: теоретически более надёжный алгоритм, чем ECDSA.

BIP 341 — Taproot и MAST

Taproot определяет новый тип вывода — Pay-to-Taproot (P2TR). Биткоин блокируется на агрегированном ключе Q, который можно потратить двумя способами:

  1. Key path — обычная одиночная подпись (или агрегированная мультисиг через Шнорр).
  2. Script path — один из множества скриптов в дереве Меркла (MAST).

MAST (Merkelized Alternative Script Trees) позволяет записать в транзакцию только тот скрипт, который был фактически использован, не раскрывая остальных условий. Это критично для приватности сложных контрактов.

Итог: любая Taproot-транзакция выглядит в блокчейне одинаково — как обычный платёж на публичный ключ. Нельзя внешне отличить одиночный платёж от мультисиг, от сложного смарт-контракта или от Лайтнинг-канала.

BIP 342 — Tapscript

Обновлённый язык скриптов для P2TR-транзакций. Tapscript заменяет ряд старых опкодов и добавляет новые, обеспечивая гибкость для будущих улучшений.

Преимущества Taproot

Приватность

Наиболее значимое улучшение. До Taproot сложные контракты (мультиподпись, Лайтнинг-каналы, HTLC) отличались в блокчейне от обычных транзакций — по размеру и структуре. Это позволяло аналитикам делать выводы о характере транзакций.

После Taproot все транзакции выглядят одинаково, если использован key path. Это ломает большинство эвристик блокчейн-аналитики.

Снижение комиссий

  • Подписи Шнорра компактнее ECDSA.
  • Мультиподпись не увеличивает размер транзакции (агрегация ключей).
  • Сложные контракты занимают меньше места.

Расширенные возможности смарт-контрактов

MAST позволяет создавать контракты с множеством условных сценариев, раскрывая только реально использованный. Это открывает путь к более сложным приложениям поверх Биткоина.

Улучшения для Lightning Network

Taproot упрощает структуру Лайтнинг-каналов, снижает комиссии при открытии и закрытии каналов и улучшает их приватность.

Новый тип адреса: P2TR (bech32m)

Адреса Taproot начинаются с bc1p (формат bech32m). Пример:

bc1p5d7rjq7g6rdk2yhzks9smlaqtedr4dekq08ge8ztwac72sfr9rusxg3297

Это отличает их от SegWit-адресов P2WPKH (bc1q...). Форматы собраны на странице типы биткоин-адресов.

Активация

Taproot активировался через Speedy Trial — механизм, при котором майнеры сигнализируют поддержку в заголовках блоков. Когда 90% блоков в окне из 2016 блоков включили сигнал поддержки — обновление было «заблокировано» и активировалось на блоке 709 632.

Источники

Дополнительные материалы