// Cryptocurrency

Розробка Криптогаманця Подібного до 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

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 року Сonsensus Software Inc., розробник, що спеціалізується на додатках на базі блокчейна Ethereum.

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

Як описують Адріан Девіс і Ден Фінлі, їхня ідея була чудовою, але ось її технічна реалізація виявилася дуже складною, особливо в частині забезпечення необхідної безпеки для користувачів (веб-гаманці вважаються найбільш уразливими для хакерів). Проте Сonsensus виконали свою місію, і 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. Вони вивчають цілі проекту, бізнес-аналітику, завдання і потреби користувачів, щоб на основі цієї інформації створити варфрейми (низької і високої точності) і прототипи майбутнього криптогаманця.

Варфрейми низької точності - це прості начерки майбутнього дизайну, де позначені екрани і те, що там має бути. Ось як вони виглядають:

Приклад варфреймів низької точності криптогаманця

Приклад варфреймів низької точності криптогаманця.Джерело

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

Приклад варфреймів високої точності криптогаманця

Приклад варфреймів високої точності криптогаманця.Джерело

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

Етап 4: Написання коду програми

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

Технічний стек для 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 для iOS.
  • SDK: Android SDK та iOS SDK.

Етап 5: Тестування продукту

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

Етап 6: Розгортання, реліз

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

Етап 7: Підтримка продукту

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

Вартість створення клону MetaMask

Відгуки наших клієнтів

Розробка гнучної екосистеми на основі технології блокчейн

Запитання консультанту

Ім'я *
Email *
Телефон
Повідомлення
 

Виникли питання?

Telegram

З 2015 року ми допомагаємо втілити ідеї клієнтів в якісний продукт.