Розробка White-label криптогаманця

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1306 послуг
Розробка White-label криптогаманця
Складний
від 2 тижнів до 3 місяців
Часті запитання

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

Етапи блокчейн-розробки

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

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

Розробка White-label криптокошелька

White-label кошелек — це не "скачати MetaMask й поставити інший логотип". Це повнофункціональний продукт з вашим брендом, вашою бізнес-логікою й вашим контролем над користувальницьким досвідом. Різниця принципова: коли користувач працює через MetaMask або Trust Wallet, дані аналітики, точки входу й монетизація належать їм. Коли через ваш кошелек — вам. Нижче — реальна архітектура, не маркетингові тези.

Архітектурні рішення: що вибрати в основу

Custodial vs Non-custodial vs MPC

Перше архітектурне рішення визначає все інше.

Custodial — ключи зберігаються на ваших серверах. Користувач працює через логін/пароль. Простіший UX, але: ви несете повну юридичну відповідальність за активи, ліцензія потрібна у більшості юрисдикцій, ви стаєте мішенню для хакерів. Підходить для B2B-продуктів з корпоративними клієнтами під NDA.

Non-custodial (HD Wallet) — ключи генеруються й зберігаються на пристрої користувача, BIP-32/39/44 деривація. Ви не можете відновити активи якщо користувач втратив seed phrase. Стандарт для consumer-facing продуктів.

MPC (Multi-Party Computation) — приватний ключ ніколи не існує цілком ні на одному пристрої. Key shares розподілені між клієнтом і серверами. Схема 2-of-2 або 2-of-3 (TSS — Threshold Signature Scheme). Провайдери: Fireblocks MPC, Web3Auth MPC, Lit Protocol. Золота середина: користувач не зберігає seed phrase, але активи non-custodial. Це напрям — індустріальний тренд 2024–2025.

Вибір SDK й базового коду

WalletCore від Trust Wallet (open source) — C++ ядро з біндингами для iOS (Swift), Android (Kotlin/Java), WebAssembly. Підтримка 100+ блокчейнів. Найзріліший open source варіант для мультичейн HD кошелька. Складність інтеграції — висока, але криптографічно перевірений код.

Coinbase Wallet SDK — open source, фокус на EVM + Base. Хороший якщо ваша аудиторія орієнтована на Ethereum-екосистему.

WalletKit від Reown (ex-WalletConnect) — SDK для інтеграції WalletConnect v2 протоколу у ваш кошелек. Обов'язковий якщо хочете, щоб ваш кошелек працював з dApps.

Власна реалізація — використовуємо @noble/curves (Constantine, secp256k1, ed25519) + @scure/bip32 + @scure/bip39. Повний контроль, немає залежності від сторонніх SDK. Виправданий для спеціалізованих продуктів.

Ключові технічні компоненти

Генерація й зберігання ключів

Безпека починається з генерації ентропії. crypto.getRandomValues() у браузері, /dev/urandom на сервері — лише CSPRNG.

import { generateMnemonic, mnemonicToSeedSync } from "@scure/bip39";
import { wordlist } from "@scure/bip39/wordlists/english";
import { HDKey } from "@scure/bip32";

// Генерація 24-словного мнемоніка (256 бітової ентропії)
const mnemonic = generateMnemonic(wordlist, 256);
const seed = mnemonicToSeedSync(mnemonic);
const masterKey = HDKey.fromMasterSeed(seed);

// BIP-44 деривація: m/44'/60'/0'/0/0 для першої ETH адреси
const ethKey = masterKey.derive("m/44'/60'/0'/0/0");

Зберігання на мобільних: iOS Keychain з kSecAttrAccessibleWhenUnlockedThisDeviceOnly, Android Keystore з апаратною прив'язкою. Без AsyncStorage, SharedPreferences без шифрування.

У вебі — додаткова складність: немає нативного безпечного сховища. Варіанти: зашифрований IndexedDB (ключ шифрування — похідна від пароля через Argon2/PBKDF2), або відмова від browser extension у користь mobile-first.

Мультичейн підтримка

Типовий набір для white-label продукту 2025 року:

Екосистема Сітки Стандарт деривації
EVM Ethereum, BSC, Polygon, Arbitrum, Optimism, Base, Avalanche BIP-44, coin type 60
Bitcoin BTC mainnet/testnet BIP-84 (Native SegWit), BIP-86 (Taproot)
Solana Mainnet, Devnet BIP-44, coin type 501
TON Mainnet BIP-44, coin type 607
Cosmos Atom, Osmosis + IBC chains BIP-44, coin type 118

Кожна екосистема — окремий провайдер у коді. Абстракція через інтерфейс:

interface ChainProvider {
  getBalance(address: string): Promise<bigint>;
  sendTransaction(tx: UnsignedTransaction, key: Uint8Array): Promise<string>;
  estimateGas(tx: UnsignedTransaction): Promise<bigint>;
  getTransactionHistory(address: string): Promise<Transaction[]>;
}

WalletConnect v2 інтеграція

Без WalletConnect v2 кошелек не працює з більшістю dApps. Протокол використовує relay servers від Reown для передачі повідомлень між кошельком і dApp через QR-код або deep link.

import { Core } from "@walletconnect/core";
import { Web3Wallet } from "@walletconnect/web3wallet";

const core = new Core({ projectId: YOUR_PROJECT_ID });
const wallet = await Web3Wallet.init({
  core,
  metadata: {
    name: "Your Wallet Name",
    description: "Your wallet description",
    url: "https://yourwallet.com",
    icons: ["https://yourwallet.com/icon.png"],
  },
});

// Обробка session proposal від dApp
wallet.on("session_proposal", async ({ id, params }) => {
  const session = await wallet.approveSession({
    id,
    namespaces: buildNamespaces(params.requiredNamespaces),
  });
});

// Обробка запиту на підпис транзакції
wallet.on("session_request", async ({ topic, params, id }) => {
  const { request } = params;
  if (request.method === "eth_sendTransaction") {
    // показати користувачеві деталі транзакції, отримати підтвердження
    const txHash = await signAndSend(request.params[0]);
    await wallet.respondSessionRequest({ topic, response: { id, result: txHash, jsonrpc: "2.0" } });
  }
});

Баланси й транзакції: агрегація даних

Прямі RPC виклики до нодів — не масштабуються при мультичейн кошельку. Використовуємо спеціалізовані API:

Alchemy / Infura / QuickNode — JSON-RPC доступ до EVM сітей з rate limiting й надійністю.

Moralis / Covalent / Ankr Advanced API — агреговані API для балансів, NFT, історії транзакцій по всім EVM сітям одним запитом. Економить 80% backend коду.

TrustWallet Assets — open source репозиторій з метаданими токенів (іконки, decimals, контракти) для 100+ сітей. Інтегруємо як npm пакет або self-hosted.

Helius (Solana) — аналог Alchemy для Solana, з API для токенів і NFT.

Кастомізація й білий лейбл

Що реально кастомізується

  • Візуальний брендинг — кольори, шрифти, іконки, splash screen, onboarding флоу. Через design tokens у Tailwind/StyleSheet.
  • Список підтримуваних сітей — конфігураційний файл, не хардкод.
  • Вбудовані функції — включити/відключити swap, стейкинг, NFT галерею, fiat on/off ramp.
  • Fiat on-ramp провайдер — MoonPay, Transak, Ramp Network. Всі надають white-label віджети.
  • In-app браузер для dApps — WebView з інжектованим EIP-1193 провайдером.
  • Push сповіщення — Firebase Cloud Messaging + моніторинг адрес через Alchemy Notify.

Що не варто пересобирати з нуля

Криптографічні примітиви — ніколи. secp256k1 підпис, keccak256, BIP-32 деривація — використовуємо перевірені бібліотеки, не власну реалізацію. Помилка у криптографії = втрата коштів користувачів і ваша репутаційна катастрофа.

Мобільне приложення vs браузерне розширення

React Native — єдиний кодбейс для iOS й Android. react-native-quick-crypto для нативної криптографії (у 10–100x швидше JS реалізації). Expo SDK спрощує сборку, але обмежує нативні можливості — для production кошелька краще bare React Native.

Browser Extension — Manifest V3 (Chrome/Firefox/Edge). service_worker замість background_page, що створює складності з persistent WebSocket сполуками. Використовуємо Plasmo framework — значно спрощує розробку розширень з hot reload.

Web App (PWA) — найдоступніший варіант але з обмеженнями: немає нативного безпечного сховища, обмежений доступ до біометрії, немає deep links для WalletConnect.

Безпека й compliance

Біометрична аутентифікація — TouchID/FaceID на iOS, BiometricPrompt на Android. Обов'язкова для будь-якого production кошелька. Не замінює шифрування, а захищає доступ до розшифрованого ключа в пам'яті.

Jailbreak/root detectionreact-native-jail-monkey або нативні перевірки. При виявленні — попередження або повна блокування.

Certificate pinning — для backend API. Запобігає MITM атакам через скомпрометовані CA.

Transaction simulation — перед підписом показуємо користувачеві очікувані зміни балансів. Інтегруємо Tenderly Simulation API або Blowfish (спеціалізований на security checks, виявляє drainer контракти).

Сроки й бюджет

Варіант Склад Термін Орієнтовний бюджет
MVP (EVM only, mobile) RN приложення, BIP-44, WC v2, Alchemy 6–8 тиж $30k–60k
Стандартний white-label Multi-chain, swap, fiat on-ramp, браузер 3–5 міс $100k–200k
Повнофункціональний + MPC, extension, аудит, compliance 6–10 міс $250k–500k

Реалістична оцінка: більшість клієнтів починають з MVP для конкретної сітки, потім ітеративно розширюють. Це правильно — намагатися все разом дорого й ризиковано.