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

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

Содержание

#1. Кратко о кошельке MetaMask
#2. Как работает кошелек Metamask?
#3. Ключевые особенности MetaMask
#4. Основные функции криптокошелька
#5. Расширенные функции клона MetaMask
#6. Процесс разработки кошелька MetaMask
#7. Этап 1: фаза открытия
#8. Этап 2: разработка архитектуры
#9. Этап 3: разработка UX/UI-дизайна
#10. Этап 4: написание кода приложения
#11. Этап 5: тестирование продукта
#12. Этап 6: развертывание, релиз
#13. Этап 7: поддержка продукта
#14. Стоимость создания клона MetaMask

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

MetaMask — это один из самых популярных криптовалютных кошельков, пользовательская база которого каждый год неуклонно растет независимо от взлетов и падений рынка. На сегодня в MetaMask около 21 миллиона активных пользователей в месяц, что в 80 раз больше, чем в 2019 году и значительно больше, чем у любого другого некастодиального кошелька. Дальше мы разберем, благодаря чему этот кошелек стал настолько популярным. Опишем, как он работает и как создать собственный криптовалютный кошелек наподобие MetaMask.

Кратко о кошельке MetaMask

MetaMask — это простой и легкий криптовалютный кошелек с открытым кодом, который работает как расширение для веб-браузера (доступно в Chrome, Firefox и Brave) и как мобильное приложение (совместим с iOS и Android). Изначально данный кошелек позволял управлять только эфиром и токенами ERC-20, но теперь он может также обрабатывать токены стандарта ERC-721 и ERC-1155. Кроме этого, MetaMask также выделяется тем, что он может взаимодействовать с сайтами, что позволяет ему быть своего рода шлюзом для связи с разнообразными Dapps на Эфириуме.

Разработали криптовалютный кошелек MetaMask Адриан Девис и Ден Финли. Их идея была простой и революционной: создать расширение для браузеров, которое не только будет управлять криптовалютой, но и позволит использовать свой браузер для быстрого и безопасного взаимодействия с любыми dApps (сайтами этих dApps). Идея была реализована в 2016 году СonsenSys Software Inc., разработчиком, специализирующемся на приложениях на базе блокчейна Ethereum.

Для реализации этой особенности было решено использовать интерфейс Ethereum и веб-API под названием web3.js. Эта библиотека Ethereum стала фундаментальной основой MetaMask, так как она позволила браузеру взаимодействовать с локальным или удаленным узлом блокчейна с помощью HTTP, IPC или WebSocket: записывать и читать данные из смарт-контрактов, передавать токены и многое другое. Другими словами, web3.js позволила блокчейн-разработчикам создавать прокси и / или коммуникационный мост между MetaMask, dApps и пользователями.

Как описывают Адриан Девис и Ден Финли, их идея была отличной, но вот ее техническая реализация оказалась очень сложной, особенно в части обеспечения необходимой безопасности для пользователей (веб-кошельки считаются самыми уязвимыми для хакеров). Тем не менее СonsenSys выполнили свою миссию, и 14 июля 2016 года была представлена ​​их первая версия браузерного криптокошелька MetaMask для браузера Chrome и его производных. Позже будет представлена ​​их версия для Firefox, Brave и других популярных браузеров. В 2019 году также была представлена официальная мобильная версия криптокошелька MetaMask.

Как работает кошелек Metamask?

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

В этом смысле MetaMask был разработан как кошелек для Ethereum и как инструмент для взаимодействия с dApps. Для выполнения обеих задач MetaMask устанавливает канал связи между расширением и рассматриваемым пользователем dApp. Как только приложение распознает, что MetaMask присутствует (опознан), оно включается и может использоваться пользователем, то есть пользователь может выполнять все действия или события, которые это приложение позволяет.

Архитектура взаимодействия веб-приложения с блокчейном через библиотеку web3.js

Архитектура взаимодействия веб-приложения с блокчейном через библиотеку web3.js. Источник.

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

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

Ключевые особенности MetaMask

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

В MetaMask очень простой, чистый и интуитивно понятный дизайн

В MetaMask очень простой, чистый и интуитивно понятный дизайн. Источник.

Интеграция с различными dApps. В MetaMask пользователи могут одним нажатием кнопки взаимодействовать с большим количеством децентрализованных приложений. Благодаря чему можно быстро обменять токены на биржах Uniswap или PancakeSwap, запустить блокчейн-игры Gods Unchained или Decentraland, купить NFT на Opensea и Rarible. Все это возможно без каких-либо сложных процедур. Вам понадобится только простое подключение к криптокошельку MetaMask.

Интеграция с другими блокчейнами. Еще одна особенность MetaMask заключается в том, что вы можете связать его не только с Ethereum, но и с другими блокчейнами, например с Avax, Polygon, Fantom и Binance Smart Chain (BSC).

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

Поддержка Swaps. В 2021 году MetaMask добавил возможность быстро и сравнительно дешево обменять криптовалютные токены внутри своего кошелька с помощью Swaps. Новый функционал поддерживает несколько автоматических market makers (ММ) для поиска наилучшего курса по обмену токенов.

Поддержка NFT. Также кошелек MetaMask позволяет хранить NFT, которые пользователь купил на торговых площадках. Купленные NFTs автоматически появятся на вкладке предметов коллекционирования в кошельке.

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

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

Вот перечень функций для обычных пользователей:

  • Регистрация. Очень просто создать новый профиль. Достаточно открыть интернет-браузер, скачать расширение MetaMask с официального сайта и придумать сложный пароль. После чего нужно будет записать seed-фразу, и кошелек готов к использованию. Если у вас уже есть криптовалютный адрес, то вы можете его быстро подключить к криптовалютному кошельку.
  • Актуальный курс. В MetaMask отображается только количество токенов на счету, тогда как в других криптокошельках также можно увидеть актуальный курс токенов в инвестиционном портфеле. Поэтому если вы создаете клон криптокошелька MetaMask, то лучше добавить эту опцию и таким образом повысить пользовательский опыт вашего будущего проекта.
  • Операции с криптоактивами. Передача и получение токенов, а также перевод одной криптовалюты в другую — основная функция любого кошелька, поэтому она должна быть максимально простой и удобной, чтобы любой пользователь сразу понял, что и как делать. Кроме этого, также сюда желательно добавить возможность проверки текущего баланса и истории транзакций. В MetaMask это реализовано не очень хорошо: если вы торговали на бирже, то MetaMask может не показывать эти операции и актуальный баланс. Убедитесь, что разрабатываемый вами кошелек не имеет таких проблем.
  • Избранные адреса. Это еще одна вещь, которой пока нет в MetaMask и которая есть в большинстве других кошельков. С ее помощью пользователи могут составить список адресов для быстрой отправки токенов. Очень удобно для небольших периодических операций (например, оплаты подписок).
  • Добавление блокчейнов. После установки MetaMask пользователь может оперировать лишь эфиром и токенами стандарта ERC-20, но при желании пользователь также может подключить другие цепочки. При этом адрес кошелька пользователя на всех этих цепочках будет одинаковый.
  • Поддержка NFT. Не так давно MetaMask даже добавил в свой кошелек поддержку невзаимозаменяемых токенов.
Перечень функций для администратора платформы:
  • Панель приборов. С помощью этого экрана администратор может отслеживать текущее состояние платформы: наличие каких-то проблем, количество пользователей, объем транзакций и многое другое.
  • Управление пользователями. С помощью этой панели администратор отслеживает статус пользователей системы и управляет ими: добавление / удаление, заморозка, коммуникация, верификация и прочее.
  • Управление комиссиями. Здесь можно добавить, удалить или изменить комиссию за транзакции, проходящие через криптокошелек.
  • Управление платежной системой. В кошельке MetaMask нет возможности привязать к кошельку банковскую карту, Paypal или иную платежную систему. Но если она есть, то администратору нужны инструменты управления ею.
  • Управление контентом. Это доступные администраторам настройки пользовательского интерфейса (тексты, иконки, ссылки и прочее).
  • Подключение Facebook, Twitter, Instagram.
  • Отчетность и аналитика.
  • Документация по API.

Расширенные функции клона MetaMask

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

Это может быть следующий функционал:

  • Привязка счета. Вашим пользователям будет удобно, если они смогут покупать криптовалюту и переводить ее в фиат сразу в вашем кошельке. Чтобы это стало возможным, при разработке своего кошелька, такого как MetaMask, нужно добавить возможность привязать к нему банковский счет, банковскую карту, Paypal или иной механизм онлайн-платежей.
  • E-commerce-интеграции. Речь об интеграции кошелька с биржами, NFT-маркетплейсами, децентрализованными приложениями, магазинами и другими внешними сервисами, которые будут полезны пользователям.
  • Мультиязычный интерфейс. Если вы ориентированы на рынок, где все общаются на одном языке, то этим можно пренебречь. Однако если вы намерены выйти на глобальный рынок, то вам нужна поддержка как можно большего количества языков, чтобы увеличить охват аудитории.
  • Push-уведомления. Будут информировать о зачислении средств на кошелек, завершении транзакций, резком изменении курсов валют в инвестиционном портфеле, обновлении системы, странной активности и прочем.
  • VIP-поддержка. Многие криптовалютные площадки предоставляют улучшенную поддержку за дополнительную плату. Это может быть поддержка 24/7, общение с выделенным вам специалистом и другие вещи.
  • QR-сканер. Это еще одна полезная опция, которая позволит вашим пользователям сильно ускорить платежные операции. Кроме того, она также значительно уменьшит количество ошибочных переводов.

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

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

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

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

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

Пример информационной архитектуры криптокошелька

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

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

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

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

Пример варфреймов низкой точности криптокошелька


Пример варфреймов низкой точности криптокошелька. Источник.


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

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


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


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

Пример анимированного прототипа криптокошелька

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

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

Технический стек для back-end клона MetaMask:
  • Смарт-контракты: виртуальная машина 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.
Технический стек front-end клона MetaMask:
  • Языки программирования для веб: 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.

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

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

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

Когда ваш клон криптокошелька MetaMask создан и протестирован, необходимо произвести его развертывание в облаке (AWS, Azure) или на локальных серверах вашей компании. Если вы также создали мобильную версию кошелька, то ее нужно опубликовать в сторах: Google Play, App Store, Microsoft Store и Amazon App Store.

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

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

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

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

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

Имя *
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
Как Создать Аппаратный Криптовалютный Кошелёк, как Trezor?
Trezor — аппаратный кошелек, предназначенный для того, чтобы помочь пользователям хранить свою криптовалюту в пределах досягаемости и при этом в максимальной безопасности. Он представляет собой небольшое USB-устройство, которое подключается к компьютеру и используется для подписания транзакций без компрометации закрытых ключей, поскольку они никогда не покидают внутренней части аппаратного кошелька. Благодаря этому аппаратные кошельки Trezor можно использовать даже на устройствах, которые заражены вредоносным софтом.