Мультиподписная транзакция¶
Мультиподписная транзакция (мультисиг-транзакция, от англ. multisignature transaction) — это вид криптовалютной транзакции, для подтверждения которой требуется подпись более чем одного участника (ключа). Данный механизм реализуется через создание мультиподписного адреса (мультисиг-адреса), который привязан к нескольким приватным ключам и имеет заданный порог (M-of-N), где M — минимальное количество подписей, необходимое для траты средств, а N — общее количество ключей, связанных с адресом. Мультиподписные транзакции используются для повышения безопасности хранения цифровых активов, распределения контроля и реализации схем корпоративного управления в децентрализованных системах.
¶История
Концепция мультиподписных транзакций возникла как ответ на уязвимости, связанные с единой точкой отказа при хранении криптовалют. В 2011 году разработчики Bitcoin Core предложили стандарт P2SH (Pay-to-Script-Hash), который был реализован в протоколе Биткойна в 2012 году (BIP 16). P2SH позволил создавать мультиподписные адреса, где в транзакции указывается хеш скрипта, а не сам скрипт, что упростило их использование.
Первые коммерческие реализации мультисиг-кошельков появились в 2013 году: сервисы BitGo, GreenAddress и Electrum предоставили пользователям возможность создавать адреса с порогом 2-of-3. В 2014 году биржа Mt.Gox, потерявшая 850 000 биткойнов из-за взлома, подверглась критике за отсутствие мультиподписной защиты. Это стимулировало внедрение технологии среди крупных держателей криптовалют.
В 2015 году в сети Эфириума появилась поддержка мультиподписных контрактов через смарт-контракты, что расширило возможности: пороги и участники могут изменяться программно. К 2020-м годам мультиподписные транзакции стали стандартом для кастодиальных сервисов, децентрализованных автономных организаций (DAO) и криптовалютных бирж.
¶Принцип работы
Мультиподписная транзакция основана на криптографических пороговых схемах. Наиболее распространённая реализация — схема M-of-N, где из N ключей (например, 3) требуется M подписей (например, 2) для траты средств. При создании мультиподписного адреса генерируется скрипт, который проверяет, что количество действительных подписей достигает порога.
Процесс транзакции включает три этапа:
- Создание адреса: участники генерируют N приватных ключей и соответствующих им публичных ключей. Из публичных ключей формируется скрипт (например,
OP_2 <pubkey1> <pubkey2> <pubkey3> OP_3 OP_CHECKMULTISIGдля схемы 2-of-3), хеш которого становится мультиподписным адресом. - Подписание: для отправки средств инициатор создаёт транзакцию и передаёт её участникам. Каждый участник подписывает транзакцию своим приватным ключом. После сбора M подписей транзакция считается готовой.
- Верификация: майнеры или валидаторы сети проверяют, что количество подписей соответствует порогу, и что все подписи действительны для соответствующих публичных ключей. Если условие выполнено, транзакция включается в блокчейн.
В сетях на основе смарт-контрактов (например, Ethereum) мультиподписные транзакции реализуются через контракты, которые хранят список участников и порог. Подписание происходит вне сети (off-chain) с помощью криптографических подписей, а затем одна транзакция отправляется в блокчейн с результатами голосования.
¶Классификация
Мультиподписные транзакции классифицируются по нескольким признакам:
¶По пороговой схеме
- 2-of-3: наиболее распространённая схема, где два из трёх ключей необходимы для траты. Используется для личного хранения: один ключ у пользователя, второй — у доверенного сервиса, третий — резервный.
- 3-of-5: применяется в корпоративных казначействах и DAO для распределения контроля между несколькими участниками.
- M-of-N: обобщённая схема, где M может быть от 2 до N-1. Чем выше M, тем выше безопасность, но ниже удобство.
- N-of-N: требуется подпись всех участников. Используется в совместных счетах (например, семейных кошельках).
¶По реализации
- На уровне блокчейна (P2SH): скрипт проверки встроен в протокол. Характерно для Bitcoin и его форков.
- Через смарт-контракты: гибкие реализации, позволяющие менять порог, добавлять или удалять участников. Характерно для Ethereum, Solana и других платформ с поддержкой смарт-контрактов.
- Гибридные: сочетание офчейн-подписания и ончейн-верификации, например, через мультиподписные кошельки с использованием протоколов типа ECDSA или BLS.
¶По уровню контроля
- Кастодиальные: один из ключей хранится у третьей стороны (например, биржи или кастодиана). Пользователь сохраняет частичный контроль, но сервис может заблокировать средства в случае подозрительной активности.
- Некастодиальные: все ключи находятся под контролем пользователей. Третьи стороны не имеют доступа к средствам.
¶Применение
Мультиподписные транзакции находят широкое применение в различных сферах криптовалютной экосистемы:
¶Хранение криптовалют
Используются для защиты крупных сумм от кражи или потери. Например, схема 2-of-3 позволяет хранить один ключ на мобильном устройстве, второй — на аппаратном кошельке, третий — в банковской ячейке. При потере одного ключа средства остаются доступными.
¶Корпоративные казначейства
Компании и фонды используют мультиподписные адреса для управления корпоративными средствами. Транзакции требуют одобрения нескольких руководителей (например, финансового директора и генерального директора), что предотвращает несанкционированные траты.
¶Децентрализованные автономные организации (DAO)
DAO управляют средствами через мультиподписные кошельки, где решения о расходах принимаются голосованием участников. Например, популярный инструмент Gnosis Safe (ныне Safe) позволяет создавать мультисиг-кошельки с порогом, задаваемым через смарт-контракты. В России использование DAO не регулируется специально, но подпадает под общие нормы о цифровых финансовых активах (ФЗ-259).
¶Биржи и торговые платформы
Криптовалютные биржи используют мультиподписные транзакции для хранения средств клиентов в холодных кошельках. Это снижает риск взлома: злоумышленник должен получить доступ к нескольким ключам, хранящимся на разных серверах.
¶Управление наследством
Мультиподписные схемы позволяют настроить передачу активов наследникам. Например, схема 2-of-3 с участием нотариуса или доверенного лица гарантирует, что средства будут доступны только при согласии нескольких сторон.
¶Кросс-чейн операции
В мостах между блокчейнами (bridge) мультиподписные транзакции используются для подтверждения валидности транзакций на одной сети перед выпуском активов на другой. Обычно применяются схемы с участием валидаторов.
¶Преимущества и недостатки
¶Преимущества
- Повышенная безопасность: злоумышленник должен скомпрометировать несколько ключей, что сложнее, чем один.
- Распределённый контроль: средства не контролируются одним лицом, снижая риск мошенничества или ошибки.
- Резервирование: потеря одного ключа не приводит к безвозвратной потере средств, если порог M меньше N.
- Прозрачность: все транзакции записываются в блокчейн, что позволяет аудировать движение средств.
¶Недостатки
- Сложность использования: требуется координация между участниками для подписания транзакций, что замедляет процесс.
- Зависимость от участников: если один из участников теряет ключ или отказывается сотрудничать, средства могут стать недоступными (если порог не достигается).
- Более высокие комиссии: мультиподписные транзакции занимают больше места в блоке (из-за нескольких подписей), что увеличивает сетевые сборы.
- Уязвимости смарт-контрактов: в реализациях через смарт-контракты возможны ошибки в коде, приводящие к потере средств (например, взлом DAO в 2016 году).
¶Примеры реализации
¶Bitcoin
В сети Bitcoin мультиподписные транзакции реализованы через стандарт P2SH. Адрес начинается с префикса 3 (в отличие от обычного 1). Популярные кошельки: Electrum, Armory, BitGo.
¶Ethereum
В Ethereum используются смарт-контракты, такие как Gnosis Safe (ныне Safe). Контракт хранит список владельцев и порог. Транзакция подписывается офчейн, а затем отправляется в блокчейн через метод execTransaction. Safe поддерживает схемы от 1-of-1 до N-of-N.
¶Solana
В Solana мультиподписные транзакции реализуются через счётчики (accounts) и программу spl-token. Для траты токенов требуется подпись нескольких владельцев счёта.
¶TON
В сети TON (The Open Network) мультиподписные транзакции поддерживаются через смарт-контракты, такие как MultisigWallet. Контракт позволяет задавать до 32 владельцев и порог от 1 до 32. Широко используется в экосистеме TON для управления кошельками.
¶Критика
Мультиподписные транзакции критикуются за компромисс между безопасностью и удобством. Схемы с высоким порогом (например, 5-of-5) делают средства практически недоступными при потере одного ключа. Кроме того, централизованные кастодиальные решения (где один ключ у сервиса) могут быть уязвимы для атак на серверы провайдера.
В контексте регулирования в России мультиподписные транзакции не запрещены, но их использование в операциях с криптовалютами подпадает под общие ограничения: с 2021 года расчёты в криптовалюте на территории РФ запрещены (ФЗ-259), а майнинг и хранение регулируются. Мультиподписные кошельки могут использоваться для легального хранения цифровых финансовых активов (ЦФА), выпущенных в соответствии с российским законодательством.
¶Источники
- Bitcoin Improvement Proposal 16 (BIP 16) — Pay-to-Script-Hash, 2012.
- Nakamoto S. Bitcoin: A Peer-to-Peer Electronic Cash System, 2008.
- Antonopoulos A. M. Mastering Bitcoin: Unlocking Digital Cryptocurrencies, 2nd Edition, O'Reilly Media, 2017.
- Документация Gnosis Safe (Safe), 2023.
- Федеральный закон «О цифровых финансовых активах, цифровой валюте и о внесении изменений в отдельные законодательные акты Российской Федерации» от 31.07.2020 № 259-ФЗ.
- Статья «Multisignature Transactions» в Bitcoin Wiki, 2023.
