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, который можно потратить двумя способами:
- Key path — обычная одиночная подпись (или агрегированная мультисиг через Шнорр).
- 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.