Explorar el uso de Solana Token como herramienta de identificación
NFT (token no fungible) como un token "no sustituible", es muy adecuado para ser utilizado como herramienta de identificación. Este artículo explorará la viabilidad del uso de NFT como comprobante de registro a través de un ejemplo simple.
Introducción a las herramientas
SPL Token
Solana ofrece el Token Program como una implementación general, que es parte de la Solana Program Library (SPL). SPL incluye múltiples implementaciones de programas comunes y proporciona bibliotecas de cliente completas y herramientas CLI, lo que facilita enormemente a los desarrolladores de Solana.
Solana Playground
Solpy ofrece un entorno en línea para escribir y desplegar contratos de Solana, que incluye por defecto algunas herramientas comunes, como SPL Token. Podemos crear y gestionar Tokens fácilmente a través de spl-token-cli.
Crear Token de verificación
Crearemos un Token NFT. Si un usuario mina ese Token, se considera que la dirección de la billetera ya está registrada en el sistema.
crear Token
Usar spl-token para crear un nuevo Token indivisible:
spl-token create-token --decimales 0
Esto imprimirá la dirección de mint del Token, es decir, el ID del Token.
crear cuenta de Token
Crear una cuenta de Token para el nuevo Token:
spl-token create-account <token_mint_address>
Mint Token
Intenta acuñar una unidad de Token para la cuenta de Token:
spl-token mint <token_mint_address> 1
También puedes intentar mintar a otras direcciones de billetera:
spl-token mint <token_mint_address> 1 <wallet_address>
Atención, dado que hemos establecido decimals en 0, se omitirá la parte decimal al ejecutar realmente.
para dirección de billetera Mint
Para mintar un Token para la dirección de la billetera del usuario, primero es necesario crear una cuenta de Token para esa dirección:
Luego utiliza la Cuenta de Token creada para realizar la operación de mint.
Obtener información de la cuenta de Token
Necesitamos obtener a través de la interfaz RPC si la dirección de la billetera ha mintado nuestro NFT. Utilizando el método getTokenAccountsByOwner para consultar los datos:
Podemos crear un proyecto simple de Next.js para implementar esta función, utilizando Ant Design Web3 para conectar la billetera.
El proceso principal es el siguiente:
El usuario conecta la billetera
Verificar si el usuario ya está registrado ( si mint NFT )
Si no está registrado, guiar al usuario para registrarse (mint NFT)
Después de registrarse con éxito, puede iniciar sesión con la misma dirección de billetera.
Durante el proceso de registro, el sistema creará una Cuenta de Token para el usuario y acuñará una unidad de Token como comprobante de registro.
Resumen
Hemos creado un NFT utilizando spl-token-cli y verificamos si la dirección de la billetera posee ese Token para determinar si el usuario está registrado. Esto proporciona un método de verificación basado en blockchain para aplicaciones Web3.
A través de este método, podemos aprovechar la no fungibilidad de los NFT para proporcionar a los usuarios un tipo de identificación descentralizada, al mismo tiempo que se mantiene la transparencia y seguridad de la blockchain. Este mecanismo de verificación puede aplicarse a varios escenarios de Web3, ofreciendo a los usuarios una experiencia de inicio de sesión más segura y conveniente.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
24 me gusta
Recompensa
24
6
Compartir
Comentar
0/400
StakeOrRegret
· 07-15 06:21
Buen trabajo, no entiendo pero me impresiona.
Ver originalesResponder0
Layer2Arbitrageur
· 07-14 13:05
meh, la autenticación spl es como 200pbs más lenta que las pruebas zk, para ser honesto
Ver originalesResponder0
ProposalManiac
· 07-13 02:02
¿La propuesta finalmente ha comenzado con el mecanismo de autenticación?
Autenticación de identidad NFT de Solana: explorando un sistema de inicio de sesión descentralizado basado en tokens SPL
Explorar el uso de Solana Token como herramienta de identificación
NFT (token no fungible) como un token "no sustituible", es muy adecuado para ser utilizado como herramienta de identificación. Este artículo explorará la viabilidad del uso de NFT como comprobante de registro a través de un ejemplo simple.
Introducción a las herramientas
SPL Token
Solana ofrece el Token Program como una implementación general, que es parte de la Solana Program Library (SPL). SPL incluye múltiples implementaciones de programas comunes y proporciona bibliotecas de cliente completas y herramientas CLI, lo que facilita enormemente a los desarrolladores de Solana.
Solana Playground
Solpy ofrece un entorno en línea para escribir y desplegar contratos de Solana, que incluye por defecto algunas herramientas comunes, como SPL Token. Podemos crear y gestionar Tokens fácilmente a través de spl-token-cli.
Crear Token de verificación
Crearemos un Token NFT. Si un usuario mina ese Token, se considera que la dirección de la billetera ya está registrada en el sistema.
crear Token
Usar spl-token para crear un nuevo Token indivisible:
spl-token create-token --decimales 0
Esto imprimirá la dirección de mint del Token, es decir, el ID del Token.
crear cuenta de Token
Crear una cuenta de Token para el nuevo Token:
spl-token create-account <token_mint_address>
Mint Token
Intenta acuñar una unidad de Token para la cuenta de Token:
spl-token mint <token_mint_address> 1
También puedes intentar mintar a otras direcciones de billetera:
spl-token mint <token_mint_address> 1 <wallet_address>
Atención, dado que hemos establecido decimals en 0, se omitirá la parte decimal al ejecutar realmente.
para dirección de billetera Mint
Para mintar un Token para la dirección de la billetera del usuario, primero es necesario crear una cuenta de Token para esa dirección:
spl-token create-account <token_mint_address> --owner <wallet_address>
Luego utiliza la Cuenta de Token creada para realizar la operación de mint.
Obtener información de la cuenta de Token
Necesitamos obtener a través de la interfaz RPC si la dirección de la billetera ha mintado nuestro NFT. Utilizando el método getTokenAccountsByOwner para consultar los datos:
json { "jsonrpc": "2.0", "id": 1, "método": "getTokenAccountsByOwner", "params": [ "<wallet_address>" { "mint": "<token_mint_address>" }, { "encoding": "jsonParsed" } ] }
Implementar un sistema de inicio de sesión
Podemos crear un proyecto simple de Next.js para implementar esta función, utilizando Ant Design Web3 para conectar la billetera.
El proceso principal es el siguiente:
Durante el proceso de registro, el sistema creará una Cuenta de Token para el usuario y acuñará una unidad de Token como comprobante de registro.
Resumen
Hemos creado un NFT utilizando spl-token-cli y verificamos si la dirección de la billetera posee ese Token para determinar si el usuario está registrado. Esto proporciona un método de verificación basado en blockchain para aplicaciones Web3.
A través de este método, podemos aprovechar la no fungibilidad de los NFT para proporcionar a los usuarios un tipo de identificación descentralizada, al mismo tiempo que se mantiene la transparencia y seguridad de la blockchain. Este mecanismo de verificación puede aplicarse a varios escenarios de Web3, ofreciendo a los usuarios una experiencia de inicio de sesión más segura y conveniente.