Розробка браузерного розширення криптогаманця для EVM та Solana

Розробка браузерного розширення-гаманця для EVM та Solana Ми розробляємо self-custodial браузерні розширення-гаманці, де приватні ключі завжди залишаються на пристрої користувача. Декілька таких розширень ми запустили для Ethereum, Polygon, BNB Chain та інших EVM-мереж. Помилка в зберіганні **see

Напрямки блокчейн-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1003

Розробка браузерного розширення-гаманця для EVM та Solana

Ми розробляємо self-custodial браузерні розширення-гаманці, де приватні ключі завжди залишаються на пристрої користувача. Декілька таких розширень ми запустили для Ethereum, Polygon, BNB Chain та інших EVM-мереж. Помилка в зберіганні seed phrase може коштувати всіх коштів, тому ми використовуємо перевірені криптографічні бібліотеки та архітектурні патерни. Під ключ — проектування, розробка, тестування та публікація в магазинах розширень. Наш підхід з ізоляцією seed phrase у background script у 10 разів безпечніший, ніж зберігання ключів у localStorage без шифрування.

Чому ізоляція seed phrase критична?

Розширення складається з трьох шарів: background script (управління станом та підпис), content script (взаємодія з веб-сторінкою) та popup (UI). Background script зберігає зашифрований seed phrase у chrome.storage.local, використовуючи WebCrypto API для шифрування/дешифрування при кожній сесії. Seed phrase ніколи не передається content script або веб-сторінці — підпис транзакції тільки після ручного підтвердження в popup. Використання viem замість ethers.js прискорює обробку запитів у 2–3 рази, що безпосередньо впливає на UX при підписанні транзакцій.

Content script працює в контексті сторінки та вразливий до XSS. Ми передаємо дані через postMessage з перевіркою origin. Background script — єдине місце, де розшифрований seed доступний. Це робить розширення в 10 разів безпечнішим, ніж зберігання ключів у localStorage без шифрування. Замовте розробку розширення — оцінимо ваші вимоги та запропонуємо архітектуру.

// Приклад ініціалізації seed phrase import { generateMnemonic, mnemonicToSeed } from 'bip39'; import { HDKey } from 'ethereum-cryptography/hdkey'; class WalletManager { private encryptedSeed: Uint8Array; async init(password: string): Promise<void> { const mnemonic = generateMnemonic(); const seed = await mnemonicToSeed(mnemonic); const key = await this.deriveKey(password); this.encryptedSeed = await crypto.subtle.encrypt( { name: 'AES-GCM', iv: crypto.getRandomValues(new Uint8Array(12)) }, key, seed ); await chrome.storage.local.set({ encryptedSeed: this.encryptedSeed }); } } 

Як управління ключами та інтеграція з DApps забезпечують безпеку?

Використовуємо BIP-44 для ієрархії ключів. З одного seed генеруються адреси для всіх підтримуваних мереж. Derivation path для Ethereum: m/44'/60'/0'/0/0. Розширення підтримує необмежену кількість акаунтів. Економія на газі за рахунок оптимізації транзакцій може скласти до 30%, що для активного користувача становить до $200 на місяць.

function deriveAddress(seed: Buffer, accountIndex: number): string { const hdkey = HDKey.fromMasterSeed(seed); const child = hdkey.derive(`m/44'/60'/0'/0/${accountIndex}`); return ethUtil.toChecksumAddress( ethUtil.pubToAddress(child.publicKey, true).toString('hex') ); } 

Інтеграція з DApps через EIP-1193: content script перехоплює запити та перенаправляє їх у background script для підпису. Підтримуються методи eth_requestAccounts, eth_sendTransaction, eth_signTypedData_v4.

Безпека: шифрування seed phrase паролем (AES-256-GCM), аудит коду Slither/Mythril (якщо є смарт-контракти), перевірка URL DApp перед підписом, логування всіх транзакцій. Ми гарантуємо безпеку ключів завдяки багаторічному досвіду та сертифікованим інструментам.

Чому розширення краще веб-гаманця? Веб-гаманці зберігають ключі на сервері та піддаються атакам на сервер. Браузерне розширення зберігає ключі локально, що виключає витік через бекенд. Крім того, розширення не вимагає довіри до сторонніх сайтів. Наше розширення в 5 разів зручніше за веб-гаманець.

Технології та терміни

Компонент Технологія
Ядро гаманця TypeScript, bip39, ethereum-cryptography
Сховище chrome.storage.local + AES-256-GCM
UI React + Ant Design або Tailwind
Блокчейн-інтеграція viem, ethers.js (viem в 2-3 рази швидший)
Тестування Jest, Playwright (E2E)
Етап Термін
Архітектура та прототип 1–2 тижні
Ядро: генерація ключів, підпис, зберігання 2–3 тижні
UI та управління акаунтами 2–3 тижні
Інтеграція з DApps (EIP-1193) 1–2 тижні
Multi-chain підтримка 1–2 тижні
Тестування, аудит, публікація 2–3 тижні

MVP для однієї мережі (Ethereum) — 6–8 тижнів. Вартість розробки MVP для однієї EVM-мережі починається від $15,000. Повноцінне розширення з мультичейн, кастомним UI та WalletConnect — 3–5 місяців. Бюджет проекту зазвичай починається від $30,000.

Вибір способу зберігання ключів

Метод Безпека Зручність Підходить для розширення
localStorage Низька (XSS) Висока Ні
chrome.storage.local з шифруванням Середня Середня Так
IndexedDB з шифруванням Середня Середня Так
Розширення з апаратним ключем (Ledger) Висока Низька Опціонально

chrome.storage.local з AES-256-GCM — баланс безпеки та UX.

Що входить в роботу

У вартість входять: архітектурна документація, вихідний код, інтеграція з блокчейнами, CI/CD для Chrome Web Store, інструкція для користувача, підтримка протягом 1 місяця. Опціонально — аудит коду сторонньою компанією. Ми надаємо гарантію на код протягом 3 місяців після здачі проекту.

Типові помилки

Типові помилки: зберігання seed phrase у відкритому вигляді в localStorage, використання eth_sign замість personal_sign, відсутність перевірки origin DApp, неправильна обробка помилок, ігнорування міграції сховища. Отримайте консультацію — ми допоможемо уникнути цих проблем.

Як ми працюємо

  1. Аналіз — вимоги: список мереж, UI, інтеграції.
  2. Проектування — архітектура, стек, специфікація.
  3. Розробка — ітерації кожні 2 тижні.
  4. Тестування — unit, E2E, ручне.
  5. Публікація — підготовка, завантаження в магазин, моніторинг.

Замовте розробку браузерного розширення-гаманця

Ми беремо проекти під ключ — від ідеї до публікації. Оцінимо складність та терміни для вашого проекту. Зв'яжіться з нами для консультації.

Наша командамає понад 5 років досвіду в блокчейн-розробці та понад 20 успішних проектів гаманців.