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

Как Создать Крипто Кошелёк, как BlueWallet?

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

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

Проект BlueWallet был основан в 2017 году Игорем Корсаковым, Нуно Коэльо и Маркосом Родригесом. Они первыми создали кошелек для хранения и управления биткоинами, который поддерживал SegWit и предоставлял пользователям контроль над комиссиями. Так, в отличие от большинства кошельков того времени, BlueWallet позволял вручную устанавливать размер комиссии для ускорения подтверждения транзакции, а также изменять комиссию за транзакцию после ее инициализации и до подтверждения (так можно избежать проблемы, когда транзакция «застревала» из-за резкого повышения объема сделок и, следовательно, повышения комиссий).

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

Пользовательская панель инвестора обычно включает такие функции:

  • Регистрация. В BlueWallet пользователи могут создать три типа учетных записей: обычную, Lightning или Valt. В зависимости от выбранного варианта приложение будет выполнять роль обычного биткоин-кошелька, кошелька для отправки/получения токенов через Lightning Network и надежного хранилища монет соответственно. Ограничений на количество учетных записей нет.
  • Курс, коэффициент конверсии. Поскольку вы создаете приложение для покупки, продажи и передачи монет, то вам нужно реализовать функционал, который бы показывал текущий курс биткоина по отношению к доллару, евро, фунту, иене и другим фиатным валютам. В BlueWallet, помимо фиата, также можно узнать курс BTC по отношению к большинству популярных альткоинов.
  • Управление активами (платежи). Это те функции, которые позволят покупать, продавать, передать и принимать биткоины. Все это должно быть реализовано максимально просто и удобно, чтобы любой пользователь сразу понимал, что ему нужно нажать для достижения своих целей и что будет, если кликнуть по той или иной иконке. Кроме того, также нужны списки Избранных адресов и QR-коды (и функция QR-сканирования) для быстрых транзакций.
  • Push-уведомления. Очень важная функция для повышения вовлеченности и лояльности пользователей, так как она будет сообщать о важных событиях в сети и тем самым возвращать людей в приложение. Через push-уведомления можно сообщать об изменении баланса, завершении транзакции, запросах на оплату, обновлениях приложения, угрозе безопасности учетной записи и т. д.
  • Привязка счета. Также нужно добавить в ваш кошелек возможность привязать к учетной записи банковский счет или карту, PayPal, Google Pay, Apple Pay или другую платежную систему для ускорения сделок с фиатом.
  • Безопасность. Обычно на стороне клиента это такие функции, как TTL, двухфакторная аутентификация, аппаратная аутентификация, Seed-фраза и сканер биометрии. На стороне сервиса — защита от DDoS, SSRF, CSRF, HPP и прочие средства безопасности, включая аудит смарт-контрактов.
Пользовательская панель администратора включает такие функции:
  • Приборная панель. Это экран, с помощью которого администратор будет отслеживать текущее состояние платформы: объем транзакций, количество пользователей, количество сделок, состояние системы и прочее.
  • Управление платформой. Через этот экран администратор будет настраивать и управлять кошельком, в частности — контентом, монетизацией, внешними интеграциями, маркетингом, партнерскими программами и т. п.
  • Управление пользователями. Данный функционал позволит админу отслеживать статус пользователей кошелька и изменять, добавлять, удалять и восстанавливать их учетные записи, а также общаться с пользователями.
  • Отчетность и аналитика. Ваш кошелек будет генерировать массу данных, которые показывают состояние системы, поведение клиентов, эффективность маркетинга и прочее. Обычно такие данные изначально представлены в виде чисел и таблиц, которое сложно воспринимать и анализировать. Поэтому вам нужно подумать над тем, как представить их в виде диаграмм, графиков и дашбордов, которые позволят легко и просто отслеживать важные вещи.
  • Маркетинг. Это набор инструментов для привлечения новых пользователей, удержания текущих и повышения их лояльности. В частности, это могут быть специальные уведомления, рассылки, акции, программа лояльности и т. д.

Расширенные возможности BlueWallet

Если вы намерены создать клон-скрип BlueWallet, который понравится пользователям, то, помимо стандартных функций, вам также нужно реализовать расширенные возможности. Таких у этого криптовалютного кошелька много.

Multiple Wallets. В кошельке BlueWallet у пользователей есть возможность использовать сразу несколько учетных записей и быстро переключаться между ними. Очень удобная функция, если вам нужно разграничить адреса для трейдинга и холодного хранения. Или если вам нужна отдельная запись с мультиподписью.

Мультиподписи. Данная опция позволят обезопасить свои средства путем разделения управления активами между несколькими пользователями. Например, вы можете разделить управление между 10 пользователями и добавить условие, что для проведения транзакции нужно согласие 8 подписей. Данную опцию рекомендуют использовать для холодного хранения BTC и управления бизнес-адресами.

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

Lightning-кошельки. Еще один вид учетной записи, которую вам нужно будет реализовать в случае разработки такого криптовалютного кошелька, как BlueWallet. С ее помощью можно осуществлять очень быстрые и дешевые платежи в Lightning Network. Также через эту запись можно будет подключиться к своему Lightning-узлу.

Управление комиссиями. По умолчанию BlueWallet рассчитывает минимальный размер комиссии для подтверждения транзакции в течение одного, трех или десяти дней. Но пользователь может увеличивать комиссию для отправителя с помощью опции Child-Pays-For-Parent (CPFP) или «ускорять» уже отправленные, но неподтвержденные транзакции посредством опции Replace-By-Fee (RBF).

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

Пакетные биткоин-транзакции. Полезная функция, позволяющая сэкономить на комиссионных путем объединения нескольких платежей в одну транзакцию. Обычно такие практики используют биржи и прочие крупные сервисы. В BlueWallet эта опция реализована просто и удобно: при создании транзакции пользователь указывает адреса получателей и сумму, которую он желает отправить по каждому адресу.

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

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

Ground Control. Это служба уведомлений для биткоин-кошельков, которая позволяет получать push-уведомления сразу и на мобильные телефоны, и на настольные компьютеры или запустить свой сервер push-уведомлений.

Многие другое. Вот что еще стоит добавить в клон-скрипт BlueWallet:

  • PayJoin (или Pay-to-endpoint). Эта функция позволяет нарушить общую эвристику анализа цепочки, когда участники вместе создают транзакцию.
  • Монетный контроль. Дает возможность маркировать, замораживать или выбирать монеты (Unspent Transaction Output, или UTXO) для создания транзакций для улучшенного управления кошельком для криптовалют.
  • Подключение биткоин-узла. Собственно, как следует из названия, это функция для подключения к серверу биткоин-узла Electrum, ElectrumX или Electrs.
  • Пользовательская энтропия. Предоставляет ручное управление энтропией для создания биткоин-кошелька с помощью монет и игральных костей.
  • Поддержка Coldcard. Позволяет получать и отправлять транзакции, подписывая их в автономном режиме. Поддержка PSBT и Watch-only.
  • Поддержка Cobo Vault. Интеграция с аппаратным кошельком Cobo Vault, включая поддержку анимированных QR-кодов и прочих возможностей.
  • Мультивалюты. BlueWallet поддерживает более 30 фиатных валют.
  • SegWit, bip39, HD-протокол, PSBT, LNurl, TXHEX и другое.

Процесс разработки криптокошелька

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

Процесс кастомной разработки обычно состоит из семи этапов:

Этап 1: фаза открытия

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

Этап 2: разработка архитектуры

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



Пример информационной архитектуры криптовалютного мобильного кошелька. Источник.


Этап 3: разработка UX- / UI-дизайна

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

Вот как могут выглядеть варфреймы низкой точности:

Варфреймы низкой точности кошелька

Варфреймы низкой точности кошелька. Источник.

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

Варфреймы высокой точности кошелька

Варфреймы высокой точности кошелька. Источник.

В конце, если варфреймы высокой точности нравятся заказчику и целевой аудитории (нужны тесты), на их основе создается анимированный прототип, где работают все иконки, анимации и переходы, но не работают функции.

Анимированный прототип криптовалютного кошелька

Анимированный прототип криптовалютного кошелька. Источник.

Этап 4: написание кода приложения

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

Вот пример технологического стека для front-end мобильного кошелька:

пример технологического стека для front-end мобильного кошелька

Вот пример технологического стека back-end мобильного кошелька:

пример технологического стека back-end мобильного кошелька

Этап 5: тестирование продукта

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

Этап 6: развертывание, релиз

Когда разработанное программное обеспечение создано и тщательно протестировано, необходимо произвести его развертывание на ваши локальные серверы или в облако (AWS, Azure, Google) и затем еще раз все перепроверить. Если все нормально, дальше ваше мобильное приложение нужно добавить в сторы мобильных приложений (App Store, Google Play, Microsoft Store и Amazon App Store). На это могут понадобиться сравнительно небольшая сумма денег (Google Play — 25 долларов, App Store — 99 долларов в год или 299 в год для внутрикорпоративных приложений) и некоторое время, которое уйдет на составление маркетинговых и технических данных и проверку приложения платформой.

Этап 7: поддержка продукта

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

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

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

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

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

Имя *
Email *
Телефон
Ваш бюджет
Сообщение