Цели и задачи проекта
Мы получили запрос от клиента создать криптокошелёк с нуля и реализовать его как мобильное решение для iOS и Android с некастодиальным хранением активов. Основное требование заключалось в том, чтобы пользователь имел полный контроль над своими активами, а приложение было быстрым, безопасным и удобным.
Кошелёк должен был поддерживать широкий набор блокчейнов — Bitcoin, Bitcoin Cash, Litecoin, Dash, Dogecoin, Ripple, Ethereum, Ethereum Classic, Polygon, Binance Chain, Tezos, Tron, Solana и Cardano, а также работу с различными токенами, включая fungible/non-fungible tokens (NFT), и стандарты ERC-20, ERC-721, ERC-1155, BEP-20 и TRX-20.
Кроме базового хранения криптовалют клиент хотел включить встроенные сервисы для покупки и продажи через Simplex и MoonPay, обмен через Changelly и работу с децентрализованными маркет-мейкерами (Uniswap, PancakeSwap).
Помимо этого, в приложении должны были отображаться исторические данные и графики курсов всех поддерживаемых валют. Нужно было разработать торговый модуль с инструментами для трейдинга (stop loss, take profit), а также возможностью покупки, продажи и обмена валюты.
Для того чтобы приложение стабильно выдерживало нагрузку, инфраструктура должна была быть распределенной и отказоустойчивой.
Подход к разработке и стек технологий
Для того чтобы сделать электронный кошелек для криптовалют с поддержкой множества сервисов, мы использовали облачную инфраструктуру AWS. Для управления инфраструктурой был использован подход IaC (Infrastructure as Code) с помощью Terraform, что позволило упростить управление и дальнейшее развитие системы.
В качестве базы данных мы выбрали Amazon Aurora, а для кеширования — Amazon ElastiCache, чтобы обеспечить высокую скорость обработки запросов.
Бэкенд мы разработали на Java Spring, применив микросервисную архитектуру. Это решение позволило разделить систему на независимые сервисы и масштабировать каждый из них при росте нагрузки. Для обмена данными между сервисами мы использовали брокер сообщений Apache ActiveMQ.
Курсы и исторические данные мы собирали сразу из нескольких источников: внешние агрегаторы CoinGecko и CoinMarketCap, а также напрямую из блокчейнов. Такой подход обеспечил актуальность информации и её точность, а собранные данные мы дополнительно сохраняли в отдельном хранилище для визуализации и аналитики.
Обзор решения
Итогом проекта стало создание электронного кошелька, который представлял собой удобное и безопасное мультивалютное решение с хранением приватных ключей на устройствах пользователей.
Через интеграции с платежными сервисами и децентрализованными биржами пользователи могли покупать, продавать и обменивать криптовалюту прямо внутри приложения, а торговый модуль предоставлял как базовые операции, так и продвинутые инструменты трейдинга.
Система агрегировала данные о курсах валют из CoinGecko, CoinMarketCap и напрямую из блокчейнов, гарантируя актуальность и точность информации. Пользователи могли мгновенно обменивать активы и использовать продвинутые инструменты трейдинга без необходимости покидать приложение.
Дополнительно был создан сервис покупки и продажи на платформе Finery Markets с использованием Bitgo и Clear Junction для перевода средств в фиатных и криптовалютах онлайн. В тестовом режиме пользователи с Кипра могли приобретать криптовалюту через Blueberry Vouchers.
Ключевые возможности
Наше решение включало широкий набор функций, которые обеспечивали пользователям полный контроль над активами и удобство работы с криптовалютой:
- Мультивалютная поддержка: поддержка Bitcoin, Ethereum, Solana, Cardano и токенов ERC20, ERC721, BEP20, TRX20.
- Некастодиальное хранение: полный пользовательский контроль над активами
- Торговый модуль: покупка, продажа, обмен криптовалют, инструменты трейдинга (Stop Loss, Take Profit)
- Графики и исторические данные: отображение актуальных курсов и исторических графиков
- Интеграции: Moonpay, Changelly, Uniswap, Pancakeswap
- Кросс-платформенность: iOS и Android
- KYC и безопасность: прохождение идентификации и защита данных
- Реферальная система: пользователи могли зарабатывать через реферальную систему
- Поддержка DApps и NFT через WalletConnect
- Статистика по крипто портфолио
Результат
Мы выполнили все поставленные задачи: электронный кошелек для криптовалюты был разработан и опубликован в App Store и Google Play, платёжные и DeFi-интеграции работали в едином пользовательском сценарии, а торговый модуль обеспечивал безопасные сделки с управлением рисками.
Все это, в свою очередь, позволило ускорить вывод продукта на рынок, снизить стоимость владения, обеспечить отказоустойчивость и масштабируемость, а также заложить устойчивый канал привлечения пользователей с понятной юнит-экономикой.