Explorer l'utilisation du Token Solana comme preuve d'inscription des utilisateurs
NFT ( jeton non fongible ) en tant que "jeton non remplaçable" est très adapté pour être utilisé comme outil d'authentification. Cet article explorera la faisabilité d'utiliser NFT comme preuve d'inscription à travers un exemple simple.
Introduction des outils
SPL Token
Solana propose une implémentation générique du Token Program, qui fait partie de la Solana Program Library (SPL). SPL comprend plusieurs implémentations de programmes courants tels que Token, Swap, Memo, et fournit une bibliothèque cliente complète ainsi que des outils CLI, ce qui facilite grandement le travail des développeurs Solana.
Solana Playground
Solpy offre un environnement en ligne pour rédiger et déployer des contrats Solana, comprenant par défaut certains outils courants, tels que SPL Token. Nous pouvons facilement créer et gérer des Tokens via spl-token-cli.
Créer un Token d'authentification
Nous allons créer un NFT Token. Si un utilisateur Mint ce Token, on considère que cette adresse de portefeuille est déjà s'inscrire dans le système, sinon on invite l'utilisateur à s'inscrire d'abord.
créer un Token
Créer un nouveau Token indivisible avec spl-token :
spl-token créer un jeton --décimales 0
L'adresse Mint dans la sortie est l'ID du Token créé.
créer un compte Token
Créer un compte de jetons pour le jeton créé à l'étape précédente :
spl-token créer un compte <token_id>
Mint Token
Essayez de frapper une unité de jeton pour le compte de jeton :
mint de spl-token <token_id> 1
Vous pouvez également essayer de mint à une adresse de portefeuille spécifiée :
spl-token mint <token_id> 1 <wallet_address>
Attention : le mint direct à l'adresse du portefeuille échouera, il est nécessaire de d'abord créer un compte de jetons pour l'adresse du portefeuille.
pour créer un compte de token pour l'adresse du portefeuille
Utilisez la commande suivante pour créer un compte de jetons pour l'adresse de portefeuille spécifiée :
Utilisez la méthode getTokenAccountsByOwner de l'interface RPC pour vérifier si l'adresse du portefeuille a déjà Mint notre NFT créé.
Mettre en place un système de connexion
Créer un projet avec Nextjs et implémenter la fonctionnalité de connexion au portefeuille avec Ant Design Web3.
La page principale comprend :
Accueil : message de bienvenue et lien vers la page de connexion
Page de connexion (sign-in) : connecter le portefeuille et vérifier si l'utilisateur s'est inscrit
Page d'inscription (sign-on) : permettre aux utilisateurs de suivre le processus d'inscription (mint NFT)
Processus de connexion :
L'utilisateur clique sur "Continuer avec Solana", pour ouvrir le portefeuille.
Vérification par le backend si l'adresse du portefeuille a un compte de token associé.
Si non enregistré, invitez l'utilisateur à se rendre sur la page d'inscription.
s'inscrire processus :
L'utilisateur clique sur "Start with Solana" pour connecter son portefeuille
Le backend crée un compte de jetons pour l'adresse du portefeuille de l'utilisateur et mint le jeton.
s'inscrire avec succès, l'utilisateur peut se connecter au site Web avec la même adresse de portefeuille.
Grâce à Solscan, vous pouvez consulter les données de transaction pertinentes, y compris les instructions CreateAccount et les opérations Mint.
Résumé
Nous avons créé un NFT en utilisant spl-token-cli et déterminé si l'utilisateur s'est inscrit en vérifiant si l'adresse du portefeuille a un compte de jeton et a déjà frappé un jeton. Lorsque l'utilisateur connecte son portefeuille, le système crée automatiquement un compte de jeton et frappe une unité de jeton comme preuve d'inscription. Par la suite, l'utilisateur peut se connecter au site Web en utilisant la même adresse de portefeuille.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
Solana NFT : explorer l'enregistrement des utilisateurs et l'identification basés sur des tokens
Explorer l'utilisation du Token Solana comme preuve d'inscription des utilisateurs
NFT ( jeton non fongible ) en tant que "jeton non remplaçable" est très adapté pour être utilisé comme outil d'authentification. Cet article explorera la faisabilité d'utiliser NFT comme preuve d'inscription à travers un exemple simple.
Introduction des outils
SPL Token
Solana propose une implémentation générique du Token Program, qui fait partie de la Solana Program Library (SPL). SPL comprend plusieurs implémentations de programmes courants tels que Token, Swap, Memo, et fournit une bibliothèque cliente complète ainsi que des outils CLI, ce qui facilite grandement le travail des développeurs Solana.
Solana Playground
Solpy offre un environnement en ligne pour rédiger et déployer des contrats Solana, comprenant par défaut certains outils courants, tels que SPL Token. Nous pouvons facilement créer et gérer des Tokens via spl-token-cli.
Créer un Token d'authentification
Nous allons créer un NFT Token. Si un utilisateur Mint ce Token, on considère que cette adresse de portefeuille est déjà s'inscrire dans le système, sinon on invite l'utilisateur à s'inscrire d'abord.
créer un Token
Créer un nouveau Token indivisible avec spl-token :
spl-token créer un jeton --décimales 0
L'adresse Mint dans la sortie est l'ID du Token créé.
créer un compte Token
Créer un compte de jetons pour le jeton créé à l'étape précédente :
spl-token créer un compte <token_id>
Mint Token
Essayez de frapper une unité de jeton pour le compte de jeton :
mint de spl-token <token_id> 1
Vous pouvez également essayer de mint à une adresse de portefeuille spécifiée :
spl-token mint <token_id> 1 <wallet_address>
Attention : le mint direct à l'adresse du portefeuille échouera, il est nécessaire de d'abord créer un compte de jetons pour l'adresse du portefeuille.
pour créer un compte de token pour l'adresse du portefeuille
Utilisez la commande suivante pour créer un compte de jetons pour l'adresse de portefeuille spécifiée :
spl-token créer-un-compte <token_id> --propriétaire <wallet_address>
obtenir un compte de jeton
Utilisez la méthode getTokenAccountsByOwner de l'interface RPC pour vérifier si l'adresse du portefeuille a déjà Mint notre NFT créé.
Mettre en place un système de connexion
Créer un projet avec Nextjs et implémenter la fonctionnalité de connexion au portefeuille avec Ant Design Web3.
La page principale comprend :
Processus de connexion :
s'inscrire processus :
Grâce à Solscan, vous pouvez consulter les données de transaction pertinentes, y compris les instructions CreateAccount et les opérations Mint.
Résumé
Nous avons créé un NFT en utilisant spl-token-cli et déterminé si l'utilisateur s'est inscrit en vérifiant si l'adresse du portefeuille a un compte de jeton et a déjà frappé un jeton. Lorsque l'utilisateur connecte son portefeuille, le système crée automatiquement un compte de jeton et frappe une unité de jeton comme preuve d'inscription. Par la suite, l'utilisateur peut se connecter au site Web en utilisant la même adresse de portefeuille.