Подходит ли эта схема мультиподписного аудита Trezor + Coldcard?

В планах сделать мультиподпись между coldcard и trezor. Я хочу проверить и убедиться, что я действительно владею двумя ключами этих кошельков, используя Raspberry Pi Zero (без Wi-Fi/Bluetooth по определению) на очень старом HDMI-телевизоре без Интернета, а также используя виртуальную клавиатуру и просто мышь. на нуле пи.

Вот возможные риски, которые я хочу уменьшить:

  • Кошельки могут иметь вредоносный генератор случайных чисел.

  • Кошельки могут генерировать адрес для ключей, которые не принадлежат мне

Чтобы исключить риск того, что trezor сгенерирует закрытый ключ, которым я не владею, я положу его ключ на raspberry pi zero и увижу, что он генерирует тот же главный публичный ключ, что и показанный в trezor. Это доказывает, что этот ключ принадлежит мне, но это может быть ключ, который уже есть у кого-то. Нет проблем, поэтому я использую мультиподпись.

На coldcard я сгенерирую семя, используя кубики, а затем проверю на raspberry pi, что эти броски кубиков действительно генерируют закрытый ключ, показанный coldcard. Это доказывает, что у меня есть закрытый ключ, которого нет ни у кого, потому что он был сгенерирован с помощью игральных костей.

Теперь, когда у меня есть 2 приватных ключа, и по крайней мере один из них я единственный владелец, я могу создать мультиподписной кошелек на Electrum или, может быть, на BlueWallet. Я прокомментирую первые 10 адресов, сгенерированных программным кошельком, и проверю, совпадают ли они на coldcard и на trezor. Если 3 показывают один и тот же набор из 10 адресов, я могу считать эти адреса безопасными для получения биткойнов.

Затем я получу немного биткойнов на один адрес, сотру оба кошелька, восстановлю их с помощью закрытых ключей, а затем попытаюсь потратить этот биткойн, просто чтобы убедиться, что монеты действительно принадлежат мне.

С какими возможными проблемами я могу столкнуться? Я забыл что-то важное?

PS: я знаю, что если у trezor есть вредоносный генератор случайных чисел, и он создает закрытый ключ, которым владеет не только я, это утечка конфиденциальности, но не проблема. И это утечка конфиденциальности только тогда, когда я провожу с этого адреса, раскрывая открытый ключ в блокчейне.

Я также планирую использовать только PBST-транзакции на Coldcard и доверенный компьютер для трансляции.

Я отредактировал одну вещь, основанную на моем предположении. Вы можете откатиться, если это неправильно.

Ответы (1)

Кошельки могут иметь вредоносный генератор случайных чисел.

Есть несколько способов быть злонамеренным. Обычно генераторы случайных чисел считаются вредоносными, если они каким-то образом предсказуемы, поэтому, если вы их используете, кто-то другой может угадать ваше «случайное число».

Но это не похоже на то, от чего ваш план защищает вас.

Что вы проверяете в своей процедуре, так это то, что ваш аппаратный кошелек не дает вам другое начальное число (когда вы выполняете первоначальную настройку или просите его экспортировать), отличное от того, которое он использовал для генерации закрытых ключей и связанных адресов, которые он использует, когда вы получать или отправлять средства вместе с ним. В этом смысле начальное число (из которого получаются закрытые и открытые ключи в HD-кошельках) не будет вашим, а будет принадлежать только вашему аппаратному кошельку: вы можете получать и отправлять с помощью устройства, но если вы импортируете начальное число в другом месте, связанные средства, потому что они отличаются от тех, которые использует Trezor.
Однако я никогда не слышал о такой проблеме ни на одном аппаратном кошельке.

Кошельки могут генерировать адрес для ключей, которые не принадлежат мне

Для меня это не имеет смысла, общедоступные адреса получаются из закрытых ключей, поэтому кошелек должен иметь закрытые ключи для генерации адресов... я не уверен, что вы имеете в виду.

Кроме того, вы не можете подтвердить, что вы являетесь единственным владельцем семени или закрытого ключа, самое большее, что вы можете сделать, это убедиться, что это не просочится, но если каким-то образом кому-то удастся скопировать, предсказать или сгенерировать его случайным образом, вы не заметите, пока деньги не уйдут.

Итак, учитывая все обстоятельства, я думаю, что вы можете избежать необходимости проверять семена, которые дают вам ваши кошельки, потому что это практически ничего не добавляет к безопасности, которую вы уже имеете, используя мультиподписные адреса с 2 аппаратными кошельками, оцениваемыми как Trezor и Coldwallet, которые уже сильно тщательно, как вы можете видеть здесь , например.


PS: я знаю, что если у trezor есть вредоносный генератор случайных чисел, и он создает закрытый ключ, которым владеет не только я, это утечка конфиденциальности, но не проблема. И это утечка конфиденциальности только тогда, когда я провожу с этого адреса, раскрывая открытый ключ в блокчейне.

Я не знаю о проблемах с Trezor rng (у вас есть ссылка на это?), но если ваши приватные ключи утекли, вы потеряете свои средства почти мгновенно, нет необходимости ждать, вы потратите, как было сказано ранее, публичный ключ и адреса получаются из закрытого ключа, поэтому, если у вас есть это, вам больше ничего не нужно

Да, но в холодной карте я буду генерировать свое семя с помощью кубиков, поэтому я могу быть уверен, что оно мое. Я проверю в малине, что кости действительно генерируют это семя
как закрытые ключи не могут быть вашими? если кошелек может сгенерировать адрес, у него должен быть свой закрытый ключ... мне кажется, у вас есть некоторые неправильные представления, можете ли вы предоставить какие-либо ссылки на какую угрозу вы пытаетесь предотвратить?
Я думаю, что вопрос предполагает, что прошивка, работающая в аппаратном кошельке, может активно пытаться отображать адрес, отличный от того, который связан с закрытым ключом.
Итак, если у вас есть 2 кошелька, которые генерируют разные адреса для одного и того же начального числа, как узнать, какой из них правильный? нет простого способа достичь консенсуса в отношении того, какой адрес является правильным, если вы не доверяете своему кошельку и не можете прочитать код.
Причина того, что аппаратный кошелек показывает адрес на своем собственном дисплее, как раз и состоит в том, чтобы избежать подделки адреса во внешнем программном обеспечении, но вам нужно доверять хотя бы вашей аппаратной прошивке, а для этого вам предоставляется исходный код и его подпись.
Разница в том, что два кошелька генерируют один и тот же мультиподписной адрес. Тот, которому я не могу доверять, сгенерировал действительно случайный закрытый ключ, тот, который я могу.
Если вы не доверяете программному обеспечению Trezor, почему вы его используете? вместо этого используйте 2 Coldcard ... тест rpi совершенно бесполезен, если вы не можете доверять программному обеспечению аппаратного кошелька, вы также не должны доверять программному обеспечению Raspberry Pi. более того, использование кошелька сопряжено с большим риском, чем генерация на нем ключей и адресов, как вы можете видеть здесь: thecharlatan.ch/List-Of-Hardware-Wallet-Hacks , так что вы также должны учитывать этот риск, но мультиподписной кошелек хорошее начало :)