Март 14

Trezor VS Ledger. Распаковка и настройка (часть 1)

Внешний вид и комплектация:

Оба девайса — пластик. Trezor по ощущениям более хрупкий, легкий и дешевый пластик (хотя если верить спецификациям, то разница между ними всего 4 грамма). Но на практике эта разница, очень даже сильно ощутима. Т.к если Ledger по тактильным ощущениям напоминают вполне себе таки обычную флешку, то когда держишь в руках Trezor, то не покидает чувство, что стоит чуть сильнее его сжать или не дай Бог на него случайно сесть и фсе… придется покупать новый

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

https://goo.gl/av6bHR

Честно говоря не знаю, на сколько они могут защитить, но спрос на них вроде, как есть

Ну что еще можно сказать о комплектации… Некоторое удивление вызвал шнур который шел в комплекте с trezor. Хотя нет, шнуром его язык не позволяет назвать, скорее просто огрызок какой-то. Вот вам просто для сравнения фото шнуров из коробок trezor и ledger. Думаю где какой уточнять не надо )))

В остальном комплектация стандартная: пару бумажек, в том числе для записи слов, шнурок для ношения девайса в виде брелка, и еще пару информационных бумажек

Ну собственно по комплектации все…

Кстати, совершенно случайно наткнулся на то, что некоторое время назад выпускалась версия Trezor в metallic исполнении. Но почему она не пошла и не продается сейчас, наверное, так и останется для нас загадкой. Но выглядело это так

https://goo.gl/xeujcg

Первый запуск:

Т.к оба девайса не работают самостоятельно, без подключения к компьютеру или телефону, посему подключаем их к usb и поехали

Trezor

При первом старте, надпись на экране пригласит нас перейти на сайт trezor.io/start. Там нам будет любезно предложено прочитать небольшую инструкцию, и после установить один из двух вариантов для коммуникации с вашим девайсом: trezor bridge или плагин к хрому. Trezor Bridge это по факту драйвер, который, устанавливать предпочтительнее. Причин тому несколько, одну из которых, можно найти в блоге  производителя Trezor’a

https://goo.gl/EzZnLh

где особого внимания заслуживает это

The second reason for this announcement is that the new Bridge is the first part of our transition away from Chrome apps. As you may know, Google is phasing out all Chrome applications later this year, which means that the very popular TREZOR Chrome extension (app) will become obsolete as well. Therefore, we will have to rely on different communication channels for TREZOR. The old Bridge would remain functional, but we decided to update the application to boost compatibility and to provide a fallback option.

Собственно на windows 7 bridge становиться отлично, на убунту так же. А за неимением Мака проверить там не могу

Внимание ньюанс!

Новый trezor-bridge вы не установите на Ubuntu 14.04 и ниже, будет ругаться на отсутствие systemctl. Решается несколькими путями (нет я не про обновление убунты). Один из вариантов скачать и распаковать deb пакет, и просто при необходимости запускать вручную бинарник. Больше инфы здесь

https://goo.gl/aG6myr

Хотя. если вам нравятся приложения хрома, то можете установить его вместо trezor-bridge.

https://doc.satoshilabs.com/trezor-apps/extension.html

Да и если вы в дальнейшем вы захотите, кроме кошелька, использовать еще и менеджер паролей, то он представлен именно в виде приложения для хрома

https://trezor.io/passwords/ (о нем я расскажу в следующих статьях)

Внимание ньюанс!

Опять линукс. Просто так работать с девайсом из приложения в хроме, не устанавливая никакого дополнительного программного обеспечения не получится. Посему, если вы выбрали chrome app, вместо trezor-bridge, то вам вручную нужно внести пару изменений, чтобы эта связка заработала

https://doc.satoshilabs.com/trezor-user/settingupchromeonlinux.html

После этого, ваш trezor будет виден и с ним можно будет работать. Если же вы установили trezor-bridge, то вносить никаких изменений не нужно

Идем дальше…

Собственно теперь, когда наш девайс виден в системе, при заходе на wallet.trezor.io нам предложит установить прошивку (все девайсы в целях безопасности идут без прошивки). Потверждаем загрузку прошивки на девайсе и ждем. Потверждаем fingerprint прошивки (то, что мы видим на экране компьютера и Trezor должно совпадать). Реконнектим девайс

Если все прошло успешно, то на десктопе нам предложат дать имя нашему кошельку. и задать пин. Вот на пине остановимся детальнее

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

А какому квадратику соответствует какое значение, в данный момент можно посмотреть на девайсе.  Причем, каждый раз при запросе пина, расположение цифр в квадратиках будет разное

Минимально число цифр в пине — 4, максимальное — 8. Я установил 8. Очень рекомендую постараться не забыть эти цифры, т.к если вы потеряете свой пин и вдобавок еще потеряете бумажку с записанными словами, то возможно, будете ходить по экстрасенсам, чтобы этот пин вспомнить. ‘Счастливчику’ из истории ниже удалось это все испытать на себе )

https://goo.gl/DKedmj

Почему по экстрасенсам спросите вы? А вся фишка в том, что с каждым неправильным вводом пина, время до следующего ввода будет увеличиваться x2 (кстати, начиная с прошивки 1.5+ после 15 неверно введенных пинов, устройство будет обнулено)

После того, как вы закончите с настройкой пина, вам нужно будет записать 24 слова, на основании которых и будут сгенерированны ваши ключи. Настоятельно напоминаю, что с помощью этой бумажки вы можете восстановить потом ваш кошелек на любом другом аппаратном или десктоп кошельке, который поддерживает BIP39. Посему берегите эту бумажку как зеницу ока и упаси вас Господь, сохранить эти слова где-то в электронном виде… Надеюсь не надо объяснять почему?

Собственно на этой ноте, базовый процесс настройки Trezora завершен, теперь перейдем к Ledger

 

Ledger Nano S

Прежде чем купить Ledger я уже пользовался Trezor’ом не менее, чем пару месяцев. И честно говоря, вот получив Ledger и поработав с ним немного, я могу сказать, что он другой… Совсем. Но давайте по порядку…

В Trezor’e две его кнопки, по большей части выполняют функцию подтверждения онли и нажимаете вы на них по факту только тогда, когда вам надо подтвердить транзакцию или в процессе сетапа, в Ledger же, вы будете использовать кнопки постоянно. Да и логика работы кнопок у девайсов отличается. У Ledger Nano S нажатие на определенную кнопку — перелистывание по меню, нажатие на две кнопки сразу — подтверждения выбора. Собственно, при первом старте девайса вас и попросят нажать две кнопки, после чего нужно будет задать пин.

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

Кстати, если вы в дальнейшем три раза введете неверный пин — девайс сбросится и вам придется восстанавливать все по записанным ранее фразам. Напомню, что у Trezor’a количество попыток перед сбросом (с прошивки 1.5+) = 15

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

Но ладно, вернемся к процессу сетапа Ledger’a. После ввода пина, вам нужно будет записать 24 слова, которые будут отображены на экране Ledger. После того, как слова будут записаны, девайс попросит вас выбрать случайно пару слов, что вы написали, чтобы проверить, что вы их таки записали ))

После того, как вы закончить с записью слов, девайс вам напишет, что он готов. И вы воочию сможете лицезреть на маленьком экранчике пункты меню: Bitcoin, Etherium, U2FA, Settings. Что с ними делать и почему они стали одним из самых больших моих разочарований в Ledger об этом я уже напишу в следующей части в следующей части, а пока вернемся к сетапу

В отличии от Trezor’a драйвера у Ledger нет, и вам придется устанавливать приложения для Chrome. На линуксе, опять же просто так не станет. Нужно немного пошаманить, а именно

https://goo.gl/7mU2oU

Собственно на этом первоначальный сетап для Ledger закончен

Безопасность

Оба девайса предназначены для хранения денег и данный вопрос является очень критичным, я бы даже сказал вопросом, первостепенной важности и здесь, в данном пункте, хотелось бы поднять пару проблем

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

1. Чего стоит опасаться при покупке

Покупая аппаратные кошельки не на официальных сайтах вы теоретически рискуете.

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

б) evil firmware. Девайс может прийти с левой прошивкой. На сайте Trezor’a утверждается, что теоретически злоумышленник может закачать левую прошивку, но в этом случае при каждом старте, устройство будет выдавать предупреждение. А перепрограммировать bootloader, чтобы это предупреждение не показывалось по их словам невозможно, т.к «because all TREZORs ship with their secure programming fuse blown.». Кстати, напомню, что фирменные trezor поставляются без прошивки и прошивка сетапиться при первоначальной настройке

Ledger на своем сайте пишет такое

The Ledger Wallet Chrome application sends a random value to the Nano as a challenge. The Nano then signs this random value + the firmware version, using an embedded private key shared by some batches.

The Chrome app knows the public key and can verify the signature.

If an attacker switched the Nano with a replica running a rogue firmware, it wouldn’t pass the attestation test and would immediatly be rejected as non genuine.

There is absolutely no way that an attacker could replace the firmware and make it pass attestation, without knowing the Ledger private key.

Also, as a side note, all API calls are protected by an attestation token generated during the initial check. Without a valid token, it is impossible to query our servers (protecting ourselves against unfair use of our blockchain explorer).

Attestation doesn’t have any impact on privacy. Ledger uses a set of keys which are distributed by batches (for instance, we would change the key every 10,000 units). It is shared enough to completely avoid tracking, but is not unique to be able to contain damage in case of a key being compromised (which would affect only a part of the user base).

https://goo.gl/QUzFmD

Т.е если верить производителям, то теоретически девайс с левой прошивкой быть может, но будет валиться алерт

в) реплика. Вопрос, на который, я не смог найти 100% ответа, возможно из-за того, что моих знаний в hardware части недостаточно. Но в целом вопрос звучит так. Возможно ли изготовить аппаратный кошелек (в том же trezor почти все в opensource), поставить туда фирменную прошивку, но добавить что-то хардварное, что сливало бы инфу. Может у кого есть ответ на этот вопрос, буду рад если разжуете

А пока нашел у Ledger, как они предлагают проверять оригинальность устройства

https://goo.gl/rw4EMh

Trezor же предлагает только чекать hash bootloadera или собирать прошивку самому. Инфы про то, как проверить именно аутентичность оборудования я пока не нашел

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

а) человеческой глупости (потеря слов для восстановления, и.т.д)

б) phishing, когда, например на зараженном компьютере троян подменяет адрес на который вам надо заплатить на другой. И вы копируете его в апп и платите не на тот адрес, на который нужно

Но в целом я думаю будет отдельная глава о безопасности. А пока все

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

 


Добавить комментарий