This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
ソラナ NFT身分証明: SPLトークンに基づく分散化ログインシステムの探求
ソラナトークンを身分証明ツールとして使用することを探る
NFT (non-fungible token) は「代替不可能」なトークンとして、身分証明ツールとして非常に適しています。この記事では、NFT を登録証明書として使用する可能性を簡単な例を通じて探ります。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
ツール紹介
SPL トークン
ソラナは、一般的な実装としてトークンプログラムを提供しています。これはソラナプログラムライブラリ(SPL)の一部です。SPLは、複数の一般的なプログラム実装を含み、充実したクライアントライブラリとCLIツールを提供し、ソラナの開発者に大いに便利をもたらします。
ソラナ プレイグラウンド
Solpyは、オンラインでソラナ契約を作成およびデプロイする環境を提供し、デフォルトでいくつかの一般的なツール(SPL Tokenなど)が含まれています。私たちは、spl-token-cliを使用して、Tokenの作成と管理を簡単に行うことができます。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
確認トークンの作成
私たちはNFTトークンを作成します。ユーザーがそのトークンをミントした場合、そのウォレットアドレスはシステムに登録されたと見なされます。
トークンを作成
spl-token を使用して新しい不可分割トークンを作成する:
spl-token create-token --decimals 0
これにより、トークンのミントアドレス、つまりトークンIDが出力されます。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
トークンアカウントを作成
新しく作成されたトークンのためのトークンアカウントを作成します:
spl-token create-account <token_mint_address>
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
トークンをミントする
Token アカウントのために Token 単位を mint しよう:
SPL-トークンミント<token_mint_address>1
他のウォレットアドレスにミントすることもできます:
SPL-トークンミント<token_mint_address>1 <wallet_address>
注意, decimals を 0 に設定したため、実行時に小数部分は切り捨てられます。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
はウォレットアドレス Mintです
ユーザーのウォレットアドレスにトークンをミントするには、まずそのアドレスにトークンアカウントを作成する必要があります:
spl-token create-account <token_mint_address> --owner <wallet_address>
その後、作成したトークンアカウントを使用してミント操作を行います。
! Web3ビギナーシリーズ:Solanaトークンを使用したログインを探る
トークンアカウント情報の取得
私たちは RPC インターフェースを通じて、ウォレットアドレスが私たちの NFT をミントしたかどうかを取得する必要があります。getTokenAccountsByOwner メソッドを使用してデータを照会します:
jsonの { "jsonrpc": "2.0", "id": 1, "メソッド": "getTokenAccountsByOwner", "params": [ "<wallet_address>", { "ミント": "<token_mint_address>" }, { "encoding": "jsonParsed" } ] }
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する
ログインシステムの実装
私たちは、Ant Design Web3を使用してウォレットに接続するこの機能を実現するために、シンプルなNext.jsプロジェクトを作成できます。
主要な流れは次のとおりです:
登録プロセス中に、システムはユーザーのためにToken Accountを作成し、登録証明としてTokenの単位をmintします。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探る
サマリー
私たちは spl-token-cli を使用して NFT を作成し、ユーザーが登録しているかどうかを判断するために、ウォレットアドレスがそのトークンを持っているかどうかを確認しました。これにより、Web3 アプリケーションに対してブロックチェーンベースの身分証明方法が提供されます。
この方法によって、私たちはNFTの不可替代性を利用して、ユーザーに去中心化された身分証明を提供し、同時にブロックチェーンの透明性と安全性を維持することができます。この認証メカニズムは、さまざまなWeb3シーンに適用でき、ユーザーにより安全で便利なログイン体験を提供します。
! Web3スターターシリーズ:Solanaトークンを使用したログインを探索する</token_mint_address></wallet_address></wallet_address></token_mint_address></wallet_address></token_mint_address></token_mint_address></token_mint_address>