// Мобильные приложения

Что Надо Знать о Разработке Приложения Для Биткойн-Кошелька

Содержание

#1. Тип биткоин-кошелька
#2. Функции криптовалютного кошелька
#3. Дополнительные возможности кошелька
#4. Подходы к созданию биткоин-кошельков

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

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

Тип биткоин-кошелька

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

Мобильные. Хранят приватные ключи внутри смартфона. Позволяют проверять крипто-баланс и осуществлять транзакции в любое время и в любом месте, но не могут быть полными нодами, поскольку им обычно не хватает памяти (нужно больше 200 ГБ). Часто имеют ряд дополнительных возможностей, например идентификация по отпечатку пальца или встроенный сканер QR-кодов для быстрых транзакций.

  • Примеры: Bitcoin Wallet, Electrum, GreenAddress, Infinito и Edge.
  • Целевая аудитория: обычные пользователи, желающие производить транзакции здесь и сейчас с максимальной простотой.
  • Сложность разработки: средняя, поскольку нужен опыт работы с блокчейном и SDK. Также можно просто интегрировать возможность проводить биткоин-транзакции в уже существующее приложение, что немного проще.
Десктопные. Приложения, которые нужно установить на компьютер или ноутбук. Они просты в работе и имеют максимальный функционал, в том числе позволяют создать полные ноды (значит, можно майнить). Хранят приватные ключи в памяти запоминающего устройства компьютера, что создает некоторые риски, поскольку уровень защиты таких систем зависит от их пользователей, а не от кошелька.
  • Примеры: Exodus, Armory, Bitcoin Core, Electrum.
  • Целевая аудитория: обычные пользователи и те, кто планирует заниматься майнингом или разработкой блокчейнов, смарт-контрактов или dApp.
  • Сложность разработки: средняя, поскольку нужен опыт работы с блокчейном и SDK. Если нужна просто возможность осуществлять биткоин-транзакции, то в этом случае также можно упростить разработку посредством специальных API.
Аппаратные. Обычно это флеш-карты, которые нужно подключать к компьютеру, после чего у пользователя появляется возможность управления балансом кошелька через инсталлированное на устройство приложение. Такой криптокошелек работает таким образом, чтобы приватные ключи никогда не покидали накопитель, что делает их самым безопасным способом хранения биткоинов.
  • Примеры: Ledger Nano X, Ledger Blue и Trezor Model T.
  • Целевая аудитория: инвесторы, трейдеры и другие пользователи, оперирующие большими суммами и потому желающие максимально обезопасить свои средства от воровства и несанкционированного доступа.
  • Сложность разработки: максимальная, поскольку нужно не только знать, как разработать приложение биткоин-кошелька, но и как разработать флеш-карту.
Бумажные. Обычно это приложения, которые каким-то образом шифруют и расшифровывают открытые и приватные ключи, чтобы их можно было безопасно переносить и хранить в бумажном виде (например, в надежном сейфе или банке).
  • Примеры: сервисы для шифрования — WalletGenerator и ethaddressWallet.
  • Целевая аудитория: обычно их используют те, кто специализируется на холодном инвестировании в биткоины (инвестирование на несколько лет).
  • Сложность разработки: невысокая, так как можно просто создать «надстройку» над открытым программным обеспечением для шифрования.
Онлайн. Функционируют в виде облачного сервиса, позволяя управлять биткоин-активами с помощью любого устройства: телефон, компьютер, планшет. Сочетают функциональность десктопных и доступность мобильных кошельков, поэтому они довольно популярны у простых пользователей. Правда, за это приходится платить более низкой безопасностью, поскольку онлайн-кошельки хранят приватные ключи пользователей на своих серверах.
  • Примеры: BitGo, Coinbase, GreenAddress.
  • Целевая аудитория: пользователи, желающие управлять биткоинами самым простым образом, а также те, кто хочет иметь кошелек, дающий доступ к большому количеству криптовалют (обычно онлайн-кошельки после регистрации позволяют пользователю сразу управлять 20-100 монетами).
  • Сложность разработки: высокая, поскольку нужно также создать облачное решение.

Функции криптовалютного кошелька

Если не принимать во внимание бумажные кошельки, то функции остальных типов биткоин-кошельков довольно стандартны и во многом напоминают функционал приложений других платежных систем (PayPal, Apple Pay, Google Pay) или приложений онлайн-банкинга. Вот их перечень и краткое описание:

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

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

Вот несколько вещей, которые вы можете реализовать для повышения безопасности при разработке собственного биткойн-кошелька:

  • Двухфакторная аутентификация. Может потребоваться подтверждение процесса входа с помощью номера телефона, PIN-кода или Touch / Face ID. Это просто сделать, подключив двухфакторную аутентификацию Google.
  • Автоматический выход из системы. Это не позволит никому, кроме того, кто знает открытый и приватный ключи, использовать кошельки пользователей. К примеру, это будет полезно при потере или краже смартфона.
  • Отдельные ключи для каждой транзакции. Дополнительный уровень защиты от мошенничества и взломов.
Курс, коэффициент конверсии. Поскольку приложение для криптовалютного биткоин-кошелька позволит пользователям совершать покупку и продажу BTC за фиат и другую криптовалюту, им необходимо знать текущий курс биткоина к этим валютам, а также коэффициент конверсии биткоина в эти валюты, учитывая все комиссии. Курс можно подтянуть с той биржи, где вы будете осуществлять обмен биткоинов, например с Coinbase.

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

Кошелек (управление активами). Это непосредственно те функции, которые позволят пользователям управлять их криптовалютными активами:

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

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

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

Дополнительные возможности кошелька

Флеш-карты с аппаратным ключом YubiKey 5ci от Yubico можно использовать для аутентификации биткоин-кошелька вместо пароля, отпечатка пальца или Face-ID. Источник
Базовый функционал — это хорошо, но лучше чтобы разработанный вами биткоин-кошелек поддерживал некоторые дополнительные возможности, которые позволят выделиться среди конкурентов и повысить вовлеченность пользователей. Вот что вы можете реализовать в своем приложении:
  • Lightning-транзакции. В Биткоине реализован протокол второго уровня Lightning Network, позволяющий проводить моментальные транзакции с очень низкими комиссиями (0,000106 долларов США). Без интеграции с данной технологией ваш кошелек вряд ли будут использовать в e-commerce.
  • Интеграция с банками и обменниками. Позволит пользователям покупать и продавать биткоины привычным для них способом. Можно реализовать как через прямое сотрудничество с банками, так и использовав платежные шлюзы.
  • Интеграция с e-commerce-площадками. Для этого необходимо разработать отдельный экран, с которого пользователи могут получить доступ к онлайн- магазинам, розничным продавцам и поставщикам услуг (например, Amazon, Dell, Expedia и другим), принимающим биткоины.
  • Аппаратная аутентификация. Это относительно новая технология, которая позволит использовать аппаратный ключ (карту памяти) для аутентификации на мобильном или десктопном биткоин-кошельке. Такой ключ намного безопаснее пароля или отпечатка пальца.

Подходы к созданию биткоин-кошельков

SDK (Software development kit). Разработать криптовалютный биткоин-кошелек можно нескольким способами. Оптимальный — использовать публичную библиотеку.

Их довольно много, самые популярные:

  • Coinbase. Одна из самых популярных публичных кроссплатформенных библиотек на базе Java. Позволяет оперировать не только Bitcoin, но также Ethereum и Litecoin и другими криптовалютами.
  • Bitcoinj. Еще одна популярная библиотека на Java, хотя она также совместима с другими JVM-совместимыми языками, например JavaScript, C ++, Ruby и Python. Основное ее отличие от Coinbase в том, что Bitcoinj не требует регистрации и имеет более широкий спектр инструментов для разработки мобильных приложений для криптовалюты.
  • BlockchainПоддерживает широкий спектр языков для написания кода, работает на платформах Android, Windows, iOS, Linux, Mac OS.
Включите биткойн в качестве способа оплаты. Если ваша задача — не разработать криптогамный кошелек, а создать возможность принимать или делать оплату в биткоинах, то вы можете просто воспользоваться помощью поставщика таких услуг для интеграции биткоин-платежей в уже существующий сервис. Это проще, дешевле и быстрее.

Вот несколько самых популярных вариантов:

  • BitPay. Компания по обработке платежей и платформа для интеграции криптовалюты в e-commerce-сервисы. Нет комиссии за транзакцию.
  • Coinbase. Отличное решение для сервисов, которые в основном работают с долларами США. Главное преимущество — удобная система навигации, которая среди прочего включает кнопки, упрощающие процесс оплаты.
  • Coinify. Дает возможность управлять веб- и мобильными платежами в биткойнах и предлагает множество полезных и интересных функций.
  • SpectroCoinПредлагает широкий спектр решений для цифровых денег — от бирж до электронных кошельков на основе биткоинов.

Отзывы наших клиентов

Разработка экосистемы, предназначенной для предоставления разнообразных услуг цифровым активам под одной оболочкой на основе технологии блокчейна

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

Имя *
Email *
Телефон
Сообщение
 

С 2015 года помогаем клиентам реализовывать идеи!

Подпишитесь на свежие статьи