Trezor: 4 января 2016 года: 7.4 BTC = $ 3 000

В январе 2016 года я потратил $ 3 000 на покупку 7,4 биткоинов. В то время это казалось абсолютно целесообразным. Тогда я начал работать директором по исследованиям в Институте Futurechin Futures Lab и хотел получить практический опыт работы с биткоином, криптовалютой, которые использует блокчейн для записи транзакций в своей сети. Я и подумать не мог, к чему приведет эта покупка.

Мои эксперименты с биткоином были увлекательными. Покупки за криптовалюту была на удивление простыми. Я использовал приложение airBitz для кредита в Starbucks. Purse.io пригодился для покупки беспроводной камеры для двери от Amazon. Я использовал биткоин в Meltdown Comics в Лос-Анджелесе, чтобы купить графические романы.

К ноябрю стоимость биткоинов почти удвоилась и продолжала ежедневно расти. Мой криптовалютный кошелек начал превращаться в реальные деньги. Я держал свои биткоин-ключи в сетевом кошельке, хотя и я хотел переместить их в более безопасное место. Многие онлайн-службы биткоина сохраняют приватные ключи своих клиентов, что означает, что учетные записи не защищены от хакеров и мошенников (помните, как мистер Гокс потерял 850 000 биткоинов со счетов своих клиентов в 2014 году?) или правительства (например, в августе домен российской биткоин-биржи BTC-e был арестован ​​окружным судом США в Нью-Джерси, а активы пользователей были заморожены).

Я взял интервью у нескольких экспертов по биткоину, и все они сказали, что самый безопасный способ защитить свои средства — использовать так называемый «аппаратный кошелек». Это маленькое устройство — на самом деле USB-карта памяти, в которой хранятся ваши приватные ключи, которые позволяют проводить транзакции, не засвечивая их в интернете и не привлекая внимание мошенников. Я остановился на аппаратном кошельке под названием Trezor (в переводе с чешского «безопасно»), описанного производителем «пуленепробиваемым». Я купил такой кошелек 22 ноября за $100 на Amazon (опять же через Purse.io).

Когда Trezor был доставлен, я подключил его к компьютеру и отправился на веб-сайт Trezor, чтобы настроить его. Маленький монохромный экран гаджета ожил, показывая значок замка. Веб-сайт дал мне указание записать 24 слова, случайным образом созданные сервисом. Слова были похожи на нечто абстрактное — «осознание», «движение», «мода» и «горькое». Я написал их на куске оранжевой бумаги. Затем мне было предложено создать ПИН-код. Я записал его (выбирая пару коротких комбинаций, с которыми я был знаком и мог легко вспомнить) на том же листе бумаги, что и 24 слова.

На сайте Trezor было написано, что эти 24 слова будут использованы для восстановления доступа и могут быть использованы для создания главного приватного ключа для моих биткоинов. Если бы я потерял свой Trezor или он прекратил работать, я мог бы вернуть свои биткоины, введя эти 24 слова в новый Trezor или другой аппаратный и онлайн-кошелек, которые используют один и тот же стандартный алгоритм генерации ключа. Таким образом, важно было сохранить бумагу в надежном и безопасном месте, чтобы никто не мог украсть мои 7,4 биткоинов. Я перевел свою валюту из веб-кошелька в свой Trezor, а оранжевый листок бумаги убрал в ящик стола в своем кабинете. В будущем я планировал приобрести кусок металла и нанести на него эти 24 слова, а потом поместить его в более надежное место. Реализацией плана я собрался заняться сразу после праздников.

Ошибка: 16 марта 2017 года, 7,4 BTC = $ 8 799

6:30 утра. Моя 14-летняя дочь Джейн уехала вместе с классом в Лондон, а старшая дочь Сарина училась в колледже в Колорадо. Мы с моей женой Карлой собирались в отпуск в Токио. Когда я рылся в ящике и искал зарядку от телефона, то увидел оранжевый лист бумаги с 24 словами и ПИН-кодом. Куда же его убрать? Если бы наш самолет упал в океан, я бы хотел, чтобы мои дочери смогли получить биткоины. Монеты уже почти утроились в стоимости, и я уже представлял, как в один прекрасный день их стоимость составит $ 50 000. Тогда я  взял ручку и написал на бумаге:

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

(«Кори» — Кори Доктороу, мой друг и деловой партнер по сайту Boing Boing. Он не крипто энтузиаст, но я знал, что он сможет выяснить, как получить приватный ключ из списка слов).

Я отнес бумагу в спальню Джейн, засунул ее под подушку, и мы поехали в Лос-Анджелес.

Мусор: 4 апреля 2017 года: 7.4 BTC = $ 8 384

Мы вернулись из Токио 24 марта, и до 4 апреля я ни разу не вспомнил об оранжевом листе бумаги, который положил под подушку Джейн. Смешно, подумал я. Она дома больше недели и тоже не спросила меня мне об этом.

Я вошел в ее комнату и посмотрел под подушку. Листка там не было. Я посмотрел под кровать, вытащил ящики для хранения, подсвечивая их содержимое фонариком в мобильном.

«Карла» — спросил я. — «Ты не видела оранжевый листок бумаги с моим биткоин паролем? Я не могу найти его в комнате Джейн».

«Может, Джейн положила его на стол», — сказала она. На тот момент Джейн была в школе, но я написал ей, на что она ответила, что никогда не видела оранжевого листка бумаги.

«Подожди», — сказала Карла. «Пока нас не было, в доме проводили уборку. Сейчас я позвоню в клининговую компанию».

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

«Где он?» — спросила Карла.

«Я его выбросила».

Я знал, что скорее всего мусор уже увезли, но все же надел пару перчаток и пошел рыться в мусоре. Увы, я не нашел ничего кроме яичных коробок, кофейных отходов и упаковки от Amazon. Оранжевый лист бумаги разлагался где-то под кучей мусора на полигоне в Лос-Анджелесе.

Карла спросила меня, так ли важен этот кусоч бумаги.

«Не очень, — ответил я. — Просто лишние хлопоты и не более того». Я должен был отправить биткоины из Trezor в онлайн-кошелек, повторно инициализировать Trezor, создать новый список слов и вернуть биткоины на Trezor. Можно было бы считать ситуацию безнадежной, если бы в довершении всего я забыл свой ПИН-код, но его я помнил хорошо. 551445.

Забыл: 4 апреля 2017 года: 7.4 BTC = $ 8 384

Я подключил Trezor к своему ноутбуку и ввел 551445.

Введен неправильный PIN-код.

Должно быть, я неаккуратно ввел ПИН-код, подумал я. Я попробовал 551445 еще раз, понимая, что на этот раз цифры нужно ввести правильно.

Введен неправильный PIN-код.

Господи. Я попробовал измененную вариацию 554445.

Введен неправильный PIN-код.

Это невероятно, я же знал ПИН. В последние месяцы я вводил его не менее десятка раз, не подглядывая в листок. Хорошо, вероятно, это 554145.

Введен неправильный PIN-код.

Я посмотрел на крошечный монохромный дисплей биткоин кошелька и обратил внимание, что на нем появился таймер обратного отсчета. Мне пришлось подождать, прежде чем я смог попробовать другой ПИН-код. Мое сердце затрепетало. Я пошел на сайт разработчика аппаратного кошелька, чтобы узнать о задержке ПИН-кода и узнал для себя нечто ужасающее: задержка по времени удваивалась каждый раз, когда вводился неправильный ПИН-код. На сайте было написано: «Количество ошибочных вводов ПИН-кода хранится в памяти Trezor. Это означает, что время ожидания никогда не обнулится. Вор будет вынужден потратить всю свою жизнь на попытки ввода ПИН-кода. Тем временем у вас будет достаточно времени, чтобы перевести средства на новое устройство или кошелек, используя кодовые слова».

Проблема заключалась в том, что я попал в положение вора, пытаясь украсть свои собственные биткоины из своего Trezor. Я чувствовал себя ужасно. После шестой неправильной попытки у меня началась настоящая паника — я практически попрощался со своими 7,4 биткоинами.

Я перебрал несколько вариантов, и каждый раз, когда я терпел неудачу, мое чувство ужаса росло пропорционально задержке ввода ПИН-кода, которая уже составляла 2048 секунд или примерно 34 минут. Я взял калькулятор и посчитал, что буду мертв после 31-й попытки (это 34 года). На сто попыток уйдет 80 секстильонов лет.

Я рассказал все Карле, объяснил, что не помню ПИН-код, и что каждая неправильная попытка оборачивается штрафом. Она спросила меня, сохранил ли я ПИН-код в своем приложении 1Password (приложение для безопасного пароля). Я отвел, что нет. Когда она спросила меня, почему, я не нашелся, что сказать.

Я знал, что мое возбужденное состояние усиливает риск ошибки, я уже сам начал путаться в вариантах ПИН-кода. Я пошел на кухню, чтобы нарезать овощи для карри, которые мы готовили на ужин. Но так и не смог переключиться. Пока я нарезал кубиками картофель, мысленно я постоянно перебирал цифры. Через некоторое время в голову пришел номер 55144545. Вот и все! Я уже был на пути с кухни в кабинет. У Trezor все еще шел обратный отсчет нескольких сотен секунд. Через какое-то время я ввел название электронной почты и напечатал «55144545».

Введен неправильный PIN-код. Подождите 4 096 секунд, чтобы продолжить…

Я не спал всю ночь. Уснув лишь на время, мне приснился кошмар про комбинации чисел 1, 4 и 5. Меня не столько волновала сумма в $ 8000, сколько осознание своей глупости, из-за которой я потерял листок и забыл ПИН-код. Я возненавидел тот факт, что биткоины увеличиваются в стоимости, а я не имею к ним доступа. Если бы я вспомнил ПИН-код, Trezor насмехался бы надо мной всю оставшуюся жизнь.

Поиск: 5 апреля 2017 года: 7.4 BTC = $ 8 325

Утром я начал искать другие способы вернуть свои биткоины, которые не связаны со вводом ПИН-кода или словами для восстановления. Если бы я потерял ПИН-код моей дебетовой карты, я бы мог связаться с банком и в конечном счете снова получить доступ к средствам. С биткоином все по-другому. Никто не владеет сетью транзакций биткоина. Вместо этого тысячи компьютеров по всему миру запускают программное обеспечение, которое проверяет транзакции системы. Каждому разрешено устанавливать программное обеспечение биткоина на свой компьютер и участвовать в нем. Этот децентрализованный принцип сети имеет важную составляющую, которую можно обозначить как «ваши ошибки — ваши проблемы».

Я написал TREZOR на Reddit, вот мой текст:

Не стесняйтесь насмехаться, я этого заслуживаю. Я написал свой ПИН-код и слова для восстановления на одном и том же листе бумаги. Я планировал выгравировать их на листе металла и спрятать его, но до реализации плана клининговая служба выкинула листок. Теперь я не могу вспомнить свой пароль, позади уже 13 неудачных попыток. Сейчас я вынужден ждать более часа, чтобы сделать еще одно предположение. Очень скоро между новыми версиями будут проходить годы. Можно ли что-то сделать, или пора прощаться с моими 7,5 биткоинами?

Большинство ответов были сочувствующими и бесполезными. Один человек сказал, что я должен связаться с Wallet Recovery Services, который выполняет дешифровку на зашифрованных кошельках Биткойн. Я написал им по электронной почте и попросил о помощи. «Знаток биткоина» ответил на следующий день:

Я хотел бы помочь вам … но я не вижу решения вашей проблемы. Вам нужно либо правильно угадать свой ПИН, либо найти слова.

Ответ на форуме Reddit от пользователя zero404cool был интригующим:

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

Еще он добавил:

Храни свой Trezor в безопасном месте. Ничего с ним не делай. Нет необходимости пробовать разные ПИН-коды. Вы можете вернуть себе биткоины.

Другие пользователи Reddit решили, что zero404cool темнит. Кто-то даже предположил, что он может быть мошенником; кто-то обвинил его в распространении «FUD» (страх, неопределенность и сомнения) о безопасности Trezor. Я был склонен согласиться с ними, особенно после прочтения статей о неуязвимости Trezor для хакеров. Разработчик с уверенностью заявлял, что Trezor готов опровергнуть любую попытку скомпрометировать сервис. Самый простой способ взломать его — установить неофициальную прошивку, предназначенную для разблокировки ПИН-кода и ключевых слов, но эти шаги обнулят хранилище Trezor, — написано на сайте.

Чтобы убедиться в этом, я отправил в Trezor емейл и объяснил свое затруднительное положение. Представитель службы поддержки отправил мне письмо со ссылкой на «справочник по чрезвычайным ситуациям», ни один из пунктов которого не применим к моей чрезвычайной ситуации. Также она написала:

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

Ситуация начинала казаться безнадежной. Тем временем zero404cool прислал мне на Reddit сообщение с предложением о помощи:

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

Проблема в том, что я вас не знаю. Я не знаю, реальна ли эта исторяи или нет. Я даже не знаю, действительно ли ты тот человек, которому принадлежит Trezor. Например, вы можете попросить взломать чужое устройство. Этого я не могу допустить.

Я думаю, что мы должны заручиться взаимным доверием.

Я ответил zero404cool, чтобы он погуглил мое имя и сам решил, можно ли он мне доверять. Он увидит, что я был одним из первых редакторов Wired, который появился в 1993 году. Я основал популярный сайт Boing Boing, у которого 5 миллионов уникальных посетителей. Я был главным редактором журнала технологических проектов Make. Через некоторое время zero404cool ответил:

Привет, Марк. Кажется, вы c техникой на «ты». Думаю, вы можете продолжить этот квест самостоятельно? В настоящий момент я немного занят, надеюсь, для вас это не вопрос жизни или смерти?

Я ответил, что не тороплюсь. После этого я с ним не общался.

Гипнолог: 25 мая 2017 года: 7.4 BTC = $ 12 861

«Гипноз позволяет нам восстановить всю информацию», — сказал Мишель Гузи. Я сидел на откидном стуле в ее офисе в Энсино, укрытый одеялом и усиленно концентрировался. Моя жена, журналист и редактор, несколько лет назад взяла интервью у Мишель для статьи о гипнозе в кино. Я так отчаянно хотел вспомнить свой ПИН-код, что напросился к ней на встречу.

Мишель попросил меня повторить опыт написания моего ПИН на оранжевом листе бумаги. Она положила бумагу в ящик стола, заставила меня сесть, открыть ящик и посмотреть на бумагу. Она объяснила, что мы пытаемся использовать разные методы для поиска в памяти ПИН-кода.

Занятия не принесли какого-либо результата, но Мишель сказала, что мы готовим мое подсознание к предстоящему гипнозу. Она приглушила свет и заговорила шепотом. Она попросила меня представить, что я спускаюсь по длинному длинному эскалатору и все глубже и глубже погружаюсь в транс. Поездка заняла не менее 15 минут. Я чувствовал себя расслабленным, но я не чувствовал себя загипнотизированным. Я решил, что буду стараться, вдруг это все же сработает.

После четырех часов, проведенных в ее офисе я решил, что ПИН-код был 5514455.

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

Последняя догадка: 12 августа 2017 года: 7.4 BTC = $ 28 749

Я пытался перестать думать о биткоинах, но не мог ничего с собой поделать. В довершении всего за лето его цена резко упала. В июле этого года эксцентричный разработчик программного обеспечения Джон МакАфи написал в Twitter, что через три года один биткоин будет стоить более $ 500 000, а «если нет, я съем свой член в эфире федерального канала». Я не верил, что цена поднимется настолько эффектно (или что МакАфи выполнит своеобещание), но так или иначе это подстегнуло меня.

Читайте также:   Главные новости прошедшей недели (15-21 октября)

Я не мог смириться с тем, что я без труда вспоминал это число, а теперь не могу извлечь его из закоулков сознания. Гипноз, медитации и самоедство нисколько не помогли. Я чувствовал себя беспомощным. Мои дочери подкрадывались и пытались ошарашить меня вопросом: «Быстро, какой ПИН?» И это не помогало. Несколько ночей  подряд я лежал в постели и просил мой мозг вспомнить ПИН-код. Увы, на утро я просыпался ни с чем. Каждый новый ПИН был не лучше или хуже, чем любой другой. Биткойн рос в цене и отдалялся от меня.

Вечером мы с Карлой складывали белье, как в комнату вошла Сарина. Летом она вернулась из колледжа домой. «Я знаю пароль! — сказала она. — Это 55445!»

«С чего ты так решила?» — спросил я.

«Ну, ты иногда используешь пароль 5054, но поскольку у Trezor нет нуля, ты просто пропустил цифру. Вряд ли бы ты переделал его на 5154, скорее всего это были просто цифры 554 с добавлением 45». (Иногда я начинаю свои пароли с 45, потому что это число имеет для меня большое значение).

Карла посмотрела на меня и сказала: «Судя по искорке в твоих глазах, это может быть он». Я и сам поверил в то, что она может быть права.

Сарина сказала: «Если это не 55445, то это 554455, потому что иногда ты добавляешь 455 в конце пароля».

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

На утро я решил попробовать. По моим ощущениям этот пароль был надежнее других. Я включил Trezor. Мне пришлось ждать 16 384 секунды или около четырех с половиной часов, прежде чем я смог ввести ПИН-код. Это было в воскресенье, как сейчас помню, я делал что-то по дому.

Как только я запустил Trezor, то попросил Карлу, Сарину и Джейн собраться за компьютером. Мне нужна была моральная поддержка при вводе пароля. Если бы ПИН оказался верным, мы порадовались бы все вместе.

Я сидел на стуле, а Джейн, Сарина и Карла стояли вокруг меня. Мое сердце так сильно билось, что я чувствовал пульсацию в голове. Я пытался контролировать дыхание. Я медленно ввел ПИН. Каждый раз, когда я вводил цифру, я ждал, пока один из членов моей семьи подтвердит, что цифра верная. После ввода 55445 я навел курсор мыши на кнопку Enter. «Готовы?» — спросил я. Все сказали «да». Я кликнул.

Введен неправильный PIN-код. Подождите 32 768 секунд, чтобы продолжить …

«Черт», — выругался я.

«Все в порядке, папочка, — сказала Сарина. — Когда мы можем попробовать 554455?»

Я открыл свой калькулятор.

«Через девять часов».

Карла положила руку мне на плечо. «Если и это не сработает, ты должен просто сломать его», — сказала она. Это показалось правильным. Скоро мы дойдем до того, что в течение нескольких месяцев мне придется подключить Trezor к питанию (отсчет снова активируется при его отключении), а потом годы и десятилетия. Электроэнергия в нашем доме, в котором мы живем уже 10 лет, отключалась раз в год из-за дождя или технического обслуживания DWP. Я мог бы купить бесперебойное электропитание, чтобы сохранить Trezor в рабочем состоянии на многие годы, однако я жаждал разрешения ситуации.

На следующее утро перед завтраком я вошел в кабинет один и ввел 554455.

Введен неправильный PIN-код. Подождите 65 536 секунд, чтобы продолжить …

Емейл: 16 августа 2017 года: 7.4 BTC = $ 32 390

Воспоминания о моем забытом ПИН-коде стало чем-то вроде звона в ушах — всегда на заднем плане, его трудно игнорировать и он постоянно раздражает. Что случилось с моим мозгом? Смог ли я вспомнить ПИН-код, если бы мне было 20 или 30 лет? И вот мне пришел емейл от Satoshi Labs, разработчика Trezor.

В темы указано «Обновление безопасности прошивки TREZOR 1.5.2».

В сообщении говорилось, что обновление предназначено для устранения «проблемы безопасности, которая затрагивает все устройства с версиями прошивки ниже 1.5.2». И далее:

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

Может ли быть изъян у пуленепробиваемой защиты Trezor? Я решил почитать, что пользователи говорят об этом. Первое, что я нашел, это ссылку на пост на Medium, в котором пользователь уверял, что знает, как взломать Trezor, используя бреши в безопасности. Пост назывался «Trezor: глюки в безопасности раскрывают ваши приватные ключи!»

Автор добавил фотографии Trezor и скрин файлового дампа с 24 ключевыми словами и ПИН-кодом. Автор также добавил ссылку на обычную прошивку Trezor, но не указал, как ее использовать. Я прочитал статью пару раз, прежде чем взглянуть на имя автора: Doshay Zero404Cool. Это был тот самый человек, с которым я переписывался в Reddit пятью месяцами ранее! Я посмотрел личную переписку с zero404cool и обнаружил от него еще одно сообщение, которое было отправлено спустя пару месяцев после нашего последнего разговора:

Привет, вы вспомнили свой ПИН-код? Если нет, то потерянные средства настолько незначительные, что не стоят усилий на их восстановление. Даже по сегодняшним ценам, возможно, я сделаю это за вознаграждение 50% / 50%…

Я решил принять предложение zero404cool, но сначала  решил сначала обратиться к эксперту по биткоину, которого я знал много лет. Это Андреас М. Антонопулос, автор The Internet of Money. Я несколько раз брал интервью у Андреаса для Boing Boing и Institute for the Future, он очень уважаемый консультант по безопасности в экосистеме биткоина.

Он знал о биткоине больше, чем кто бы то ни было. Я написал ему по электронной почте 20 августа и подробно описал ситуацию. Я спросил, можно ли с помощью этой бреши вернуть мои биткоины. «Пробел, описанный в этой статье, на самом деле существует, и его можно использовать для восстановления доступа, поскольку вы не обновили прошивку до 1.5.2, которая решает эту проблему». Мне повезло, что я не обновил мой Trezor до 1.5.2, потому что обновление прошивки навсегда лишило бы меня возможности восстановить данные.

Андреас также написал, что знает подростка «проделавшего потрясающую работу над Trezor и его программным обеспечением». Ребенку было 15 лет, его звали Салем Рашид. Он жил в Великобритании. Андреас никогда не встречался с ним, но много времени проводил с ним в Слэке. Сатоши Лабс, разработчик Trezor, также знал Салема и даже доверил ему несколько экспериментальных разработок Trezor. Андреас предложил нам пообщаться с Салемом в Telegram.

Через несколько минут Андреас познакомил меня с Салемом:

«Марк — владелец хорошо защищенного Trezor, надеющийся на чудо».

Андреас изложил план: Салем инициализирует один из его Trezor с идентичной прошивкой, попрактикуйся на нем, пока не перепрошьет ее, а затем оправит мне программу для взлома через Telegram. Мне нудно было купить второй Trezor, отрепетировать его установку и взлом. Затем, как сказал Андреас, я «взломал бы целевое устройство» (мой оригинальный Трезор с 7,4 биткоинами).

Но прежде чем двигаться дальше, Андреас сказал: «Лучше всего начать с определения вознаграждения и согласования терминов. В конце концов вероятность провала была выше, чем у успешного исхода.

Я сказал Салему, что мне нужны пошаговые видео-инструкции, как и что делать. Я предложил ему 0.05 BTC ($ 200) и еще 0,2 BTC ($ 800), если мне удастся вернуть мои биткоины. Салем согласился с условиями. Я добавил: «Если вы потратите много времени на подготовку инструкций, дайте мне знать, мы обсудим увеличение вознаграждения».

Я заказал на Amazon второй Trezor. Салем сказал мне, что мне нужна операционная система с открытым исходным кодом Ubuntu Linux. Я установил его на старый MacBook Air.

Оплата: 24 августа 2017 года: 7.4 BTC = $ 32 387

Салем:

Привет, Марк. Видео готово, но я хотел бы немного поднять цену по нескольким причинам:

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

Я:

Справедливо.

Салим:

В итоге могу ли я рассчитывать на 0,35 BTC за видео и прошивку, а в случае успеха еще на 0,5 BTC?

В общей сложности 0,85 BTC.

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

Салему попросил $ 3700, что почти в четыре раза больше первоначальной договоренности, но я подумал, что это того стоит (и это было намного выгоднее, чем предлагал zero404cool). Если бы я мог снова увидеть свой ПИН-код, который Trezor, Wallet Recovery Services, пользователи Reddit и остальные пользователи посчитали безвозвратно утерянным, я бы с радостью заплатил Салему. Это было бы, как сказал Андреас, чудо.

Я:

Вы протестировали свою прошивку на Trezor, она совпадает с моей?

Салем:

В видео я установил 1.4.0, настроил его, а затем несколько раз ввел неправильный ПИН-код (все, как у вас).

Я:

Хорошо, договорились.

Салем дал мне свой биткоин адрес, и я отправил ему 0,35 BTC через онлайн-кошелек, который я установил пару месяцев назад. Через минуту он загрузил два файла, один из которых называется exploit.bin, а другой — 10-минутное видео. Видео отображало дисплей его компьютера с линейными командами Linux, которые он вводил в окне терминала. Звука не было. В правом нижнем углу видео было изображение его Trezor, записанного на рабочий стол.

Я очень мало знаю о линейных командах Linux, поэтому то, что я наблюдал, было непонятным. Первая часть видео была просто инструкцией по инициализации тестового Trezor и понижению прошивки до версии 1.4.0, для этого как раз был куплен второй Trezor. Фактически инструкции по установке и использованию прошивки для взлома были в последних трех минутах видео.

Я попросил Салема объяснить, как работает его хакерская программа. Он сказал мне, что когда Trezor включен, его прошивка (в основном, операционная система Trezor) копирует свой ПИН-код и 24 слова в SRAM Trezor (статическая память, которую Trezor использует для хранения информации) в незашифрованном виде. Если вы выполняете так называемый «мягкий сброс» на устройстве, провоцируя замыкание двух штырьков на  плате, вы можете установить прошивку, не стирая память SRAM. Это позволит увидеть ПИН-код.

Мой второй Trezor прибыл в пятницу. Мне очень хотелось начать как можно быстрее, но пришлось отложить все до субботы, потому что в тот день пришлось записывать кучу подкастов. Единственное, что я сделал в пятницу, — это вскрыл Trezor, чтобы получить доступ к плате. Я использовал канцелярский нож, медленно и осторожно делал надрезы вдоль шва, пока не разобрал. Несмотря на простоту действий, я вспотел и совершенно вымотался. Как только я открыл Trezor, я включил его, чтобы убедиться, что он подключен к питанию. Все работало.

Взлом: 26 августа 2017 года: 7.4 BTC = $ 32 208

В пятницу вечером я хорошо выспался. Карла и Сарина вышли из дома. Джейн играла на гавайской гитаре в своей комнате. Я расчистил свой небольшой письменный стол, поставил MacBook Air под управлением Linux и подключил USB-кабель к Trezor. Я записал его на рабочий стол, как это было у Салема.

Я снова посмотрел видео Салема, на этот раз записывая команды Linux, которые он использовал в текстовом файле, чтобы потом скопировать и вставить их в окно терминала. В какой-то момент в видео Салем перегрузил свой Trezor, закоротив два штыря на плате, при этом он использовал пинцет и одновременное нажатие двух кнопок Trezor. Детали были крошечным, и я знал, что мои руки будут дрожать слишком сильно, чтобы использовать пинцет. Вместо этого я собрал пару проводов и кнопку, чтобы упростить сброс Trezor.

Следуя инструкциям, я успешно понизил прошивку до версии 1.4.0. Я создал ПИН (2468) и записал 24 сгенеренных слова. Затем я установил новую прошивку, ввел около десятка различных команд Linux, нажал кнопки мягкого сброса Trezor, а затем ввел еще несколько команд. Это сработало! Trezor был успешно взломан, и я увидел ключевые слова для восстановления и ПИК-код на мониторе компьютера. Я прошел этот процесс еще шесть раз, что заняло все утро и большую часть дня. Я был изумлен, когда увидел на часах время 15:45. Я пропустил обед и вечерний эспрессо. И мне совсем не хотелось ни есть, ни пить.

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

Единственная вещь, которая заставляла меня нервничать несколько дней подряд — моя неуверенность в том, добавлял ли я кодовую фразу поверх своего ПИН-кода, что было дополнительной функцией безопасности Trezor. Спустя пять месяцев я уже не был уверен в этом. Салеем и Андреас сказали, что, если у моего Trezor есть такая фраза, то блокировку невозможно преодолеть. Меня бросало одновременно и в жар, и озноб, когда я вспоминал об этом.

Я включил Trezor и вошел:

sudo trezorctl get_features

На экране отобразилась информацию о состоянии Trezor. Я отчаянно водил глазами по экрану, пока не увидел слова:

passphrase_protection: false

Да! Это то, что я хотел увидеть. Теперь почти ничего не могло остановить меня.

Когда пришло время нажать кнопки на Trezor, мои пальцы не послушались меня. «Я так сильно трясусь, — сказала я Джейн. Мне пришлось на минуту прерваться и присесть. Я попробовал еще раз и снова потерпел неудачу. С третьей попытки я смог нажать все три кнопки. Произошла перезагрузка Trezor, которая позволяла установить exploit.bin.

Я набрал следующую команду, чтобы загрузить специальную прошивку Салема:

sudo trezorctl firmware_update -f exploit.bin

Эта команда удаляла существующую прошивку и устанавливала версию Салема. На дисплее Trezor появилось сообщение:

Новая прошивка успешно установлена. Теперь вы можете отключить TREZOR.

Именно тут я и не должен был отключать Trezor. (Я вспомнил предостережение Андреаса: «Потеря мощности во время загрузки прошивки катастрофична, вы потеряете все свои данные».) Вместо этого я нажал маленькую кнопку, которую я подключил к печатной плате для мягкого сброса . На мониторе появился восклицательный знак, вписанный в треугольник:

ПРЕДУПРЕЖДЕНИЕ! Обнаружено нелицензионное программное обеспечение

45455544

Спасибо за предупреждение, подумал я. Это именно то, что я пытался сделать: запустить нелицензионное программное обеспечение на эту проклятую вещь. Я нажал одну из кнопок Trezor, чтобы подтвердить, что я хочу продолжить, программное обеспечение Сэлема было установлено на Trezor. Точка невозврата пройдена. Либо сработает, либо Trezor будет обнулен, так что даже всплывание ПИН-код в памяти не поможет вернуть мои биткоины. Теперь мне нужно было ввести несколько команд, чтобы прочитать содержимое статического ОЗУ Trezor (часть, где находятся 24 слова и ПИН).

«Хорошо, — сказал я Джейн, когда я ввел команду, — сейчас мы все увидим». Я склонился над клавиатурой и нажал кнопку ввода.

Я откинулся назад и тихо сказал: «Боже! Это сработало.»

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

Следуя инструкциям Салема, я скопировал строку текста из окна терминала и добавил ее в команду Linux. ПИН-код появился мгновенно.

45455544

По этой ссылке можно посмотреть видео того, как я это сделал.

Месяцы душераздирающей тревоги отпали, словно большие комья грязи, которые прилипли к моим плечам. Я встал, поднял руки и начал смеяться. Я победил Trezor с его жестокой функцией отложенного ввода ПИН-кода, и превзошел часть моего мозга, которая думала, что может сохранить секрет от своего владельца. К черту вас обоих! Я победил!