Интеграция Web3Auth для социального логина в мобильном криптоприложении

Интеграция Web3Auth для социального логина в мобильном криптоприложении Клиенты часто приходят с запросом: «Хотим, чтобы пользователи заходили в приложение через Google, но при этом получали настоящий некастодиальный кошелёк». Seed-фраза — самое слабое звено: пользователи её теряют, забывают, не

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Интеграция Web3Auth для социального логина в мобильном криптоприложении
Средний
~2-3 дня

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    898
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    784
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1219
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1081
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1004
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    600

Интеграция Web3Auth для социального логина в мобильном криптоприложении

Клиенты часто приходят с запросом: «Хотим, чтобы пользователи заходили в приложение через Google, но при этом получали настоящий некастодиальный кошелёк». Seed-фраза — самое слабое звено: пользователи её теряют, забывают, не записывают. Мы предлагаем интеграцию Web3Auth — распределённое хранение ключей через Multi-Party Computation, которое устраняет этот барьер, не жертвуя безопасностью. За нашими плечами более 5 лет опыта в блокчейн-разработке и 20+ внедрений MPC-решений.

Web3Auth решает классическую проблему крипто-onboarding'а: пользователь хочет войти через Google или Apple ID, но при этом получить некастодиальный кошелёк. Seed-фразу никто не запоминает — её теряют. Web3Auth распределяет части ключа через MPC, не требуя от пользователя хранить мнемонику.

Как работает архитектура ключей

Web3Auth разделяет приватный ключ на части через протокол tKey (threshold key). При логине через Google часть ключа хранится в сети узлов Torus Network, часть — на устройстве пользователя, часть — в облачном бэкапе (iCloud / Google Drive). Для восстановления нужны минимум 2 из 3 частей — схема 2-of-3.

Пользователь теряет устройство → логинится через Google на новом → ключ восстанавливается. Никакой seed-фразы. Но важно понимать: это не полностью некастодиальное решение — Torus Network держит одну из частей.

Почему Web3Auth безопаснее seed-фразы?

Seed-фраза — единая точка отказа: один скомпрометированный файл или фишинговая страница дают злоумышленнику полный доступ. В MPC-модели Web3Auth злоумышленнику нужно одновременно скомпрометировать два из трёх хранилищ (устройство, iCloud, Torus). Пороговая схема ECDSA гарантирует, что ни один узел Torus не может подписать транзакцию в одиночку. Кроме того, приватный ключ реконструируется только в памяти устройства и не сохраняется на диск — это снижает риск при компрометации ОС.

Как интегрировать Web3Auth с поддержкой MFA?

Web3Auth позволяет задать уровень MFA при логине. Параметр mfaLevel принимает значения "optional", "mandatory" или "off". При "mandatory" пользователь после первого входа через Google будет вынужден настроить второй фактор (например, резервное устройство или биометрию). Для криптоприложений с реальными активами мы рекомендуем "optional" — пользователь может пропустить настройку сейчас, но мы напоминаем о ней через push-уведомления.

Интеграция SDK

Web3Auth предоставляет web3auth-react-native-sdk для React Native и нативные обёртки для iOS/Android.

// React Native import { Web3Auth, LOGIN_PROVIDER } from "@web3auth/react-native-sdk"; const web3auth = new Web3Auth(WebBrowser, { clientId: "YOUR_CLIENT_ID", network: "mainnet", redirectUrl: "your-app-scheme://auth", loginConfig: { google: { verifier: "your-google-verifier", typeOfLogin: LOGIN_PROVIDER.GOOGLE, clientId: "YOUR_GOOGLE_CLIENT_ID", }, }, }); const login = async () => { const state = await web3auth.login({ loginProvider: LOGIN_PROVIDER.GOOGLE, mfaLevel: "optional", }); const privateKey = web3auth.privKey; // hex-строка // Создаём кошелёк из приватного ключа const wallet = new ethers.Wallet(privateKey); }; 

После получения privKey создаём кошелёк через ethers.js или viem. Приватный ключ не хранится на устройстве напрямую — он реконструируется при каждой сессии и живёт только в памяти.

Настройка Verifier в Dashboard

Перед интеграцией нужно создать Custom Verifier в Web3Auth Dashboard. Для Google — OAuth 2.0 Client ID из Google Cloud Console, verifier name. Для Apple Sign In — дополнительная настройка через JWT-верификатор, потому что Apple использует нестандартный OIDC.

Deep Link / Universal Link настраивается для redirect после OAuth. На Android — Intent Filter в AndroidManifest.xml:

<intent-filter android:autoVerify="true"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="yourapp" android:host="auth" /> </intent-filter> 

На iOS — URL Scheme в Info.plist + обработка в AppDelegate.application(_:open:options:).

Сравнение методов входа в криптокошелёк

Метод Удобство для пользователя Безопасность Восстановление доступа
Seed-фраза (12/24 слов) Низкое (требуется запись) Зависит от хранения (фраза) Возможно с seed-фразой
Web3Auth (Google/Apple) Высокое (1 клик) MPC, 2-of-3, ключ в памяти Автоматическое через соцлогин
Аппаратный кошелёк (Ledger) Низкое (устройство) Максимальное (офлайн) Требуется сид-фраза или новый девайс

Что входит в интеграцию

Мы выполняем интеграцию Web3Auth под ключ. В состав работ входит:

  • Создание Custom Verifier в Web3Auth Dashboard для Google и Apple
  • Настройка OAuth-клиентов в Google Cloud Console и Apple Developer
  • Интеграция SDK в React Native / iOS / Android
  • Конфигурация Deep Link и Universal Link
  • Тестирование на обоих окружениях (dev/prod) с разными Client ID
  • Настройка MFA (optional/mandatory) и биллинг-систем (StoreKit 2 / Billing 6)
  • Документация по эксплуатации и обучение вашей команды
  • Поддержка в течение 30 дней после сдачи

Что может пойти не так

Самая частая проблема — redirect_uri_mismatch. OAuth-провайдер (Google, Apple) отклоняет redirect на URL схему приложения, если он не добавлен в список разрешённых в консоли провайдера. Проверить нужно оба окружения: development и production — у них разные Client ID и разные redirect URI.

Второй момент — mfaLevel. Web3Auth поддерживает опциональный второй фактор через устройство. Если mfaLevel = "mandatory", пользователь будет вынужден настроить резервное устройство при первом логине. Для крипто-приложений с реальными активами — рекомендуем "optional" с последующим prompting.

Интеграция Web3Auth с социальным логином (Google + Apple) занимает от 1 до 3 недель. Оценим ваш проект бесплатно — свяжитесь с нами, чтобы обсудить детали.