Rand Protocol
الويب

Rand Wallet على الويب

المحفظة نفسها في تبويب متصفح عادي، يقدّمها من جهازك خادم صغير يعمل على الواجهة المحلية (loopback) فقط. وهي غير مستضافة في أي مكان عن قصد: فالمحفظة على الويب لا تزيد موثوقيتها على موثوقية الأصل الذي يقدّمها، وهذه تقدّمها أنت.

غير مستضافة في أي مكان. شغّلها من نسخة مُستنسخة من مستودع العملاء، أو من أرشيف المصدر، أدناه.

أيقونة Rand Wallet
مبني باستخدام
JavaScript · نواة WebAssembly
يُوزَّع عبر
نسخة من مستودع العملاء، تُقدَّم على جهازك أنت
المتطلبات
Node 20 أو أحدث؛ ومتصفح حديث
الإرسال
يرسل عبر المُثبِت (prover) الخاص بـ RandProtocol، أو عبر مُثبِتك أنت
تنزيل

الإصدار 0.8.0

الملفات مرفقة بـإصدار v0.8.0 على GitHub؛ والأزرار هنا روابط إليها، ولا يُقدَّم شيء من هذا الموقع.

  1. فُكّ ضغطه وشغّل web/wallet/serve.sh داخله، تمامًا كما في نسخة git. يحتوي الأرشيف على الوحدة الفرعية للعقدة الكاملة، وهي ما تتركه أرشيفات “Source code” الخاصة بـ GitHub.
المصدر (.tar.gz)
مستودع العملاء ووحدته الفرعية في أرشيف واحد · 13.2 MB
تنزيل
rand-wallet-0.8.0-source.tar.gz
SHA-256 91f765f8cb6853914b49b26c1ba76d467c6e02d63a3f590acac3a155b977328d
تحقق مما نزّلته
SHA256SUMS
# باستخدام SHA256SUMS المنزَّل في المجلد نفسه الذي يوجد فيه الملف
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

# أو اطبع المجموع الاختباري لملف واحد وقارنه بالقيمة الموضحة أعلاه
shasum -a 256 rand-wallet-0.8.0-source.tar.gz

المجموع الاختباري المطابق يعني أن الملف هو الذي نُشر. ولا يعني أن الملف بُني من المصدر: فالإصدارات المبنية غير قابلة لإعادة الإنتاج بت لبت حتى الآن، لذا إن كان هذا ما تريد معرفته، فـابنِه بنفسك.

الإرسال

يرسل عبر المُثبِت (prover) الخاص بـ RandProtocol، أو عبر مُثبِتك أنت

يبلغ استهلاك إثبات الحزمة ذروته عند نحو 6.2 GB من الذاكرة، بينما يمنح المتصفح WebAssembly مقدار 4 GiB، لذا لا تُنشئ المحفظة على الويب الإثبات بنفسها أبدًا. فهي تبني التحويل، وتكلّف مُثبِتًا (prover) بإنشاء الإثبات (مُثبِت RandProtocol افتراضيًا، أو مُثبِت تقترنه بها)، ثم تتحقق من الإثبات محليًا وترسله.

لإبقاء سجلك بعيدًا عن مُثبِت RandProtocol، اقرن تطبيق Rand Wallet لسطح المكتب على الحاسوب نفسه (Settings → Prove for my other devices) أو rand-prover الخاص بك. والإثبات الجاري يعيش في ذاكرة التبويب فقط؛ فإعادة تحميل الصفحة في منتصف الإثبات تنسيه ولا يُرسَل شيء.

يستخدم الجهاز العاجز عن إنشاء إثبات مُثبِتات RandProtocol افتراضيًا: بضعة أجهزة يشغّلها المدقّقون (validators)، أربعة حاليًا، تحت https://prover.randprotocol.org، دون رسوم. ابتداءً من 0.6.9 لكلٍّ منها مفتاحه الخاص الذي تثبّته المحفظة، وتُبلغك المحفظة بذلك قبل أول عملية إرسال. يتلقى الجهاز الذي يُنشئ إثبات عملية الإرسال مفتاح العرض الخاص بالمحفظة وملحًا يُستخدم مرة واحدة: يستطيع مشغّله قراءة سجل المحفظة كاملًا، أي كل دفعة مستلمة ومرسلة، ولا يستطيع الإنفاق. أما مفتاح الإنفاق فلا يغادر جهازك أبدًا، وجهازك هو الذي يُنشئ إثبات التفويض الصغير نفسه. وللمزيد من الخصوصية اختر مُثبِتك الخاص في Settings → Prover، فيكون عندئذ مفضّلًا دائمًا؛ وتفحص المحفظة كل إثبات قبل أن ترسله.

إقران مُثبِت (prover) خطوة بخطوة: docs/prover.md.

مفاتيحك

أين يقيم المفتاح

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

مفتاح الإنفاق
مشفّر أثناء التخزين في IndexedDB: AES-256-GCM تحت PBKDF2-SHA256 بـ 600,000 تكرار. وعند فتح القفل لا يوجد إلا في ذاكرة الصفحة، لذا تقفل إعادة التحميل المحفظة. ولا يوجد أبدًا في localStorage ولا في عنوان URL ولا في رسالة خطأ.
فتح القفل
تُبطَّأ محاولات كلمات المرور الخاطئة بانتظار متزايد قبل كل محاولة، ويبقى العدّ قائمًا بعد إعادة التحميل.
الخادم
يرتبط بالعنوان 127.0.0.1 فقط، ويرفض أي ترويسة Host أخرى، ولا يقدّم سوى الملفات الثابتة، في ظل Content-Security-Policy صارمة: لا نص برمجي مضمَّن ولا نص برمجي بعيد.
التبويبات
يتشارك تبويبان من المحفظة مخزنًا واحدًا بأمان: يمسح أحدهما في كل مرة، وتقرأ الأخرى ما كتبه.
شغّلها

شغّلها من نسخة مستنسخة

  1. استنسخ مستودع العملاء وشغّل web/wallet/serve.sh، ثم افتح http://127.0.0.1:8787/. يبني التشغيل الأول نواة WebAssembly ويستغرق بضع دقائق؛ وبعد ذلك يكون البدء مجرد نسخ ملف.
  2. إذا وجدت Rand Wallet على عنوان بعيد ما، فثق به بقدر ما تثق بمن يشغّل ذلك الخادم تمامًا. وفي كل ما يهم، استخدم تطبيق سطح المكتب أو إضافة المتصفح.

سلسلة الأدوات: Rust 1.98.1، مثبّتة في المستودع، ويثبّتها rustup. دليل البناء يغطي كل عميل انطلاقًا من جهاز نظيف. أدلة المصدر: web/wallet/, ui/, core/.

Rand Wallet على الويب
bash
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init   # الإصدار الرسمي؛ core/vendor/fullnode @ v0.8.0 (c0878c3)
web/wallet/serve.sh   # ابنِ، ثم قدّم على http://127.0.0.1:8787/
RAND_WALLET_PORT=9000 web/wallet/serve.sh   # على منفذ آخر
كل عميل

ما يفعله، على كل منصة

إنشاء محفظة
مفتاح إنفاق يُولَّد على الجهاز ويُعرض مرة واحدة لتحفظه، وعنوان rand1… المشتق منه. استورد مفتاحًا موجودًا، أو ملف wallet.key.json من واجهة rand CLI؛ فكل عميل يصدّر الملف نفسه.
الاستلام والإرسال
رصيدك هو مجموعة الملاحظات (notes) التي لا يفتحها سوى مفتاحك؛ وتمسح المحفظة شجرة الالتزامات لتجدها. والتحويل بعملة RAND أو بأي رمز RPL مدرج هو حزمة واحدة بأربعة مدخلات وأربعة مخرجات يخوّلها إثبات. لا أحد يعرف المرسل ولا المستلم ولا المبلغ ولا الأصل الذي انتقل.
الحنفية (Faucet)
على testnet ذات حنفية مفتوحة، تُصدر نقرة واحدة 100 RAND في ملاحظة (note) لا يفتحها سواك.
اكشف ما تختاره فقط
انسخ مفتاح العرض الخاص بك وافتح My history في RandScan لترى كل ملاحظة (note) أرسلتها أو استلمتها، أو انسخ مفتاح معاملة دفعة واحدة لتكشف تلك الدفعة بالذات ولا شيء غيرها. يفك المستكشف التشفير في متصفحك ولا يرسل المفتاح إلى أي مكان.

تُفتح مفاتيح العرض ومفاتيح المعاملات على randscan.org.

ملاحظات testnet

قبل أن ترسل أي شيء

السلسلة
تخدم نقطة النهاية العامة السلسلة 21، وهي تعمل منذ 12 Oct 2026 10:31 UTC (قُطعت على fullnode v0.8.0). تضمّن نواة المحفظة fullnode v0.8.0 (c0878c3) وترفض أي سلسلة أخرى: تعمل السلسلة 21 بمجموعة القيود 9، ولذلك لا تستطيع محفظة 0.7.x الإرسال عليها، ولا يستطيع هذا الإصدار الإرسال على السلسلة 20. تنتقل المفاتيح والعناوين كما هي؛ وتعرض المحفظة التي فحصت السلسلة 20 لافتة «سلسلة مختلفة» مرة واحدة ثم تعيد الفحص من كتلة التكوين الأولى للسلسلة 21. تحتفظ إيداعات الجسر وسحوباته برسم قدره 0.1% بعملة zUSD، وتعرضه المحفظة قبل أن تسحب.
نقطة نهاية RPC
Settings → Network. القيمة الافتراضية https://rpc.randprotocol.org؛ ويصلح أي RPC لـ rand-node تستطيع الوصول إليه، ويُفحص العنوان المحفوظ قبل اعتماده
الإثبات
يبلغ استهلاك إثبات الحزمة ذروته عند نحو 6.2 GB من الذاكرة، ويستغرق نحو دقيقة على معالج حاسوب محمول
الحالة
برمجيات testnet تجريبية. لم تخضع للتدقيق. لا قيمة حقيقية لعملة RAND على testnet
الترخيص
GPL-3.0-only، مثل حزم العقدة الكاملة التي يرتبط بها كل عميل
عملاء آخرون

محفظة واحدة، كل منصة

ملف المفتاح نفسه وصيغة العنوان نفسها والقواعد نفسها في كل مكان: المحفظة المنشأة هنا تُستورد إلى أي عميل آخر وإلى واجهة سطر الأوامر rand.