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>

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 6
  • مشاركة
تعليق
0/400
StakeOrRegretvip
· 07-15 06:21
عمل جيد، لا أفهم لكن يبدو رائعاً
شاهد النسخة الأصليةرد0
Layer2Arbitrageurvip
· 07-14 13:05
مه، التوثيق التفاضلي أبطأ بـ 200 نقطة أساس من إثباتات zk بصراحة
شاهد النسخة الأصليةرد0
ProposalManiacvip
· 07-13 02:02
هل بدأت الاقتراح أخيرًا من آلية المصادقة؟
شاهد النسخة الأصليةرد0
consensus_failurevip
· 07-13 02:01
又整 فخ جديدة،属于折腾了
شاهد النسخة الأصليةرد0
ponzi_poetvip
· 07-13 01:58
هناك طريقة جديدة للعب... موثوقة!
شاهد النسخة الأصليةرد0
OnchainFortuneTellervip
· 07-13 01:55
هل زادت قدرة تشغيل Sol؟
شاهد النسخة الأصليةرد0
  • تثبيت