استخدم هذه الصفحة لمعرفة ما يعمل على كل نوع من الأجهزة، ولماذا تتصرف المحافظ بشكل مختلف. كل Rand Wallet هي المحفظة نفسها بغلاف مختلف. نواة واحدة مكتوبة بلغة Rust، مبنية من حزم العقدة الكاملة نفسها، تحتفظ بالمفاتيح وتجري العمليات التشفيرية على كل جهاز. الفرق الحقيقي الوحيد هو الذاكرة: يبلغ إثبات الحزمة ذروته عند نحو 6 GB. يُنجزه الحاسوب المكتبي أو الهاتف الكبير في الحال، وما كان أصغر منهما يسلّم هذا الإثبات وحده إلى مُثبِت. روابط التنزيل وخطوات البناء لكل عميل موجودة في /clients.
نواة واحدة، خمسة أشكال
| الجهاز والعميل | النواة داخله | إثبات التحويل | مكان حفظ مفتاح الإنفاق |
|---|---|---|---|
| iPhone: تطبيق iOS، iOS 16 أو أحدث | XCFramework | بذاكرة تبلغ نحو 8 GB، في دقيقة أو دقيقتين؛ وإلا عبر مُثبِت مقترن | Keychain، ولا يتاح إلا والجهاز مفتوح القفل؛ ولا يُزامَن أبدًا |
| Android: تطبيق Android، Android 8 أو أحدث | مكتبة أصلية | بذاكرة تبلغ نحو 8 GB، ضمن خدمة تعمل في المقدمة؛ وإلا عبر مُثبِت مقترن | مشفّر بمفتاح يحتفظ به Android Keystore |
| الحاسوب المحمول والمكتبي: تطبيق سطح المكتب لأنظمة macOS وWindows وLinux | حزمة Rust، مرتبطة مباشرة | على الجهاز نفسه، في نحو دقيقة على معالج حاسوب محمول؛ ولا يبدأ إثباتًا إذا كانت الذاكرة أقل من 8 GiB | خزنة محمية بكلمة مرور (AES-256-GCM، وPBKDF2 بـ 600,000 تكرار)؛ وعند فتحها لا يوجد المفتاح إلا في ذاكرة التطبيق |
| المتصفح: إضافتا Chrome وFirefox، والمحفظة على الويب | WebAssembly | لا يحدث أبدًا: يحصل WebAssembly على 4 GiB، لذا يتولى مُثبِت مقترن دائمًا إثبات الحزمة | خزنة من النوع نفسه؛ وعند فتحها يكون المفتاح في ذاكرة الصفحة أو في تخزين جلسة التبويب |
يشغّل الحاسوب المحمول والحاسوب المكتبي تطبيق سطح المكتب نفسه. والفرق الوحيد هو الذاكرة المتاحة في الجهاز للإثبات. المحفظة المنشأة على أي منها تُستورد إلى الأخرى وإلى سطر أوامر rand، والعكس صحيح: ملف المفتاح وصيغة العنوان والقواعد واحدة في كل مكان.
أي محفظة ترسل على chain 20
تربط chain 20، العاملة منذ 2026-10-01 الساعة 06:17 بالتوقيت العالمي المنسّق، كل إثبات وكل رسالة موقّعة بهاش التكوين الأول (genesis) الخاص بها، ولذلك تحتاج المحفظة إلى fullnode v0.6.8 كي ترسل عليها. Rand Wallet v0.6.8، الصادرة في 2026-10-01، هي تلك المحفظة: نواة كل تطبيق تضمّن fullnode v0.6.8، ويُنجز إثبات الحزمة افتراضيًا مُثبِت RandProtocol، مع إمكان استخدام مُثبِت خاص بك خيارًا يحفظ الخصوصية. أما تطبيقات 0.6.7 المبنية لـ chain 19 فلا تستطيع الإرسال على chain 20؛ فحدّثها. ويرسل أيضًا سطر أوامر rand من إصدار fullnode v0.6.8 (سطر الأوامر)، ويقبل ملف المفتاح نفسه.
ما يفعله كل عميل
- يُبقي مفتاح الإنفاق على الجهاز. يُولَّد من العشوائية التي يوفرها نظام التشغيل ويُخزَّن مشفّرًا. لا يرسله أي عميل إلى أي جهة، وليس في الشبكة حسابات يُرسل إليها.
- يعثر على ملاحظاته بنفسه. يمسح السلسلة بمفتاح العرض الخاص به، فلا يعرف أي خادم أي الملاحظات تخصه.
- يُنتج إثبات التفويض بنفسه. يحمل التحويل إثباتين. الصغير منهما، المبني على مفتاح الإنفاق، يستغرق ثوانيَ ويُنتَج دائمًا على الجهاز (المدقّقون والمُجمِّعون والمُثبِتون).
- يتولى إنجاز إثبات الحزمة. يُنتجه على الجهاز إذا توفرت الذاكرة، وإلا فمن مُثبِت مقترن. وكل إثبات يعود إليه يُتحقَّق منه قبل تقديم أي شيء.
- يقدّم إلى أي عقدة RPC. ما يرسله هو ما تراه كل عقدة: الالتزامات والمُبطِلات (nullifiers) والمظاريف المختومة والرسوم والإثباتات.
اقتران مُثبِت
الهاتف الذي تنقصه الذاكرة، وكل محفظة متصفح، يقترنان بمُثبِت لإنجاز إثبات الحزمة. على الحاسوب نفسه يتولى ذلك تطبيق سطح المكتب (Settings → Prove for my other devices، ثم الصق الرابط في Settings → Prover في محفظة المتصفح). وفي غير ذلك يكون rand-prover تشغّله أنت (تشغيل عقدة)، أو مجمّع المدقّقين على prover.randprotocol.org.
يتلقى المُثبِت المقترن مفتاح العرض الخاص بالمحفظة وملحًا يُستخدم مرة واحدة، ولا يتلقى مفتاح الإنفاق أبدًا. يستطيع قراءة سجل تلك المحفظة كاملًا، الماضي والمستقبل، ولا يستطيع الإنفاق. اقترن فقط بمُثبِت تقبل أن يطّلع على ذلك السجل. وللخصوصية الكاملة، أنجِز الإثبات على حاسوب مكتبي أو هاتف بذاكرة 8 GB، أو شغّل مُثبِتك الخاص.