SIWE: інструмент для підвищення можливостей ідентифікації Dapp
SIWE (Sign-In with Ethereum) є методом перевірки ідентифікації користувачів на Ethereum, подібно до ініціювання транзакцій, що підтверджує контроль користувача над гаманцем. Наразі процес ідентифікації значно спростився, потрібно лише підписати інформацію в плагіні гаманця, більшість поширених плагінів гаманців вже підтримують цю функцію.
Ця стаття в основному обговорює сценарії підпису в Ethereum та не торкається інших блокчейнів, таких як Solana, SUI тощо.
Коли потрібен SIWE
Якщо ваш Dapp має такі характеристики, ви можете розглянути можливість використання SIWE:
Мати незалежну систему користувачів
Потрібно запитати інформацію, що стосується приватності користувача
Для застосунків, основна функція яких полягає в запитах, таких як блокчейн-браузери, можна не використовувати SIWE.
Хоча з'єднання гаманця на Dapp, здається, вже підтвердило ідентифікацію, це діє лише на фронтенді. Для викликів інтерфейсу, які потребують підтримки з боку бекенду, передача лише адреси недостатня, оскільки адреса є публічною інформацією і її легко підробити.
Принцип роботи SIWE
Процес SIWE можна звести до трьох етапів: підключення гаманця, підписання, отримання ідентифікації.
Підключення гаманця: підключіть гаманець користувача в Dapp за допомогою плагіна гаманця.
Підпис:
Отримати значення Nonce: викликати бекенд-інтерфейс для отримання випадково згенерованого значення Nonce.
Підпис гаманця: побудова підпису, що містить значення Nonce, домен, ID мережі та іншу інформацію, за допомогою методу, наданого гаманцем.
Надіслати підпис: надішліть підпис на сервер для перевірки.
Отримання ідентифікації:
Після успішної перевірки підпису на серверній стороні повертається ідентифікація користувача (наприклад, JWT). У подальших запитах необхідно вказати адресу та ідентифікацію, щоб підтвердити право власності на гаманець.
Практичний посібник
Ця стаття використовує Next.js для розробки повноцінного застосунку, інтегруючи функцію SIWE. Ось основні кроки:
Встановіть залежності:
Використовуйте create-next-app для створення проекту та встановіть залежності, пов'язані з SIWE.
Введення Wagmi:
В файлі layout.tsx імплементуйте WagmiProvider, налаштуйте інтерфейси, пов'язані з SIWE.
Додати кнопку підключення:
Реалізуйте компонент кнопки для підключення гаманця та підписання.
Реалізація інтерфейсу:
Генерація nonce: створення випадкового рядка та його асоціація з адресою.
Перевірка підпису: перевірка вмісту підпису на сервері, перевірка значення Nonce, генерація JWT.
Оптимізація:
Рекомендується використовувати спеціалізовані вузлові служби (наприклад, ZAN) для підвищення швидкості відповіді інтерфейсу.
За допомогою вищевказаних кроків можна реалізувати базову структуру входу SIWE, що забезпечує більш безпечний і надійний механізм ідентифікації для Dapp.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
13 лайків
Нагородити
13
5
Поділіться
Прокоментувати
0/400
ChainSherlockGirl
· 9год тому
Гаманець підпис SIWE? Чутки стверджують, що деякі блакитні фішки стали жертвами Кліпових купонів, особисті домисли потребують перевірки.
Переглянути оригіналвідповісти на0
AirdropHarvester
· 9год тому
Нарешті не потрібно скрізь зберігати паролі~
Переглянути оригіналвідповісти на0
Web3Educator
· 9год тому
*коригує окуляри* web3 авторизація, нарешті зроблена правильно, чесно кажучи
SIWE: новий стандарт ідентифікації Ethereum для підвищення безпеки Dapp та користувацького досвіду
SIWE: інструмент для підвищення можливостей ідентифікації Dapp
SIWE (Sign-In with Ethereum) є методом перевірки ідентифікації користувачів на Ethereum, подібно до ініціювання транзакцій, що підтверджує контроль користувача над гаманцем. Наразі процес ідентифікації значно спростився, потрібно лише підписати інформацію в плагіні гаманця, більшість поширених плагінів гаманців вже підтримують цю функцію.
Ця стаття в основному обговорює сценарії підпису в Ethereum та не торкається інших блокчейнів, таких як Solana, SUI тощо.
Коли потрібен SIWE
Якщо ваш Dapp має такі характеристики, ви можете розглянути можливість використання SIWE:
Для застосунків, основна функція яких полягає в запитах, таких як блокчейн-браузери, можна не використовувати SIWE.
Хоча з'єднання гаманця на Dapp, здається, вже підтвердило ідентифікацію, це діє лише на фронтенді. Для викликів інтерфейсу, які потребують підтримки з боку бекенду, передача лише адреси недостатня, оскільки адреса є публічною інформацією і її легко підробити.
Принцип роботи SIWE
Процес SIWE можна звести до трьох етапів: підключення гаманця, підписання, отримання ідентифікації.
Підключення гаманця: підключіть гаманець користувача в Dapp за допомогою плагіна гаманця.
Підпис:
Отримання ідентифікації: Після успішної перевірки підпису на серверній стороні повертається ідентифікація користувача (наприклад, JWT). У подальших запитах необхідно вказати адресу та ідентифікацію, щоб підтвердити право власності на гаманець.
Практичний посібник
Ця стаття використовує Next.js для розробки повноцінного застосунку, інтегруючи функцію SIWE. Ось основні кроки:
За допомогою вищевказаних кроків можна реалізувати базову структуру входу SIWE, що забезпечує більш безпечний і надійний механізм ідентифікації для Dapp.