162012–2014

Trezor: ключі від Біткоїна в кишеньковому комп'ютері

Марек Палатінус і Павол Руснак шукали спосіб підписувати платежі на комп'ютері, якому не потрібно довіряти приватний ключ. З прототипу в празькому хакерспейсі виникла перша генерація апаратних гаманців.

Ранні біткоїн-гаманці ставили перед користувачами неприємний вибір. Приватні ключі можна було мати на комп'ютері, підключеному до інтернету, і сподіватися, що його не нападе малвар, або ховати їх так ретельно, що з ними не можна було б комфортно платити. Марек «Slush» Палатінус і Павол «Stick» Руснак шукали третій шлях: малий одноцільовий комп'ютер, який ключ ніколи не видасть, але на вимогу підписує правильно відображену транзакцію. Перші прототипи виникли в празькому хакерспейсі Brmlab на Raspberry Pi. 29 липня 2014 року почався продаж Trezor Model One. Пристрій не зробив з зберігання безпомилковий процес, але переніс її найчутливішу частину з звичайного комп'ютера до об'єкта, який міг користувач тримати, контролювати і резервувати.

01

Проблема не була Біткоїн, а комп'ютер навколо нього

Біткоїн дає власникові можливість контролювати монети підписом без згоди банку. Та сама властивість однак змінює витік ключа на кінцеву втрату. Якщо малвар копіює приватний ключ, може створити дійсну транзакцію і мережа не має відділення рекламації, яке її поверне. Звичайний домашній комп'ютер тим часом запускає браузер, електронну пошту, документи та програми з багатьох джерел.

Ранні інструкції пропонували паперові гаманці, шифровані диски або комп'ютери, відключені від мережі. Ці рішення могли зменшити площу атаки, але збільшували вимоги до правильного створення, резервування і підписання. Історії Джеймса Хауелса і Стефана Томаса показали протилежну межу: секрети можна захищати так успішно, що до них не може дістатися навіть їхній власник.

Палатінус уже знав, що означає керувати Mining Pool і які ризики мають онлайнові біткоїн-сервіси. Разом із Руснаком він шукав відповідь на практичне запитання: як відокремити ключ підпису від комп’ютера, який можуть зламати, і не перетворити кожну оплату на складне технічне завдання? Користувач і далі готував би транзакцію в гаманці на комп’ютері, але підтверджував би її на окремому пристрої.

Так виник принцип апаратної гаманці. Хост-комп'ютер надішле пристрою непідписані дані. Пристрій виведе необхідний ключ, відобразить людині суттєві дані і після підтвердження поверне підпис. Приватний матеріал залишається всередині. Нападений комп'ютер може брехати, і тому власний дисплей і фізичне підтвердження є частиною безпеки моделі, а не дизайнерською прикрасою.

Мета не була видалити довіру до всього апаратного та програмного забезпечення. Була скромнішою і практичнішою: зменшити кількість коду і ситуацій, в яких секретний ключ виставляється. Одноцільове пристрій можна контролювати краще, ніж весь ноутбук, і його обмежене інтерфейс дає користувачеві шанс побачити, що він насправді підписує.

Звичайний комп'ютер має одночасно переглядати веб, відкривати вкладення, встановлювати драйвери та запускати тисячі фрагментів коду, які не мають стосунку до Bitcoin. Кожен із них розширює простір, в якому нападник може чекати моменту підпису. Прилад призначення для одного завдання не скасує цей світ, але відокремить найчутливішу операцію від його хаосу. Транзакцію готують зовні, всередині її підписують, а приватний ключ не повинен залишати прилад. Сенс дисплея та кнопок — надати користувачеві незалежний канал: комп'ютер може стверджувати одну адресу, але вирішальне підтвердження відбувається на екрані, який контролює сама гаманець.

02

Brmlab, Raspberry Pi і дві кнопки

Перші спроби не виглядали як пізніше споживчий продукт. В Brmlab Палатінус і Руснак будували додаткові плати до Raspberry Pi, доповнювали малий дисплей, кнопки і USB-комунікацію. їм потрібно було перевірити, що весь потік може функціонувати: пристрій безпечно створює ключі, відображає запит і підписує без їхнього витоку.

Хакерспейс надав середовище, в якому апаратне та програмне забезпечення могли змінюватися одночасно. Помилка в розкладці кнопок не була відділена від помилки в протоколі; обидва могли привести користувача до затвердження чогось іншого, ніж він мав на увазі. Застосовність не була останньою шарою над криптографією. Була умовою, щоб криптографія захищала справжню людину.

Дві кнопки виражали важливу межу. Комп'ютер міг запитати пристрій на підпис, але кінцеве підтвердження мало прийти фізично. Дисплей же створював другий канал, на якому можна було перевірити адресу і суму. Якщо нападений ноутбук змінив одержувача, правильно застосований Trezor мав показати розбіжність.

З прототипу виникла компанія SatoshiLabs. Розробники мали вирішувати виробництво, прошивку, оновлення, сумісність гаманців і підтримку людей, які нічого не знали про ієрархічні ключі. Перехід від плати в хакерспейсі до продукту означав, що безпекову ідею повинні освоїти не тільки її автори, але і людина, яка відкриває коробку вдома.

Trezor сам себе називає першим апаратним гаманцем у світі. Точніше це першість слід віднести до виробника і конкретної визначення продукту: одноцільового комерційного пристрою для зберігання ключів і затвердження біткоїн-транзакцій. Історія безпекових токенів ширша, але Model One створив категорію, яку біткоїн-ринок почав наслідувати.

03

Пристрій, який можна відновити зі слів

Trezor Model One був офіційно представлений 29 липня 2014 року. Малий дисплей, дві кнопки і USB-кабель ховали суттєвішу зміну: гаманець уже не мусив бути тотожним з одним шматком апаратного забезпечення. Якщо пристрій загубився або зламався, користувач міг відновити ключі зі сету слів.

Марек Палатінус і Павол Руснак є співавторами BIP 39. Пропозиція описує, як подати випадково згенеровані дані у вигляді списку слів і вивести з нього seed для гаманця. Seed Phrase дала змогу зберігати основу багатьох ключів в одному записі замість копіювання кожного ключа окремо. Якщо користувач також застосовує passphrase, для відновлення потрібна й вона. Зручніша резервна копія має й зворотний бік: кожен, хто отримає потрібні секретні дані, може відновити гаманець.

BIP 44 далі описав ієрархію цілей, валют і рахунків над детерміністичною гаманцем. Стандарти дозволили, щоб сумісний софт міг з одного сіду знову знайти ту саму структуру адрес. Відновлення стало таким чином більш застосовним, але також залежним від правильного розуміння деривації і підтримки окремих застосунків.

Пристрій таким чином захищав ключ під час звичайного використання, тоді як паперова або металева резервна копія захищала можливість відновлення. Без резервної копії зруйнований Trezor міг означати втрату. З відкритою резервною копією нападник міг обійти пристрій повністю. Безпека не перестала спиратися на людину; просто вона отримала ясніше розділення ролей.

Ця модель допомогла поширити власну зберігання поза вузьким колом техніків. Користувач міг тримати довгострокові засоби і тим часом інколи підписувати платіж без імпорту сіду в онлайн-комп'ютер. Продукт не спрощував Біткоїн тим, що б ховав відповідальність. Він намагався її організувати в кроки, які можна розумно дотримуватися.

04

Trezor не є монетою чи страховкою

Апаратна гаманець не зберігає біткоїни як монети в сейфі. Вона зберігає секрети, необхідні для підписання переводу вихідних даних, записаних в блокчейні. Коли користувач знищує пристрій, але має правильний сід, він може відновити засоби. Коли сід отримує чужа людина, вона може пересунути засоби без оригінального пристрою.

Анаж власний дисплей не допоможе, якщо людина дані не читає. Підробна застосунок може відобразити правильну адресу на комп'ютері і надіслати іншу до пристрою; оборона функціонує лише тоді, коли користувач порівнює адресу на довірливому дисплеї. Безпековий елемент є пропозицією контролю, не автоматичною гарантією правильного рішення.

Виробник і спільнота й далі мають усувати помилки прошивки, дбати про безпеку ланцюжка постачання та оновлення. Відкритий код дає змогу перевірити, як працює пристрій, але це не означає, що кожен власник повинен сам перевіряти його рядок за рядком. Self-Custody залежить і від практики користування, і від довіри до обраних інструментів. Пристрій перебрав частину роботи, але відповідальність користувача нікуди не зникла.

Історія Trezor пропонує інший погляд на розповіді про втрачені диски й забуті паролі. Його творці не очікували, що люди перестануть помилятися. Вони шукали інструмент, який допоможе запобігти одним помилкам і вчасно помітити інші. Водночас його використання передбачає обов’язки: записати слова відновлення, захистити цю резервну копію від пожежі та сторонніх очей і потренуватися відновлювати гаманець до того, як виникне нагальна потреба.

З плати в празькому хакерспейсі став глобальний продукт, оскільки вирішував проблему, яка росла разом з вартістю мережі. Чим більше було чого захищати, тим менше прийнятна була вибір між онлайн-ключем і незручним архівом. Trezor не видалить ризик приватного ключа. Він дав йому фізичне інтерфейс, на якому людина може свою відповідальність дійсно виконувати.

Такий розподіл відповідальності має й незручний бік. Виробник може опублікувати проєкт і виправлення, але не може за користувача безпечно зберегти відновлювальні слова, перевірити кожну адресу чи розпізнати шахрайське прохання ввести сид. Прилад захищає певний момент у процесі; безпека виникає лише поєднанням перевіреного апаратного забезпечення, надійного програмного забезпечення, фізичної резервної копії та уважної людини. Trezor — це не коробочка, яка скасувала потребу розуміти власне зберігання. Це спроба перенести абстрактну криптографічну відповідальність у кілька видимих дій, у яких помилку легше розпізнати раніше, ніж вона стане незворотною.

Atlas

Люди й поняття в Атласі

CZ·02TrezorSLUSHМарек «Slush» ПалатінусSTICKПавол «Stick» РуснакCZ·01SatoshiLabsHWHardware WalletKEYPrivate KeySEEDSeed PhraseKEYSСамостійне зберігання
  1. 01
    Trezor — Десятиріччя піонерства

    Імена засновників, Brmlab, прототипи на Raspberry Pi і дата виходу Model One.

  2. 02
    Trezor — Про Trezor

    Корпоративна хронологія виникнення, BIP 39, BIP 44 і продукту Model One.

  3. 03
    BIP 39 — Мнемонічний код для генерації детерміністичних ключів

    Технічна специфікація відновлювальних слів, її обсяг і безпекові межі.

  4. 04
    BIP 44 — Ієрархія рахунків для детерміністичних гаманців

    Технічна специфікація ієрархії рахунків, її авторами є Марек Палатінус і Павол Руснак.

Наступна історія · 17Bitcoin Beach: село, яке почало діяти до закону