Осознание собственной смертности является признаком зрелости, как и признание критической важности обеспечения безопасности своих биткойнов. В разгар бычьего ралли в 2017 г. я наткнулся на довольно отрезвляющий пост. Выглядело это примерно так: молодой человек давным-давно приобрёл около 20 BTC. Когда в течение 2017 г. цена выросла с $1000 почти до $20 000, он почувствовал себя богаче даже сверх своих самых смелых мечтаний и решил немного попутешествовать. И вот, однажды в Мексике, он веселился в хорошем отеле у бассейна на крыше. Но, в какой-то момент всё вышло из-под контроля, он упал на улицу вниз и погиб. Автор поста был другом семьи этого человека и хотел выяснить, есть ли какой-либо способ получить доступ к его биткойнам. Однако, молодой человек использовал Трезор, защищённый паролем, и нигде не записал пароль. Таким образом, биткойны были потеряны вместе с жизнью этого человека.
Биткойн – это инструмент на предъявителя, а это означает, что вашим близким недостаточно просто знать о наличии ваших средств, поэтому они должны иметь прямой доступ к ключам. С другой стороны, возможно, вы не желаете, чтобы ваша семья имела доступ к вашим биткойнам, пока вы ещё живы. Таким образом, должен быть какой-то план резервного копирования, позволяющий управлять правами доступа. Резервное копирование по принципу Шамира предлагает именно подобный вариант.
Но, прежде чем мы перейдем к деталям того, как работает резервное копирование Шамира, давайте кратко расскажем о том, что такое бэкап в виде seed-фразы.
Seed-фраза как бэкап
Ранее, было непросто правильно создавать резервные копии. До изобретения детерминированных кошельков необходимо было создавать резервные копии всех отдельных закрытых ключей, а это могли быть сотни ключей. Неудивительно, что многие биткойны были потеряны из-за этого неуклюжего процесса резервного копирования.
Но, в 2012 г. Питер Вул придумал хитроумное изобретение в виде иерархических детерминированных кошельков (HD-кошельки с обновлением BIP32), что значительно упростило процесс резервного копирования. Теперь пользователям приходилось защищать только один т.н. master seed (мастер-ключ), из которого затем генерировались отдельные закрытые ключи.
[Прим.переводчика. Предложение по улучшению Биткойн (BIP) – это официальное предложение изменить Биткойн. Биткойн, как часть программного обеспечения, постоянно обновляется: необходимо исправлять ошибки, повышать эффективность алгоритмов, упрощать код, поддерживать совместимость с другим программным обеспечением и добавлять новые функции]
Год спустя обновление BIP39 стандартизировало мнемоническую seed-фразу – группу слов в определённом порядке, которые выполняют роль резервной копии для HD-кошелька. С мнемонической фразой резервное копирование стало намного проще, так как при записи обычных слов остается меньше шанса на ошибки по сравнению с записью строки из случайного набора букв и цифр.
Таким образом, в настоящее время вы фактически не создаете резервную копию своего закрытого ключа как такового, а скорее исходного кода для его восстановления – обычно в виде 12 или 24 слов в определённом порядке.
Вы можете потерять свой телефон или сломать свой аппаратный кошелек, но, вы всё равно сможете получить доступ к своим биткойнам, если у вас есть надёжно сохранённая резервная фраза для восстановления [далее по тексту – сид].
Безопасное хранение сида для восстановления – это довольно сложная задача. Мы должны защитить его от следующих двух рисков:
Проблема в том, что, в то время, как риск кражи требует как можно меньшего количества копий (предпочтительно только одну, которая хранится дома) – риск потери требует обратного. Наличие всего одной копии вашего сида буквально означает игру с огнём. Таким образом, вам нужно иметь несколько копий во множестве физических мест, но, вы должны быть уверены, что они не будут использованы не по назначению, даже если их найдёт незнакомец. Поэтому, примитивный сид, состоящий всего из одного слова, не может соответствовать этим критериям.
Использование секрета Шамира
Секрет Шамира (SSS) – это криптографический метод, разработанный в 1979 году израильским криптографом Ади Шамиром. Суть схемы Шамира заключается в возможности создавать резервные копии, делиться и восстанавливать секрет путём его разделения на несколько частей, которые по отдельности бесполезны и не содержат никакой информации о секрете или схеме в целом.
Есть два важных параметра, относящихся к SSS: общее количество частей секрета, а также пороговое значение или количество частей, которые нам нужно объединить, чтобы восстановить секрет.
Например, «Резервная копия Шамира 3 из 5» означает, что пользователь создал пять частей при настройке схемы, а пороговое требование для доступа к исходному секрету составляет три части. При этом, не имеет значения, какие именно три части используются для восстановления секрета.
Это означает, что условная Алиса может создать резервную копию своего сида, например, следующим образом (при условии, что это схема 3 из 5):
Хорошо если, отдельные части представлены в аналоговой форме, т.е. написаны от руки на бумаге или отпечатаны на металле (с использованием Cryptosteel, Cryptotag или иных подобных решений).
Алиса прекрасно понимает, что ей никогда не следует хранить эту информацию на компьютере, подключенному к Сети, или вообще хранить цифровую копию.
При таком раскладе Алисе не нужно беспокоиться о потере доступа к своим биткойнам, даже если её дом сгорит дотла, потому что она может восстановить доступ из других частей, которые хранятся у её друга, матери и в банковском сейфе.
Ей также не нужно беспокоиться о краже, потому что ни одна локация для хранения не предоставит доступа к монетам.
Таким образом, секрет Шамира является идеальным решением проблемы кражи/потери, поскольку изолированные части сами по себе бесполезны, и Алиса может даже потерять некоторые части, не теряя доступа к своим биткойнам.
Оригинальная схема Шамира существует с 1979 года, но, была должным образом стандартизирована для использования в сидах только в конце 2017 г. Стандарт называется SLIP-0039: Shamir’s Secret-Sharing для мнемонических кодов и полностью открыт для любого, кто хочет изучать, делиться и внедрять его в свои продукты.
Резервные копии Шамира, основанные на SLIP-39, уже используются в кошельке Trezor (модель T) и кошельке Hermit от Unchained Capital. Другие компании также начали внедрять данный стандарт.
Инструкции по воссстановлению при использовании секрета Шамира
Те же качества, которые делают резервные копии Шамира мощным средством для обеспечения повседневной безопасности, также делают его подходящим для составления завещания. Когда Алиса распределит свои резервные части, как описано выше, единственное, что ей нужно сделать, чтобы обеспечить преемственность – это записать чёткие рекомендации для своих близких.
Сейчас это может показаться второстепенной простой задачей, но, инструкции для получения ваших средств должны составляться с надлежащей осторожностью.
Вот важнейшие правила:
Не просто расскажите своему любимому человеку о схеме Шамира – запишите это! Если вы просто расскажите кому-то об этом, то он, вероятно, забудет подробности или, в худшем случае, может погибнуть вместе с вами в результате какого-нибудь несчастного случая
Напишите руководство, используя ручку и бумагу. Никогда не печатайте это на своём компьютере и не храните цифровую копию
Объясните, что такое резервное копирование Шамира в первую очередь и почему восстановление должно выполняться с особой осторожностью. Например, части никогда не следует вводить на каком-либо сайте и, тем более, не отправлять незнакомым людям, которые «пытаются помочь» через интернет
Напишите про общее количество частей, пороговое значение и сведения касательно их местонахождения
Храните инструкции в безопасном и подконтрольном месте, доступ к которому могут получить ваши близкие в случае вашей смерти
Ваш домашний сейф подходит лучше всего, хотя наиболее подходящее место зависит от индивидуальных обстоятельств
Не включайте инструкции по восстановлению биткойнов в своё завещание – это может подвергнуть опасности ваших близких, поскольку завещание, в некоторых юрисдикциях, является общедоступным документом
Обновите инструкцию, если что-то изменится, например, местоположение частей
***
И, конечно, если у вас есть немного биткойнов на горячих кошельках, биржевых счетах или других сервисах – вы также должны сообщить об этом своим близким. В идеале, каждый сатоши должен быть доступен им на случай, если с вами что-то случится.
Но, возможно, самый важный совет – поставить себя на место ноукойнера [человека, не сведущего в криптовалютах]. Потому что, если вся ваша семья недостаточно «напичкана оранжевыми пилюлями» [разг. не прошарены в крипте], скорее всего, они запутаются и совершат фатальные ошибки. Поэтому постарайтесь как можно яснее рассказать о том, что вы оставили им и как безопасно получить к этому доступ, не став жертвой мошенников и т.д.
Подумайте о том, чтобы порекомендовать семье надёжного друга, понимающего в крипте, который поможет им. Будьте очень осторожны с теми, кого вы рекомендуете, но, также знайте, что если вы никого не посоветуете – ваши близкие могут обратиться к незнакомым людям в интернете.
И даже если ваш друг окажется не таким надёжным, как вы думали – ваша семья обратится в суд с иском на известного им человека, чего не выйдет, если бы их обманул незнакомец.
Секрет Шамира или мультиподпись?
Не все являются поклонниками резервных копий Шамира. Некоторое время назад Джеймсон Лопп (Casa) опубликовал анализ предполагаемых недостатков секрета Шамира и порекомендовал варианты с несколькими подписями. Анализ Лоппа справедлив и должен быть рассмотрен.
Прежде всего, это правда, что предыдущие попытки использования схемы Шамира для создания сидов были довольно небрежными, как отметил Лопп. Однако, со обновлением SLIP39 дело обстоит иначе. Стандарт был написан в конце 2017 года, но, реализован в кошельке Trezor только летом 2019 года.
Ни за два года до первого внедрения в реальном мире, ни за два последующих года не было обнаружено ни одной уязвимости. И его нет, так как математика, лежащая в основе SLIP39, просто идеальна. Если бы это было не так, уязвимость была бы обнаружена много лет назад.
Кроме того, резервные копии Шамира и мультиподписи решают задачи несколько разного порядка. Резервные копии Шамира решают проблему защиты исходного кода для восстановления. Мультиподписи же обеспечивают повышенную безопасность при совершении транзакций.
На самом деле их можно объединить: у вас может быть схема с несколькими подписями, в которой сид для восстановления каждого отдельного кошелька защищён с помощью резервных копий Шамира.
В принципе, как резервные копии с несколькими подписями, так и резервные копии Шамира в плане безопасности зависят от физической удаленности элементов (подписывающих сторон или частей секрета Шамира). Таким образом, настройка и использование обоих вариантов отнимает сравнительно много времени.
При использовании схемы Шамира – это небольшая проблема, так как обычно вам приходится иметь дело со своим сидом только при настройке кошелька, а затем при выполнении восстановления, что может произойти лишь спустя долгие годы.
Используя схемы с несколькими подписями пользователи сталкиваются с практической проблемой координации, поскольку вы зависите от активного и постоянного участия физически удалённых сторон всякий раз, когда вам нужно подписывать транзакции, что может происходить несколько раз в месяц, если не чаще. В общем, хотя, это выполнимо для официальных организаций, таких как хедж-фонды или корпорации – для частных лиц это совершенно неосуществимо. Если только они не платят третьей стороне, которая предлагает подобные услуги для их бизнеса.
Проблему координации можно решить, выбрав вариант с несколькими подписями, при котором пользователи держат, например, две необходимые подписи из пяти в целом в своём собственном доме. Такая схема более практична, чем та, при которой все ключи физически распределены, но, устраняет одно из преимуществ мультиподписей – исключение возможности совершить транзакцию по принуждению.
[Прим.переводчика. Или по злонамерению/ошибке. Действительно, зачем вообще тогда использовать мультиподпись? Обойти баланс между безопасностью и удобством непростая задача. Приходится выбирать]
Но, честно говоря, Шамир сам по себе также не защищает от сценария физической атаки, такой как вторжение в дом, если у пользователя настроен и готов к использованию Trezor.
[Прим.переводчика. Британские учёные доказали, что увесистый гаечный ключ подходит к любому биткойн-кошельку. Скорость получения доступа зависит от тяжести закрытого или открытого перелома]
В общем, у мультиподписи всё ещё много неявных проблем, когда дело доходит до проверки транзакций и резервного копирования всей схемы. Мы надеемся, что в будущем они будут решены с помощью общепринятых отраслевых стандартов, но, пока этого не произойдёт, они, на самом деле, плохо подходят для обычных биткойнеров. А вот резервные копии Шамира на сегодня более удобны и практичны.
Заключение
Резервные копии Шамира эффективно предотвращают как кражу, так и потерю. Они также являются разумным способом передачи биткойнов по наследству. В дополнение к созданию самой резервной копии Шамира, определение наследования требует чётких письменных инструкций для ваших близких. Секрет Шамира может эффективно использоваться в паре с мультиподписями или самостоятельно и является достаточно практичным решением для повышения уровня безопасности без необходимости использования нескольких кошельков.