دلالات الإثبات

ما تثبته شهادة Signet، بدقة.

هذه الصفحة جزء من المنتج، وليست مادة تسويقية. لا يكون الإثبات مفيدًا إلا إذا اتفق الجميع على ما يدّعيه بالضبط. فيما يلي الادعاء، والتشفير الذي يستند إليه، وطريقة التحقق منه دون الحاجة إلى الثقة بنا.

الادعاء

تقدّم شهادة Signet ادعاءً واحدًا محدودًا وقويًا: أن حائز المفتاح الخاص لعنوان معيّن وقّع رسالة تحدٍّ معيّنة في وقت معيّن. لا أكثر. إنها إثبات للتحكم في مفتاح، لا للهوية.

ثابت دون الحاجة إلى الثقة بأي طرف

  • أنتج هذا العنوان هذا التوقيع على رسالة التحدي هذه.
  • كان الموقِّع حائزًا للمفتاح الخاص وقت التوقيع.
  • كانت بصمة الشهادة موجودة بحلول وقت الترسيخ على السلسلة.

غير ثابت

  • هوية الموقِّع.
  • أن التحكم حصري، أو أن المفتاح لم يُشارَك ولم يُستخدم تحت الإكراه.
  • أن الموقِّع عميل لدى الجهة الطالبة، فربط الهوية مسؤولية إجراءات KYC لدى الجهة الطالبة.

كيف يُثبَت

تُصدر الجهة الطالبة رسالة تحدٍّ تتضمن رقمًا عشوائيًا يُستخدم مرة واحدة (nonce) ومرتبطًا بذلك الطلب وحده. يوقّع الطرف المقابل البايتات الدقيقة لرسالة التحدي بمحفظته. نتحقق من التوقيع مقابل العنوان على سلسلة الكتل الصحيحة، ثم نحسب بصمة الشهادة الناتجة ونرسّخ تلك البصمة على السلسلة ضمن دفعة Merkle، باستخدام عقد Stamper نفسه المستخدم في جميع منتجات عائلة BA، فتتحقق منه أداة التحقق العامة دون أي تعديل.

يجعل الرقم العشوائي إعادة الاستخدام مستحيلة: لا يمكن نقل توقيع على رسالة تحدي طلبٍ ما إلى طلب آخر. نتحقق من رسالة التحدي المحفوظة بايتًا ببايت، ولا نستخدم أبدًا نسخة مُعاد عرضها.

التشفير لكل سلسلة

لكل سلسلة معيار توقيع خاص بها. صُممت طبقة التحقق بحيث تُضاف السلاسل الجديدة دون المساس بما هو قائم.

سلسلة الكتلالمعيارطريقة التحقق
Ethereum و EVMEIP-191 personal_signاسترداد الموقِّع دون اتصال
محافظ العقود الذكيةEIP-1271استدعاء isValidSignature على السلسلة
Bitcoin (SegWit / Taproot)BIP-322دون اتصال
Bitcoin (P2PKH القديم)BIP-137 signmessageدون اتصال
Litecoin، Dogecoin، Zcash (t1)BIP-137 مع البادئة الخاصة بالشبكةدون اتصال
Solanaed25519دون اتصال
Polkadot, Kusamasr25519 / ed25519دون اتصال
TRONTronWeb signMessageV2 (وكذلك تطبيق TRON على Ledger)استرداد الموقِّع دون اتصال

التحقق الذاتي

تُصدِّر كل شهادة حزمة إثبات مكتفية ذاتيًا. يمكن لأي شخص التحقق منها مقابل السلاسل العامة، دون حساب ودون الحاجة إلى الثقة بـ BA | Signet:

  1. signature توقيع صالح على challenge بواسطة address على سلسلة الكتل المذكورة. وهذا وحده يُثبت التحكم في المفتاح.
  2. إعادة حساب SHA-256 لملف JSON المعياري للشهادة؛ ويجب أن يساوي contentHash (ورقة Merkle).
  3. طيّ الورقة باستخدام merkleProof (keccak256، أزواج مرتّبة)؛ ويجب أن تساوي النتيجة merkleRoot.
  4. استدعاء timestamps(merkleRoot) على عقد Stamper على Polygon؛ والقيمة غير الصفرية هي الوقت الذي كانت الشهادة موجودة بحلوله.
  5. اختياريًا، التحقق من إثبات OpenTimestamps مقابل كتلة Bitcoin.

ما نحفظه

الطرف المقابل ليس عميلًا لدينا وليس لديه حساب. نجمع الحد الأدنى: العنوان، ورسالة التحدي، والتوقيع، والطابع الزمني، ومرجع الجهة الطالبة. لا نطلب أبدًا مفتاحًا خاصًا أو عبارة استرداد ولا نقبلهما. لا توصيف قائم على عنوان IP بما يتجاوز ما يتطلبه منع إساءة الاستخدام. تُحفظ البيانات بوصفها سجل امتثال للجهة الطالبة، وتُحذف عند الطلب.