November 13, 2023

Particle Network: простой способ входа в web3, сервис nft и Нод, кошелёк

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

Оглавление

Аудит

По данным Cryptorank в проект вложили 8,8 МЛН $:

Инвесторы: HashKey Capital, Animoca Brands, LongHash Ventures, ArkStream Capital и ещё 11:

Например, OP Crypto, GSR Ventures, 7 O'Clock Capital, Cobo, CyberConnect, ABCDE, Arcane Group, Insignia Ventures Partners, BitCoke, Monad Labs, FSC Ventures.

Важно, что в стратегическом раунде собрали 7 МЛН $, в т. ч. от TIR1 фондов в марте этого года, а до этого в PRE SEED в мае 2022 - $ 1.8M. Так что могут быть и последующие инвестиции.

В Icodrops указана та же сумма:

Команда

На сайте v1 есть ссылка на linkedin:

Также можем видеть, что он ведётся активно - это плюс.

Сотрудники также профессионалы, например, Pengyu Wang:

В Twitter последний твит 2 часа назад:

Статьи в блоге тоже публикуются (последняя 9 ноября):

В Дискорде в канале анонсов последний пост 9 ноября:

Чаты активные, но большей частью gm-спамом. Хотя и вопросы без ответов есть, но у проекта есть система тикетов, поэтому скорее всего они это не читают...

Итог: 5 из 5 баллов.

Коин

В документации ничего про токен нет, как и на сайте. Но в недавней статье про омничейн аккаунт-абстракцию писали:

Что вводят токен Particle Network для решения проблемы потребления газа во время многоцепочечного выполнения, что еще больше повышает эффективность выполнения и удобство работы с пользователем. Paymaster в 4337 гарантируют, что любой токен ERC-20 может быть использован в качестве токена gas. В межсетевых транзакциях токены Particle в любой цепочке могут использоваться для прямой оплаты сборов за газ в других цепочках.

Итог: 5 из 5.

Код

Есть Github с 33 репозиториями:

Репозиторий документации обновлялся час назад:

particle-web-demo неделю назад:

В последнем коммите 1 файл изменён с 39 редактированиями и 254 удалениями:

В общем, существенные изменения.

particle-bundler-server обновлялся 2 недели назад:

Последний коммит с 1 редактированием и 1 удалением:

Надо было пройти ещё 2 коммита, и лишь в третьем было 11 файлов с 422 редактированиями и 96 удалениями:

И последний - particle-cyber-sample с последним коммитом от 5 сентября:

Этот коммит с 2 изменениями и двумя удалениями:

Предпоследний с одним файлом, пятью редактированиями и тремя удалениями:

Итог: разработка не очень активная - 4 из 5 баллов.

Концепт

Web 3.0 необходимы более простые методы авторизации и кошельки, т. к. нынешние с Seed фразами мало кто может воспринять. Да и спецы бывает забывают / теряют их, лишаясь средств...

Поэтому такие продукты будут актуальны.

Здорово, что Particle Network реализуют не только кошелёк, но и целую экосистему с для разработчиков. Это позволяет интегрировать web3 в web2 приложения или просто делать проще DApps.

Оценка: 5 из 5.

Документация

Очень подробная. Перейти к изучению:

Описан проект, сервисы, SDK и пр...

На странице "What is Particle?" более подробная информация:

Важное:

  • Particle Connect — это единый вход для web3. Мы помогаем вам легко, безопасно и удобно подключать пользователей Web2 и Web3 .
  • Particle Auth обеспечивает пороговые подписи на основе MPC (Multi-Party Computation).
    При использовании пороговых подписей каждая сторона создает независимый ключ. Затем они совместно создают замок хранилища по модульному принципу, при котором каждая сторона формирует часть замка, соответствующую ее ключу.
    Система безопасности не похожа ни на один другой сервис аутентификации/кошельков: она лучше. Для входа в систему больше не требуются сложные пароли и длинные парольные фразы, расширения для браузеров и специальное оборудование. Вместо этого учетные записи защищаются с помощью лучшей в отрасли реализации TSS и шифрования KMS.
  • Particle Wallet - это универсальный кошелек, простой в использовании, но мощный и безопасный.
    В кошелек включены детальные разработки, чтобы создать максимальный комфорт для пользователей. Интегрировав Particle Wallet с помощью однострочного кода, проект помогает вам предоставить пользователям функции, связанные с токенами и НФТ, процессы транзакций и платежей, а также другие операции для обеспечения первоклассного пользовательского опыта.
  • Particle Node предоставляет надежный, безопасный и высокодоступный блокчейн-API.
    Есть не только поддержка JSON-RPC, но и расширенный API. Это позволяет вам получать информацию о транзакциях и NFT через адреса, получать цены на токены, грамотно кодировать / декодировать транзакции и многое другое. По сравнению с другими сервисами node, вы разрабатываете свое DApp быстрее, а также гарантируете, что оно будет работать лучше.
  • Particle NFT предоставляет универсальное решение для создания, управления, распространения и маркетплейса NFT.
  • Particle IPFS - IPFS шлюз + Нода.
  • Поддержка Account Abstraction.
  • Служба обработки данных: BI-система Web3, получающая аналитическую информацию из данных внутри и вне цепочки в режиме реального времени
  • Поддерживаются Android, iOS, Web, Unity, Unreal, Flutter, React Native и Cocos. SDK для других платформ находятся в разработке и скоро будут запущены.
  • В настоящее время поддерживаются почти все EVM-совместимые чейны и блокчейн Solana.

На странице "Security" описаны принципы безопасности Particle network:

Particle Network обеспечивает безопасное управление ключами, придерживаясь трех принципов: полный контроль у пользователя, безопасное восстановление учетных записей и отсутствие единой точки отказа. Архитектура управления ключами использует технологию безопасных многозначных вычислений (MPC), гарантируя безопасность и надежность. Требуемые характеристики безопасности достигаются путем разделения чувствительных ключей на две доли, выполнения операций без объединения этих долей и регулярного обновления долей. Реализация TSS (Threshold Signature Scheme) предоставляет безопасное распределенное создание и подписывание ключей. Инфраструктура Particle Network соответствует отраслевым стандартам с шифрованием TLS, сервером TSS Party-2 и аппаратным модулем безопасности.

Доступны следующие сети:

Представлена таблица со списком сетей и указанием, что там поддерживается.

Некоторые из них: Solana, Ethereum, BNB Chain, Arbitrum, Aurora, Conflux eSpace, MAP Protocol, Moonbeam, Scroll, Tron, Polygon, Polygon zkEVM, zkSync Era, Avalanche, Base, Celo, Cronos, Fantom, Gnosis, Harmony, HECO, KCC, Klaytn, Metis, OasisEmerald, OKTC, Optimism, PlatON, ThunderCore

На странице "Quickstart Guide" можете посмотреть, как начать интеграцию с Particle:

На "Dashboard" описана работа в дашборде проектов:

В разделе "Platform-specific Guides" описаны гайды для конкретных платформ:

Например, вот для Web (ссылки на разное для начала):

На странице "Smart Wallet-as-a-Service":

Усовершенствование ERC-4337 с помощью модульной инфраструктуры Модульной архитектуры абстракции Particle Network

  1. Используйте Particle Auth для регистрации пользователей, использующих электронную почту, телефон и социальные аккаунты привычным способом, обеспечивая беспроблемный доступ благодаря технологии Particle MPC-TSS;
  2. Пользователь Particle более легко подключается к встроенным пользователям кошелька web3;
  3. Пользователь Particle AA Stack позволяет абстрагировать учетную запись, получить функцию gasless, пакетные транзакции, сеансовые ключи и т.д.

В разделе "Developers" описывается интеграция с разными сервисами Particle с примерами кода.

На основной же странице даётся информация со ссылками на варианты подключения. Например, Auth Service:

"Core":

Например, Web:

"SDKs":

Web SDK:

"Wallet Service":

Описание + варианты интеграции для разных платформ.

Wallet service SDKs:

В общем, думаю понятно...

"Account Abstraction":

Описан состав со ссылками + SDK для интеграции.

"Connect Service":

Методы Web2 : электронная почта, телефон и социальные сети: Google, Facebook, Apple, Twitter, Discord, Telegram, Microsoft, Linkedin, Github, Twitch и т. д.

Кошельки Web3 : поддержка кошельков ETH и кошельков Solana.

Кошельки ETH: MetaMask, Rainbow, Trust, ImToken, BitKeep & WalletConnect V1 и т. д.

Кошельки Solana: Phantom (поддерживаются другие кошельки)

Создание или импорт : этап закрытого ключа/секретной фразы

Настоятельно не рекомендуется использовать закрытый ключ или функцию импорта/генерации мнемоники.

Умное управление nonce

Безопасный дизайн данных

+ дано видео и SDK документация на соответствующей странице.

Есть и раздел с другими сервисами:

А именно: Node Service и NFT Service.

Например, Node service:

Описание и подразделы. Один из них - "Authentication":

Далее идут подразделы с EVM и Solana API, где объясняются методы для работы с ними.

EVM API:

Подразделяется на стандартный и расширенный RPC . Второй - от Particle, первый - используемый во всех EVM RPC.

В Standard RPC указано, что где поддерживается:

В Enhanced RPC - более подробно с примерами и страницами для некоторых типов (Tokens & NFTs и swap):

Solana API подобное. Но есть ещё и IPFS:

С описанием методов для загрузки и получения данных.

На странице "Error Reference" про ошибки:

"What Else" или что ещё:

Описано, что можно сделать кастомный вход, выбирать режим входа в систему в зависимости от устройства (например, при входе с Android выводить первым Google, с IOS - Apple id).

Описана возможность кастомного UI кошелька, некоторых веб-элементов управления кошельком (Connect Wallet, Значок наведения курсора мыши на кошелек).

Есть подраздел FAQ:

Где ответили на вопросы: какие сети поддерживаются, как интегрировать свою систему авторизации, какие типы NFT поддерживаются, описаны проблемы с интеграцией разных SDK.

На странице "Demo Applications":

Представлены ссылки на страницы с примерами для разных платформ.

Например, Web:

В разделе ресурсов на странице "Logos & assets" взять логотипы и прочее графическое:

Остальные разделы и страницы документации не очень интересны...

Итог: 5 из 5 баллов.

Итог по аудиту!

24 из 25 баллов. Как по мне, отлично

Напоследок, покажу главную страницу их сайта:

Это я уже навёл мышку на "Products" в верхнем меню.

Если навести на "Support Chains":

"Case Studies":

Как видите, всё подробно и компактно...

Практика

Для разработчиков

Здесь я не буду писать код и показывать пример интеграции, а лишь покажу сайт https://dashboard.particle.network/

Вводим e-mail" Send code" и получаем письмо:

Вставляем код в появившуюся форму - вошли:

"View Demos" откроет меню со ссылками на демо приложения:

"Open Wallets" - ссылки на версии кошелька:

"Get started" откроет первый проект:

В "Applications" добавляем приложение, выбрав платформу (я Web):

Заполняем, Ok:

На вкладке "Activity" отобразится активность по вашему проекту:

В "Team" можете добавить команду:

В "Branding" можете уникализировать проект:

В режиме " Form mode" будет доступна только форма входа по e-mail.

В "Users" ваши пользователи:

В "Custom" можете настроить кастомную авторизацию:

На странице "Endpoint" увидите примеры url с вашим проектом:

"Stats":

На странице "Contract Control" можете управлять смартконтрактами:

"+ Add contract":

Выбираете сети, вводите адрес смартконтракта и заметки - всё. "Verify this contract".

Выполняете операцию и подтверждаете.

Страница "Asset Locking":

"NFT Market":

Здесь можете добавить NFT на свой маркетплейс от Particle.

IPFS:

"On-Ramp":

Итог: хороший, удобный интерфейс. 5 из 5.

для пользователей: Particle wallet

https://wallet.particle.network/

Выбрав More увидеть другие способы входа:

Ниже есть и варианты с web3 кошельками. Но я для наглядности создам с web2. Войду с Twitter:

После подтверждения предложит установить пароль:

"Set Now":

"Set master password" - вошли:

Нажав по адресу скопируем его. У меня это 0x2Ba7e849aa2b3cDA71CA345644C43f84E3933b09

"Receive" - можем скопировать и отсканировать QR-код:

Нажав по "Ethereum" можем выбрать сеть. Например, Solana:

Как видите, адрес другой.

У других EVM сетей адрес совпадает.

Нажав на первый значок откроете запрос подписи:

После чего появятся чаты:

Setting

"Account and Security":

Здесь можете подключить другие акки, e-mail и телефон для подтверждения транзакций и платёжный пароль.

"Smart account":

Можете включить "Use smart account" и выбрать вариант.

"Address Book":

"Add New Address":

"Save" - появился:

"Currency Unit" - меняем валюту (если надо):

Можете поменять тему на светлую, а далее - "Connected Sites":

Language:

Обратите внимание, что после активации смарт аккаунта адрес изменился:

Управление активами

А тем временем, пришли DAI в обычном акке:

Но вот только в обычном режиме ETH для оплаты комиссий тоже нужны... Добавил и их:

А теперь переведём DAI. Для этого жмём по названию токена:

"Send":

"Send":

Появилась транзакция:

Клик по ней открывает подробности:

Появился баланс на смарт аккаунте:

Если чего не хватает, можете нажать "Buy" и купить за фиат:

А мы обменяем, нажав "Swap":

"ETH":

Выбираем DAI и аналогичным способом через " Select a Token" токен получения:

"Swap" на странице:

Жмём:

Выбираем токен комиссии и "Send":

И здесь подтверждаем "Confirm":

Готово:

Пришлось подождать 5 минут...
Обратите внимание, что комиссия конская в ERC-20 токенах даже в Optimism. Не стоит использовать этот метод...

Можем открыть sBTC:

И выбрать "Bridge":

Выбрал уже sBTC. "Select network" тоже нажал. Выбрал Arbitrum One:

"Select a Token":

И выбираю USDC.e

Итог:

Если всё ок, "Confirm":

"Confirm":

Как видите, sBTC здесь нет... Да и много берут в качестве комиссии - не получится у меня продолжить. Но главное вам показал...

Приложения

Зайду в 1Inch, Connect wallet старая версия:

"Copy to clipboard".

Выбираю значок под сетью:

"Paste WalletConnect Code":

Либо можете отсканировать qr-код камерой.

Вот только у меня не принял ничего...

Может у вас получится...

После этого в "Connected" появятся приложения.

Добавляем токен

"tokenList":

Поиском нахожу OP:

И добавляю. "Add custom token" для вставки адреса смартконтракта:

"Add":

Токены в списке:

NFT

Переключаемся на вкладку:

Также можете нажать "nftList":

Создал и перевёл nft - появилось:

Жмём по нему:

Можем отправить - Send:

Я выбрал из адресной книги адрес.

"Send":

Выбираем токен оплаты комиссии и "Send":

"Confirm" - всё:

Активность и инструменты

В "Activity" почему-то не всё отображается:

А в "Tool" есть варианты действий:

"NFT Batch Send" - пакетная отправка nft (выбираете и отправляете). А вот "Token Batch Send":

"Next":

"Send":

Выбираем комиссию и "Send"

"Confirm":

Готово:

Итог по практике

Пользоваться можно, но лишь кошельком (по крайней мере с компа). Комиссии дорогие - не будут пользоваться новички в web3.

Итог: 3 из 5 баллов.

Общий вывод

  • Аудит - 24 из 25
  • Практика для пользователей 3 из 5, для разработчиков 5 из 5 = 8 из 10.
  • Общий балл 32 из 35.

Проект хороший, хотя мог бы быть и лучше...

Всё

С вами был незрячий web3 программист, автор обзоров. Подписывайтесь на https://t.me/blind_dev - там новые обзоры будут и новости по моим разработкам.

Также распространяйте статью - это важно для меня.