// Криптовалюта

Как Создать Аппаратный Криптовалютный Кошелёк, как Trezor?

Содержание

#1. Преимущества кошельков Trezor
#2. Принцип работы аппаратных кошельков
#3. Подход, используемый Ledger
#4. Подход, используемый Trezor
#5. Три составляющие аппаратного кошелька
#6. Основные функции аппаратных кошельков
#7. Функции безопасности кошелька Trezor
#8. Архитектура и технологический стек
#9. Процесс разработки клона Trezor
#10. Стоимость создания клона Trezor

Появились вопросы?
Юрий Мусиенко
Автор статьи
Merehead занимается разработкой веб проектов

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

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

Преимущества кошельков Trezor

Комплектация Trezor T: наклейки, краткое руководство, карточка для бэкапа и кабель USB-c

Комплектация Trezor T: наклейки, краткое руководство, карточка для бэкапа и кабель USB-c. Источник.

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

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

Имеет универсальную совместимость с операционными системами семейств Windows, macOS и Linux. При этом программная платформа Trezor предоставляет своим клиентам все необходимое, чтобы в полной мере использовать современную криптографию для защиты криптовалютных активов. Устройство предоставляется с понятными инструкциями и USB-кабелем для подключения как к компьютеру, так и к смартфону, что делает кошелек Trezor не только максимально безопасным, но и максимально мобильным — доступная защита, всегда готовая к использованию.

Компактное и легкое устройство размером всего 64x39x10мм и весом 15г (модель Trezor T). Идеально подходит для ношения в портфеле, рюкзаке, сумочке, кошельке или кармане штанов. Устройство оснащено встроенным процессором на ядре ARM Cortex M3 с тактовой частотой 120 MHz, работающим на специально разработанной системе, и имеет OLED-экран на 240×240 пикселей, который можно поворачивать на 90, 180 и 270 градусов. Словом, Trezor — небольшой, легкий и удобный кошелек.

Принцип работы аппаратных кошельков

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

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

Однако внутренняя составляющая таких устройств обычно различается. Ledger и Trezor, ведущие поставщики аппаратных кошельков, используют два разных подхода к конструированию «железной» части своих устройств.

Подход, используемый Ledger

В основе аппаратной части устройств Ledger два ключевых чипа — модуль безопасности (ST31H320 в Ledger Nano S) и микроконтроллер (STM32F042K). Первый предназначен для безопасного хранения конфиденциальных криптоданных. В частности, такие чипы используют в банковских картах с чипом и PIN-кодом, а также в смартфонах, совместимых с Google Pay и Apple Pay.

Внутреннее устройство аппаратного криптокошелька Ledger Nano S

Внутреннее устройство аппаратного криптокошелька Ledger Nano S. Источник.

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

Подход, используемый Trezor

Кошельки Trezor устроены немного по-другому. Они не используют модуль безопасности, всеми процессами в кошельке управляет один чип — микроконтроллер общего назначения на базе 32-битной RISC-архитектуры Advanced RISC Machine (ARM). Этот чип отвечает как за обработку и хранение криптоданных, так и за управление USB-соединением, кнопками, дисплеем и всем остальным.

Внутреннее устройство аппаратного кошелька Trezor One

Внутреннее устройство аппаратного кошелька Trezor One. Источник.

Гипотетически такой подход к конструированию может упростить взлом программной части кошелька Trezor, что, в свою очередь, позволит получить доступ к закрытым ключам, спрятанным внутри flash-памяти микроконтроллера. Однако, как убедились эксперты WALLET.FAIL, инженеры SatoshiLabs (разработчики кошельков Trezor) отлично поработали над укреплением безопасности прошивки их кошелька, и, чтобы получить спрятанные в нем данные, нужно взламывать не софт, а «железо».

Три составляющие аппаратного кошелька

Разработка такого аппаратного кошелька для криптовалюты, как Trezor, подразумевает создание пользовательского интерфейса, «железа» и серверной части. Причем все три составляющие должны быть реализованы с максимальным уровнем надежности и безопасности. Вот что именно нужно сделать.

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

Аппаратные кошельки Trezor поддерживают три вида интерфейсов.

  • Trezor Suite. Это десктопное программное обеспечение для управления аппаратным кошельком через компьютер и ноутбук. Есть версии для Windows, macOS и Linux. После установки Suite система попросит пользователя либо создать, либо восстановить старую учетную запись и настроить ее работу.
  • Браузерное расширение. Это еще один интерфейс кошелька Trezor, реализованный в виде расширений для браузеров Chrome, Firefox и Brave. С его помощью можно настроить кошелек, совершать транзакции и управлять монетами на балансе своего кошелька. Другие браузеры не поддерживаются.
Мобильной версии кошелька Trezor нет (в Google Play не так давно можно было скачать приложение TREZOR Manager, но это скам), но компания обещает запустить его в самое ближайшее время. По крайней мере, в дорожной карте этот проект стоит в разделе Ready for implementation. Если пользователям нужно подключить свои кошельки Trezor к телефонам, они могут использовать Mycelium, Electrum, Sentinel, WallETH или другие решения. Вот официальная институция по этому вопросу.

Аппаратный модуль безопасности (HSM). «Железная» часть аппаратного кошелька Trezor — это аппаратный модуль безопасности (HSM) — сверхбезопасное устройство постоянной памяти с защитой от несанкционированного доступа, внутри которого обычно хранят аутентификационные данные, например, закрытые ключи.

Упрощенная схема аутентификации с помощью HSM

Упрощенная схема аутентификации с помощью HSM. Источник.

Поскольку Trezor — это платформа с открытым кодом, при разработке своего аппаратного кошелька наподобие Trezor, вы можете использовать их наработки и по «железу», и по софту. Дистрибутив и схемы можно найти на Github. Более того, аппаратную часть вы можете клонировать полностью, и тогда вам нужно будет реализовать только свой пользовательский интерфейс и серверную часть.

Серверная часть продукта. Это «сердце» будущей системы, которая будет отвечать за обработку, хранение и защиту данных криптовалютного кошелька. Реализовать Back-end можно как на собственных локальных серверах, так и на облаке — Amazon Web Services, Google Cloud или Microsoft Azure, что намного проще, быстрее и при этом также экономически целесообразнее.

Пример Back-end-архитектуры криптокошелька

Пример Back-end-архитектуры криптокошелька. Источник.

Основные функции аппаратных кошельков

Регистрация, вход. В случае аппаратного кошелька процесс регистрации нового пользователя подразумевает не только создание или подключение криптовалютного адреса (счета), но и настройку самого кошелька: установку, настройку безопасности, выбор PIN-кода, запись Seed-фразы и прочее. После первичной настройки вход будет происходить значительно быстрее и проще (подключение кошелька + PIN-код).

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

Управление криптовалютными активами. Этот модуль аппаратного кошелька отвечает за покупку и продажу криптовалютных активов. Для этого нужна интеграция с криптовалютной биржей или поставщиком ликвидности. Помимо этого, также будет нужна связь с платежными системами (PayPal, Stripe, банки), и реализация таких функций, как истории транзакций, список избранных адресов, QR-платежи и т. д.

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

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

  • уведомления — будут информировать пользователей о важных вещах;
  • Lightning-транзакции — практически моментальные и дешевые транзакции;
  • e-commerce-интеграции — покупка товаров и услуг в магазинах за крипту;
  • поддержка нескольких языков — можно расширить охват аудитории;
  • мультилистинг — поддержка большого количества криптовалют;
  • поддержка NFC — главный тренд криптовалютного рынка;
  • VIP-поддержка — круглосуточная помощь без выходных.

Функции безопасности кошелька Trezor

Следующее, на чем вам нужно сосредоточиться при разработке аппаратного кошелька наподобие Trezor, — обеспечение максимальной защиты денег и данных пользователей. Вот что вы для этого можете сделать, помимо стандартных вещей, таких как PIN-код, мультиподпись, резервное копирование, U2F и проверка IP.
  • Проверка прошивки. Trezor постоянно проверяет программу и предупреждает пользователей, если у прошивки нет подписи SatoshiLabs.
  • Ультразвуковое аппаратное уплотнение. Кошелек Trezor сварен с помощью ультразвуковой сварки, поэтому его очень сложно будет восстановить или как-то использовать в случае физического повреждения или вмешательства.
  • Процедура безопасного обновления. Загрузчик Trezor перед началом обновления проверяет подпись прошивки и только после этого стирает и обновляет память криптовалютного кошелька, интегрируя обновление софта.
  • Дополнительные парольные фразы. Trezor поддерживает парольные фразы BIP39, которые не запоминаются и не сохраняются на устройстве.
  • Загрузчик с защитой от записи. Загрузчик кошелька Trezor полностью защищен от записи, так как JTAG полностью отключен.

Архитектура и технологический стек

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

Системная архитектура аппаратного кошелька

Системная архитектура аппаратного кошелька. Источник.
Технический стек серверной части для разработки клона Trezor:
  • Смарт-контракты: виртуальная машина Ethereum или BSC.
  • Базы данных SQL: MySQL, PostgreSQL, MariaDB, MS SQL, Oracle.
  • DevOps: GitLab CI, TeamCity, GoCD Jenkins, WS CodeBuild, Terraform.
  • Базы данных NoSQL: MongoDB, Cassandra, DynamoDB.
  • Поисковые системы: Apache Solr, Elasticsearch.
  • Языки программирования: Java, PHP, Python.
  • Фреймворки: Spring, Symphony, Flask.
  • Кэш: Redis, Memcached.
Технический стек фронтенд-составляющей клона Trezor:
  • Языки программирования для веб: Angular.JS, React.JS и Vue.JS.
  • Языки программирования для App: Java, Kotlin для Android и Swift для iOS.
  • Архитектура: MVVM для Android и MVC, MVP, MVVM и VIPER для iOS.
  • IDE: Android Studio и Xcode для
  • SDK: Android SDK и iOS SDK.

Процесс разработки клона Trezor

Создавать аппаратный кошелек наподобие Trezor следует только с помощью кастомной разработки, поскольку только таким образом можно обеспечить должный уровень безопасности — главное ценностное предложение таких устройств. Причем это особенно важно, если ваш проект, как и Trezor, будет opensource-решением, так как в ином случае любой хакер сможет проверить его код, чтобы найти в нем «дыры» и украсть деньги и конфиденциальные данные пользователей платформы.

Вот как происходит процесс кастомной разработки клона Trezor.

  1. Определение целей. Анализ деловых и технических аспектов будущего продукта для понимания его бизнес-целей и задач. Изучение ниши и целевой аудитории, анализ преимуществ и недостатков конкурентов. Определение технических требований к продукту. Планирование процесса разработки.
  2. Разработка UI- / UX-дизайна. Создание информационной и системной архитектуры клона Trezor. Формирование фирменного стиля платформы. Оптимизация пользовательских потоков. Разработка интерактивных прототипов пользовательского интерфейса будущего кошелька.
  3. Написание программного кода. Реализация серверной части и пользовательского интерфейса в коде. Разработка смарт-контрактов. Интеграция со сторонними сервисами и приложениями.
  4. Тестирование продукта. Проверка функциональности, юзабилити, безопасности и производительности созданного программного обеспечения. Внутренний и внешний (независимый) аудит смарт-контрактов.
  5. Развертывание, релиз. Перемещение созданного продукта из рабочей в производственную среду. Если было создано мобильное приложение-клон Trezor, его добавляют в онлайн-маркетплейсы App Store и Google Play.
  6. Поддержка продукта. Обучение персонала. Организация службы поддержки. Сбор обратной связи. Устранение неполадок и улучшение кошелька.

Стоимость создания клона Trezor

Разработка программного обеспечения такого аппаратного кошелька для криптовалют, как Trezor, будет стоить от 25 до 72 тысяч долларов в зависимости от местоположения компании-разработчика. Стоимость производства USB-устройств зависит от сложности устройства, места производства и логистики. Обычно это от 5 до 20 долларов за штуку. Заказать их разработку и производство можно в Utimaco, Gemalto, Microsoft, Amazon, Thales, IBM и у других поставщиков HSM-решений.

Стоимость создания клона Trezor

Есть вопросы? Задайте их здесь

Имя *
Email *
Телефон
Ваш бюджет
Сообщение
TorMarket - маркетплейс с гибкой системой фильтрации и удобным кабинетом для поставщиков.

  Category: Криптовалюта 01/01/2022
Как Создать Аппаратный Кошелек для Криптовалюты, как Ledger?
В 2020 году мировой рынок аппаратных криптокошельков оценивался в 200 миллионов долларов, и ожидается, что к 2026 году он вырастет до 877 миллионов долларов, при этом среднегодовой темп роста составит около 30%. Это делает данную отрасль одной из самых перспективных для запуска новых проектов. Дальше мы расскажем, как это сделать — как разработать собственный аппаратный кошелек для криптовалют наподобие Ledger, Trezor, Cobo Vault или CoolWallet.
  Category: Криптовалюта 11/29/2022
Как Создать Крипто Кошелёк, как BlueWallet?
BlueWallet — это мобильный кошелек, предназначенный исключительно для хранения и управления биткоинами. Он создан на базе открытого исходного кода, имеет интуитивно понятный интерфейс и множество интересных функций. Главная из них — это поддержка Lightning-транзакций. В этой статье мы расскажем, как создать свой кошелек для криптовалюты наподобие BlueWallet и сколько ориентировочно стоит запуск подобного блокчейн-стартапа.
  Category: Криптовалюта 11/29/2022
ELLIPAL Clone Script – Как Создать Аппаратный Кошелек Криптовалют?
Основная часть сделок криптовалютного рынка выполняется через централизованные биржи. В числе популярных находятся Kuna и Binance, не менее известны Whitebit, Coinbase, Huobi, Exmo и другие.