Solana NFT التعريف بالهوية: استكشاف نظام تسجيل الدخول اللامركزي القائم على SPL Token

robot
إنشاء الملخص قيد التقدم

استكشاف استخدام توكن سولانا كأداة للتحقق من الهوية

NFT (non-fungible token) كنوع من "الرموز غير القابلة للاستبدال"، فهي مناسبة جدًا للاستخدام كأداة للتحقق من الهوية. ستستكشف هذه المقالة إمكانية استخدام NFT كإثبات تسجيل من خلال مثال بسيط.

سلسلة المبتدئين في Web3: استكشاف تسجيل الدخول باستخدام Solana Token

مقدمة الأدوات

رمز SPL

تقدم Solana برنامج Token كتنفيذ عام، وهو جزء من مكتبة برامج Solana (SPL). تحتوي SPL على عدة تنفيذات برامج شائعة، وتوفر مكتبات عميل وأدوات CLI متكاملة، مما يسهل بشكل كبير على مطوري Solana.

سولانا بلايغروند

يوفر Solpy بيئة لكتابة ونشر عقود Solana عبر الإنترنت، تتضمن افتراضيًا بعض الأدوات الشائعة، مثل SPL Token. يمكننا بسهولة إنشاء وإدارة Token من خلال spl-token-cli.

سلسلة جديدة لمستخدمي Web3: استكشاف استخدام Solana Token لتسجيل الدخول

إنشاء رمز التحقق

سنقوم بإنشاء رمز NFT. إذا قام المستخدم بMint هذا الرمز، فسيتم اعتبار عنوان المحفظة قد تم تسجيله في النظام.

إنشاء توكن

إنشاء رمز غير قابل للتجزئة جديد باستخدام spl-token:

spl-token create-token --الكسور العشرية 0

سيقوم هذا بإخراج عنوان Mint الخاص بالرمز، وهو ما يسمى معرف الرمز.

Web3 سلسلة المبتدئين: استكشاف استخدام Solana Token لتسجيل الدخول

إنشاء حساب توكن

لإنشاء حساب توكن لتوكن الذي تم إنشاؤه حديثًا:

spl-token إنشاء حساب <token_mint_address>

سلسلة المبتدئين في Web3: استكشاف تسجيل الدخول باستخدام رمز Solana

سكة المينت

حاولmint وحدة Token لحساب Token:

SPL-token Mint <token_mint_address> 1

يمكنك أيضًا محاولة mint إلى عناوين محافظ أخرى:

SPL-token Mint <token_mint_address> 1 <wallet_address>

يرجى ملاحظة أنه نظرًا لأننا قمنا بتعيين decimals إلى 0، فسوف يتم تجاهل الجزء العشري عند التنفيذ الفعلي.

Web3 المبتدئين سلسلة: استكشاف استخدام Solana Token لتسجيل الدخول

هو عنوان المحفظة Mint

ل mint Token لعنوان محفظة المستخدم، يلزم أولاً إنشاء حساب Token لهذا العنوان:

spl-token create-account <token_mint_address> --owner <wallet_address>

ثم استخدم حساب التوكن الذي تم إنشاؤه لإجراء عملية الصك.

Web3 المبتدئين: استكشاف استخدام Solana Token لتسجيل الدخول

الحصول على معلومات حساب الرمز المميز

نحتاج إلى الحصول على ما إذا كانت محفظة العنوان قد قامت بmint NFT الخاص بنا من خلال واجهة RPC. استخدم طريقة getTokenAccountsByOwner لاستعلام البيانات:

جي سون { "JSONRPC": "2.0", "المعرف": 1 ، "method": "getTokenAccountsByOwner", "params": [ "<wallet_address>"، { "النعناع": "<token_mint_address>" }, { "الترميز": "jsonParsed" } ] }

سلسلة المبتدئين في Web3: استكشاف استخدام Token Solana لتسجيل الدخول

تنفيذ نظام تسجيل الدخول

يمكننا إنشاء مشروع Next.js بسيط لتحقيق هذه الوظيفة، باستخدام Ant Design Web3 للاتصال بالمحفظة.

العملية الرئيسية كما يلي:

  1. المستخدم يتصل بالمحفظة
  2. تحقق مما إذا كان المستخدم قد سجل ( هل يقوم ب mint NFT )
  3. إذا لم يتم التسجيل، ارشد المستخدمين للتسجيل (mint NFT )
  4. بعد التسجيل الناجح، يمكنك تسجيل الدخول باستخدام نفس عنوان المحفظة

خلال عملية التسجيل، سيقوم النظام بإنشاء حساب توكن (Token Account) للمستخدم وصك وحدة توكن واحدة كإثبات تسجيل.

سلسلة Web3 للمبتدئين: استكشاف استخدام Token Solana لتسجيل الدخول

ملخص

قمنا باستخدام spl-token-cli لإنشاء NFT، ومن خلال التحقق مما إذا كانت عنوان المحفظة يمتلك هذا الرمز لتحديد ما إذا كان المستخدم مسجلاً. وهذا يوفر طريقة للتحقق من الهوية تعتمد على blockchain لتطبيقات Web3.

من خلال هذه الطريقة، يمكننا الاستفادة من عدم قابلية الاستبدال لـ NFT، لتقديم نوع من شهادات الهوية اللامركزية للمستخدمين، مع الحفاظ على الشفافية والأمان في البلوك تشين. يمكن تطبيق هذه الآلية للتحقق في مختلف سيناريوهات Web3، لتوفير تجربة تسجيل دخول أكثر أمانًا وسهولة للمستخدمين.

! سلسلة Web3 Starter: استكشاف تسجيل الدخول باستخدام Solana Token</token_mint_address></wallet_address></wallet_address></token_mint_address></wallet_address></token_mint_address></token_mint_address></token_mint_address>

شاهد النسخة الأصلية
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.
  • أعجبني
  • 4
  • مشاركة
تعليق
0/400
ProposalManiacvip
· منذ 18 س
هل بدأت الاقتراح أخيرًا من آلية المصادقة؟
شاهد النسخة الأصليةرد0
consensus_failurevip
· منذ 18 س
又整 فخ جديدة،属于折腾了
شاهد النسخة الأصليةرد0
ponzi_poetvip
· منذ 18 س
هناك طريقة جديدة للعب... موثوقة!
شاهد النسخة الأصليةرد0
OnchainFortuneTellervip
· منذ 18 س
هل زادت قدرة تشغيل Sol؟
شاهد النسخة الأصليةرد0
  • تثبيت