Solana NFT ідентифікація: дослідження реалізації Token Program для входу в Web3

robot
Генерація анотацій у процесі

Використання токенів Solana для верифікації особи

NFT як невід'ємний токен, дуже підходить для використання як інструмент верифікації. У цій статті буде розглянуто простий приклад, щоб дослідити доцільність використання NFT як реєстраційного свідоцтва.

Web3 новачок серії: дослідження використання Solana Token для входу

Технічна підготовка

Ми будемо використовувати Token Program, наданий Solana, для реалізації функціональності NFT. Token Program є частиною бібліотеки програм Solana (SPL), яка забезпечує загальне впровадження токенів.

Web3 новачок серії: дослідження використання Solana Token для входу

Створення токена авторизації

По-перше, нам потрібно створити NFT Token. Якщо користувач випустив цей Token, вважається, що ця адреса гаманця вже зареєстрована в системі.

створення токена

Створення нового неподільного токена за допомогою spl-token:

spl-token create-token --decimals 0

Це виведе Mint Address токена, як унікальний ідентифікатор токена.

Web3 новачок серії: дослідження використання токена Solana для входу

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

Створити рахунок токена для новоствореного токена:

Створення облікового запису <token_mint_address>spl-токена

Web3 новачок серії: дослідження використання Solana Token для входу

виготовлення токена

Можна карбувати токени для облікового запису токенів:

SPL-токен Монетний двір <token_mint_address> 1

Також можна безпосередньо створити Token за адресою гаманця, але спочатку потрібно створити пов'язаний Token Account для цієї адреси.

Web3 новачок серії: дослідження використання Solana Token для входу

Реалізація верифікації входу

Ми можемо перевірити, чи має адреса гаманця створений нами NFT, щоб підтвердити, що користувач зареєстрований.

Використання методу RPC getTokenAccountsByOwner для запиту Token Account гаманця:

Javascript const відповідь = чекати fetch(RPC_ENDPOINT, { метод: 'POST', headers: { 'content-type': 'application/json' }, body: JSON.stringify({ jsonrpc: '2.0', Ідентифікатор: 1, method: 'getTokenAccountsByOwner', параметри: [ WALLET_ADDRESS, { М'ята: TOKEN_MINT_ADDRESS }, { кодування: 'jsonParsed' } ] }) });

Якщо знайдено Token Account, це означає, що ця адреса вже зареєстрована.

Web3 новачок серія: дослідження входу за допомогою Solana Token

Приклад застосування

Створіть простий додаток Next.js, щоб продемонструвати весь процес:

  1. Головна сторінка показує вітальну інформацію та посилання для входу
  2. Сторінка входу підключає гаманець і перевіряє, чи зареєстровано.
  3. Сторінка реєстрації для нових користувачів для карбування NFT

Користувач буде направлений на реєстрацію під час першого входу в систему, система створить для нього Token Account та виготовить NFT. Після цього користувач може входити в систему за допомогою тієї ж адреси гаманця.

Web3 новачок серія: дослідження використання Solana Token для входу

Підсумок

Ми реалізували просту систему ідентифікації, створюючи NFT та перевіряючи, чи має гаманцева адреса цей NFT. Цей спосіб використовує особливості блокчейну, щоб надати нове рішення для аутентифікації користувачів у додатках Web3.

! Стартова серія Web3: дізнайтеся про вхід за допомогою токена Solana</token_mint_address></token_mint_address>

SOL-3.32%
TOKEN-5.77%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
FrontRunFightervip
· 08-01 06:59
інше слабке рішення для аутентифікації, яке готове до вилучення MEV... токени spl занадто вразливі до атак сендвічів, чесно кажучи
Переглянути оригіналвідповісти на0
BakedCatFanboyvip
· 08-01 06:57
чи можна так грати в екосистемі sol?
Переглянути оригіналвідповісти на0
GasFeeAssassinvip
· 08-01 06:46
gm gm цей спосіб розблокування якийсь високий
Переглянути оригіналвідповісти на0
IfIWereOnChainvip
· 08-01 06:45
сол не розуміє, як це ще й влаштувати
Переглянути оригіналвідповісти на0
SquidTeachervip
· 08-01 06:32
Це дивовижно, гравці NFT стають все більш креативними.
Переглянути оригіналвідповісти на0
  • Закріпити