Виталик: Как выбрать хранителей для мультиподписных кошельков и кошельков для социального восстановления?
Оригинальное название : Как я думаю о выборе хранителей для мультиподписных и социальных восстановительных кошельковОригинальный автор :Vitalik Buterin Перевод : Цяньвэнь , C hainCatcher
Мультиподписные кошельки (например, Gnosis Safe) являются простым и безопасным способом хранения средств, позволяя вам наслаждаться большинством преимуществ самоуправления — ваши средства не исчезнут, когда централизованные сущности, которые кажутся надежными, становятся ненадежными. Но при этом вам не нужно нести риск ответственности за всю безопасность. Я лично использую мультиподписные кошельки для хранения большей части своих средств, и Эфириум Фонд делает то же самое.
Другим аналогом мультиподписного кошелька является социальный восстановительный кошелек — один ключ может использоваться для подписания транзакций, но если этот ключ потерян, можно использовать набор ключей, принадлежащих другим людям, для восстановления средств. Социальные восстановительные кошельки проще в использовании, особенно с появлением абстракции аккаунтов ERC-4337, и скоро появится кошелек души (Soul Wallet), что сделает эту технологию более удобной. Как только социальные восстановительные кошельки станут достаточно зрелыми, я рекомендую использовать социальные восстановительные горячие кошельки для хранения небольшой части средств физического или юридического лица; использовать мультиподписные для холодных кошельков для хранения сбережений физического или юридического лица.
Мультиподписные кошельки и социальные восстановительные кошельки полагаются на концепцию "хранителей" (guardian): набор из N адресов, обычно принадлежащих другим людям, из которых любые M адресов могут одобрить операцию (например, можно установить N=6 и M=4). В случае мультиподписного кошелька каждая транзакция должна быть подписана M из N хранителей. В случае социального восстановительного кошелька один ключ может подписывать транзакции, но если этот ключ потерян, M из N хранителей должны подписать информацию для сброса ключа.
Два ключевых вопроса для безопасного использования мультиподписных кошельков и социальных восстановительных кошельков : (i) кого вы выбираете в качестве хранителей и (ii) какие указания вы им даете? Эта статья обрисует, как я думаю об этом вопросе, большинство из которых также должно применяться к мультиподписным и социальным восстановительным кошелькам, используемым для защиты средств физических и юридических лиц.
Что мы хотим получить от хранителей?
- Минимизировать вероятность их потери ключа.
- Минимизировать вероятность их сговора для кражи ваших средств или принуждения к этому.
- В случае, если вышеупомянутые два риска неизбежны, риск каждого хранителя должен быть максимально независимым — вы хотите минимизировать их общие черты, так как этот общий риск может привести к тому, что многие ваши хранители одновременно потеряют возможность или будут затронуты.
Ответ на этот вопрос прост, но он направляет все мои выборы в отношении хранителей:
Хранители могут быть вашими собственными устройствами, но не позволяйте слишком многим устройствам быть вашими хранителями .
Прежде всего, по крайней мере один хранитель будет кошельком на вашем собственном устройстве, что нормально, ведь это ваши собственные средства, и нет причин, которые могли бы повлиять на децентрализацию. Однако, как только у вас есть более одного хранителя, находящегося под вашим контролем, вы столкнетесь с непростой задачей: ваше доверие к другим снижается, и вы сосредоточиваете больше власти на себе, что может создать риск, если вас взломают, принудят, вы потеряете возможность или умрете.
Мой опыт показывает, что должно быть достаточно хранителей, находящихся под контролем других . Если вы исчезнете, должны быть другие достаточные хранители, которые смогут вернуть ваши средства. То есть, вы должны контролировать как минимум одного** хранителя и не более N-M хранителей . Кроме того, каждый хранитель должен находиться на отдельном устройстве (ноутбук, телефон, старый телефон и т.д.).
Выбирайте хранителей, с которыми не часто общаетесь, или лучше всего тех, кого не знаете.
В идеале хранители не должны знать, кто они друг для друга. Это значительно снижает риск их сговора, кроме того, у них нет достаточных причин знать друг о друге. Если с вами что-то произойдет, они все равно смогут найти друг друга, так как в таком случае люди естественно подумают о некоторых очевидных стандартных процедурах (например, свяжитесь с вашей семьей).
Кроме того, старайтесь минимизировать связь между хранителями: не выбирайте двух хранителей, живущих в одном городе (даже лучше, если в одной стране), или двух хранителей, использующих один и тот же тип кошелька, и сбалансируйте между различными операционными системами.
Хранители должны сначала задать вопрос безопасности перед тем, как одобрить операцию :
Когда вы просите хранителей одобрить операцию (в мультиподписном кошельке это относится к транзакции; в социальном восстановительном кошельке это относится к сбросу вашего ключа аккаунта), они не должны сразу начинать операцию. Это катастрофа для безопасности: если кто-то взломает ваш чат-аккаунт, они могут просмотреть вашу информацию, выяснить, кто ваши хранители, связаться с каждым из них и попросить их подтвердить, тем самым украсть ваши средства.
Чтобы избежать этой ситуации, мой предпочтительный процесс — указать хранителям задать вопрос безопасности. Когда вы просите подтвердить вашу операцию, хранители должны задать вам что-то, что знаете только вы двое и очень немногие другие (например, "Что мы ели в последний раз, когда встречались?"), и только после того, как вы дадите правильный ответ, подтвердить операцию.
Естественным выбором будет голосовой или видеозвонок, но в эпоху, когда искусственный интеллект хорошо умеет подделывать, этот способ уже не так надежен, поэтому вы можете захотеть сочетать голосовой/видеозвонок с вопросом о какой-то безопасности.
Если вы "Degen старожил" , убедитесь, что ваши хранители могут быстро реагировать. В противном случае вам не нужно делать такое требование .
Если вы занимаетесь чем-то рискованным с помощью смарт-контрактов, вам может потребоваться быстро действовать: если в контракте есть уязвимость, извлеките средства. Если вас скоро ликвидируют, переведите деньги и так далее. Если у вас есть такие потребности, то вам нужно найти хранителей, которые могут быстро действовать в короткие сроки (поэтому также нужно найти хранителей в разных часовых поясах, чтобы в любое время было достаточно хранителей, которые могут завершить транзакцию). Однако, если вы не делаете такие вещи, скорость не так важна, на самом деле это может быть даже вредно, потому что убеждение людей действовать срочно — это распространенная стратегия социального инжиниринга хакеров, и если людям это не нравится, это может быть даже хорошим знаком.
Проводите тестирование для каждого хранителя по крайней мере раз в год
Проводите хотя бы одну тестовую операцию в год. В идеале проводите две тестовые операции в год, одну с половиной хранителей, другую с другой половиной хранителей. Это может гарантировать, что ваши хранители не забыли или не потеряли свои аккаунты.
Более продвинутый вопрос: Конфиденциальность
Одной из проблем хранителей является то, что в настоящее время нет технологий, которые могли бы обеспечить вашу финансовую конфиденциальность без влияния хранителей. Тем не менее, это техническая проблема, которую можно решить: хранители не охраняют ваш аккаунт напрямую, а охраняют контракт " сейф ", связь между вашим аккаунтом и сейфом скрыта.
Сохранить связь скрытой до необходимости восстановления очень легко: например, ваш аккаунт может иметь контракт CREATE2 хранителя, который может создать только сейф. Однако, чтобы связь оставалась скрытой после восстановления, требуется более продвинутая технология ZK-SNARK. Я ожидаю, что эта проблема будет постепенно решаться в течение следующих нескольких лет.


Популярные статьи











