После взлома Bitfinex стало очевидно, что люди действительно не понимают, как работает такая особенность биткоина, как мультиподпись. Есть много непонимания того, что такое мультиподпись и что она может или не может делать. Эта статья стремится разъяснить, какие есть устоявшиеся неправильные представления, чтобы вы поняли, как мультиподпись работает на самом деле. Также вы узнаете, почему правила не являются заменой комплексных мер безопасности, и что вы самостоятельно можете сделать, чтобы защитить себя.
Мультиподпись это инструмент
Так же, как и любой другой инструмент, мультиподпись может использоваться для достижения различных результатов. Среди её применений: распределение и нейтрализация риска компроментации или потери ключей, создание резервной копии и общего счета, которым может пользоваться несколько сторон (а также для распределения зарплаты в организации).
Мультиподпись это не план по безопасности. Она может быть мощным компонентом хорошо разработанного плана по безопасности, только не сам план. Просто говоря“мультиподпись”, не рассматривая её конкретное применение, как имено она используется и каких целей мы пытаемся при этом достичь, мы не говорим ничего.
В ней нет «волшебной таблетки» для безопасности, но многие задачи безопасности с ней становятся проще. Для того, чтобы понять, что она может и что не может делать, нам нужно понять немного больше о том, как она работает. Вы не должны думать, что эта статья для технических специалистов — она написана для кого угодно, только не для них.
Создайте адрес с мультиподписью. Чтобы создать такой адрес, вам пртосто потребуется более одного открытого ключа. Давайте рассмотрим пример. Алиса, Боб и Чарли организовали встречу сторонников биткоина и открыли сбор средств для этой затеи. Но они хотят, чтобы один человек не мог распоряжаться всеми деньгами. Поэтому Алиса, Боб и Чарли делают адрес с мультиподписью, использовав программное обеспечение от CoPay. Оно позволяет выбрать такую конфигурацию, когда нужно две из трёх подписей, чтобы подписать транзакцию и сделать её действительной. В этом случае возможны такие комбинации пользователей — A&B, B&C, A&C.
Что в это время происходит за кулисами сделки? Их программное обеспечение делает две вещи: запускается скрипт с инструкциями, в которых написано, сколько подписей требуется, какие общие ключи соответствуют приватным ключам, имеющим полномочии ставить подпись (m-of-n), и берет хэш биткоин-адреса, связанного со скриптом. Скрипт также часто называют “скриптом выплаты”, поскольку он содержит требования к транзакции, позволяющей перевести средства с кошелька с мультиподписью.
Вы можете думать о скрипте выплаты как о наборе постоянных, неизменных правил управления доступом. Они ограничивают доступ на уровне адреса биткоина. Это значит, что при пересылке средств на некий адрес скрипт должен проверить соответствие правилам: можно ли совершить транзакцию. Правила создаются при создании биткоин адреса и никогда не могут быть изменены. В буквальном смысле слова, правила являются частью самого адреса. Это одно из самых сильных преимуществ мультиподписи. Из-за этой особенности многие полагают, что она более безопасна, чем обычная подпись, встроенная в любой биткоин кошелек. Когда мультиподпись испольуется как часть целостного плана безопасности, она может обеспечить дополнительную защиту от растрат, ошибок, потерь, мошенничества, отказа точки доступа, так как требует участия нескольких сторон или использования нескольких устройств для подтверждения транзакции.
Но заметим, что она не может делать
Вы не можете установить лимит на трату средств; всё, что есть на счету, можно вывести одной, правильно подписанной транзакцией.
Она не имеет временных ограничений; как только транзакция подписана, она позволяет немедленно вывести все средства.
У неё нет дневного лимита на количество транзакций: вы можете создавать тысячи транзакций в минуту.
У неё нет уведомлений; вы не получаете смс или электронной почты, когда состояние счета изменилось.
Средства управления доступом не входят в понятие мультиподписи. На этом этапе у вас могут возникнуть сложности с выбором, так как многие поставщики кошельков для биткоина предлагают мультиподписи и другие дополнительные услуги. Они рекламируют дополнительные услуги как средства безопасности и управления. Но вам нужно учесть, что это услуги, которые предоставляет ПО компании, а не протокол биткоина. Это важно, поскольку значит, что контроль может быть обойден, лимиты могут измениться. В то же время скриптовый язык Биткоина продолжает развиваться, и некоторые новые функции, такие, как блокировка транзакции по времени, уже реализованы. Однако они пока не получили широкого распространения.