Rand Protocol
ब्राउज़र एक्सटेंशन

Firefox के लिए Rand Wallet

Chrome बिल्ड वाला ही एक्सटेंशन, उसी कोड से, Firefox के लिए पैकेज किया गया। इसमें कुछ भी मिनिफ़ाई या बंडल नहीं किया गया है, इसलिए Mozilla जिस कोड की समीक्षा करता है, आप वही कोड चलाते हैं।

Firefox ऐड-ऑन लिस्टिंग लंबित है। समीक्षा पूरी होने तक संस्करण 0.8.0 नीचे दिए गए डाउनलोड से इंस्टॉल करें, या इसे स्रोत से बिल्ड करें।

Rand Wallet आइकन
निर्माण में प्रयुक्त
JavaScript · Manifest V3
वितरण माध्यम
addons.mozilla.org
आवश्यकताएँ
Firefox 140 या उसके बाद का संस्करण
भेजना
RandProtocol प्रूवर से, या आपके अपने प्रूवर से भेजता है
डाउनलोड

संस्करण 0.8.0

फ़ाइलें GitHub पर v0.8.0 रिलीज़ के साथ संलग्न हैं; यहाँ के बटन उन्हीं के लिंक हैं, और इस साइट से कुछ भी सर्व नहीं किया जाता।

  1. about:debugging खोलें, यह Firefox → अस्थायी ऐड-ऑन लोड करें… चुनें और zip चुनें।
  2. Firefox पुनः आरंभ होने पर अस्थायी ऐड-ऑन हट जाता है। Firefox का रिलीज़ संस्करण केवल वही स्थायी रूप से इंस्टॉल करता है जिस पर addons.mozilla.org ने हस्ताक्षर किए हों, इसलिए लिस्टिंग लाइव होने तक यही तरीका है।
  3. Firefox किसी एक्सटेंशन को साइट अनुमतियाँ इंस्टॉल के समय देता है। यदि आपने वहाँ randbridge.org को अस्वीकार कर दिया था, तो बाद में एक्सटेंशन के अनुमति पैनल में इसकी अनुमति दें।
Firefox ऐड-ऑन (.zip)
Firefox 140 या उसके बाद का संस्करण · 2.7 MB
डाउनलोड करें
rand-wallet-firefox-0.8.0.zip
SHA-256 2982e605ba06dfac9de02e67652e3afc6d8b4d4ce20cb17225fe5c8335a503c6
जो डाउनलोड किया है, उसकी जाँच करें
SHA256SUMS
# जब SHA256SUMS उसी फ़ोल्डर में डाउनलोड किया गया हो जिसमें फ़ाइल है
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

# या किसी एक फ़ाइल का sum प्रिंट करें और उसका मिलान ऊपर दिए गए sum से करें
shasum -a 256 rand-wallet-firefox-0.8.0.zip

sum का मिलान यह बताता है कि फ़ाइल वही है जो प्रकाशित की गई थी। इससे यह सिद्ध नहीं होता कि फ़ाइल स्रोत से ही बिल्ड की गई है: बिल्ड अभी बिट-दर-बिट पुनरुत्पादनीय नहीं हैं, इसलिए यदि आपको यही जानना है, तो इसे स्वयं बिल्ड करें।

भेजना

RandProtocol प्रूवर से, या आपके अपने प्रूवर से भेजता है

एक बंडल प्रूफ़ के लिए अधिकतम लगभग 6.2 GB मेमोरी चाहिए, जबकि ब्राउज़र WebAssembly को 4 GiB देता है। इसलिए एक्सटेंशन स्वयं कभी प्रूफ़ नहीं बनाता। वह ट्रांसफ़र तैयार करता है, एक प्रूवर से प्रूफ़ बनवाता है (डिफ़ॉल्ट रूप से RandProtocol प्रूवर, या आपके द्वारा जोड़ा गया प्रूवर), प्रूफ़ को स्थानीय रूप से जाँचता है और उसे सबमिट करता है।

शुरू में, एक बार सूचना दिखाने के बाद, यह RandProtocol प्रूवर का उपयोग करता है। अपना इतिहास उससे छिपाए रखने के लिए उसी कंप्यूटर पर Rand Wallet डेस्कटॉप ऐप जोड़ें (उसकी सेटिंग्स → मेरे अन्य डिवाइसों के लिए प्रूफ़ बनाएँ, फिर लिंक को एक्सटेंशन की सेटिंग्स → प्रूवर में पेस्ट करें), या किसी सर्वर पर अपना rand-prover चलाएँ।

जो डिवाइस प्रूफ़ नहीं बना सकता, वह डिफ़ॉल्ट रूप से RandProtocol प्रूवरों का उपयोग करता है: ये वैलिडेटरों द्वारा चलाई जाने वाली कुछ मशीनें हैं (आज चार, https://prover.randprotocol.org के अंतर्गत), जिनका कोई शुल्क नहीं है। 0.6.9 से हर मशीन की अपनी कुंजी है, जिसे वॉलेट पिन करता है, और वॉलेट पहली बार भेजने से पहले यह बता देता है। जो मशीन किसी भेजे जाने का प्रूफ़ बनाती है, उसे वॉलेट की व्यूइंग कुंजी और एक बार उपयोग होने वाला सॉल्ट मिलता है: उसका संचालक वॉलेट का पूरा इतिहास, हर प्राप्त और भेजा गया भुगतान, पढ़ सकता है, पर ख़र्च नहीं कर सकता। स्पेंड कुंजी आपके डिवाइस से कभी बाहर नहीं जाती; छोटा प्राधिकरण प्रूफ़ आपका डिवाइस स्वयं बनाता है। अधिक गोपनीयता के लिए सेटिंग्स → प्रूवर में अपना प्रूवर चुनें, जिसे इसके बाद हमेशा प्राथमिकता दी जाती है; वॉलेट हर प्रूफ़ को सबमिट करने से पहले जाँचता है।

prover को जोड़ने की चरण-दर-चरण प्रक्रिया: docs/prover.md।

आपकी कुंजियाँ

कुंजी कहाँ रहती है

स्पेंड कुंजी वॉलेट का एकमात्र रहस्य है। कोई खाता नहीं है और कोई सर्वर इसकी प्रति नहीं रखता: कुंजी खो जाने पर कोई उसे पुनर्स्थापित नहीं कर सकता, इसलिए जब वॉलेट इसे आपको दिखाए, तभी इसे सहेज लें।

स्पेंड कुंजी
वॉलेट कोर के भीतर ऑपरेटिंग सिस्टम की रैंडमनेस से बनाई जाती है और केवल PBKDF2-SHA256 के तहत AES-256-GCM वॉल्ट के रूप में संग्रहीत होती है। अनलॉक रहने के दौरान यह ब्राउज़र के सेशन स्टोरेज में रहती है, जो ब्राउज़र बंद होने पर ख़ाली हो जाता है और जिसे वेब पेज नहीं पढ़ सकते।
स्क्रीन पर कुंजियाँ
व्यूइंग कुंजी और स्पेंड कुंजी का निर्यात एक नई पासवर्ड जाँच के पीछे हैं, जिसकी लागत अनलॉक करने जितनी ही है। कोई भी कुंजी कभी URL, कंसोल या एक्सटेंशन के स्थायी स्टोरेज में नहीं रखी जाती।
स्वतः-लॉक
यह ब्राउज़र अलार्म है, पेज टाइमर नहीं, इसलिए पॉपअप बंद होने और बैकग्राउंड वर्कर के निष्क्रिय होने के बाद भी वॉलेट समय पर लॉक हो जाता है।
नेटवर्क
केवल सेटिंग्स में दिया गया RPC URL। इसे किसी नए पते पर बदलने पर केवल उसी एक होस्ट तक पहुँचने की अनुमति माँगी जाती है। कोई एनालिटिक्स नहीं और कोई रिमोट कोड नहीं: एक्सटेंशन केवल वही स्क्रिप्ट चलाता है जिनके साथ वह इंस्टॉल हुआ था।
इसके अतिरिक्त

स्वैप, और Rand साइटों के लिए window.rand

वॉलेट की अपनी स्वैप स्क्रीन durian.market पूलों के माध्यम से RAND और टोकनों का व्यापार करती है: वह चेन पर मौजूद पूल से सटीक राशि का कोट देती है, फिर स्वैप का प्रूफ़ बनवाकर उसे स्वयं भेजती है, और durian.market भी window.rand.invoke के माध्यम से यही स्वैप माँग सकता है।

randbridge.org एक्सटेंशन को window.rand के रूप में पहचानता है और कनेक्ट करने का अनुरोध कर सकता है। कनेक्ट करने के लिए अनलॉक वॉलेट और उस साइट के लिए आपकी स्वीकृति आवश्यक है, और कनेक्ट हुई साइट को केवल आपका पता और उसका ब्रिज प्राप्तकर्ता हैश पता चलता है, इससे अधिक कुछ नहीं।

स्रोत से बिल्ड करें

या इसे स्वयं बिल्ड करें

  1. नीचे दिए गए clients रिपॉज़िटरी से एक्सटेंशन को बिल्ड और पैक करें।
  2. about:debugging खोलें, यह Firefox → अस्थायी ऐड-ऑन लोड करें… चुनें और dist/firefox/manifest.json चुनें।

टूलचेन: Rust 1.98.1, जो रिपॉज़िटरी में पिन किया गया है और जिसे rustup इंस्टॉल करता है। बिल्ड गाइड एक साफ़ मशीन से हर क्लाइंट को बिल्ड करने की प्रक्रिया बताती है। स्रोत डायरेक्टरी: firefox/, extension/, ui/, core/.

Firefox के लिए 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)
core/scripts/build-wasm.sh   # → extension/shared/core/ (wasm-bindgen-cli इंस्टॉल करता है)
firefox/pack.sh   # → dist/firefox/ और dist/rand-wallet-firefox-<version>.zip
npx web-ext lint --source-dir dist/firefox
हर क्लाइंट

हर प्लेटफ़ॉर्म पर यह क्या करता है

वॉलेट बनाएँ
डिवाइस पर बनाई गई एक स्पेंड कुंजी, जिसे सहेजने के लिए एक बार दिखाया जाता है, और उससे व्युत्पन्न rand1… पता। कोई मौजूदा कुंजी, या rand CLI की wallet.key.json इम्पोर्ट करें; हर क्लाइंट वही फ़ाइल एक्सपोर्ट करता है।
प्राप्त करें और भेजें
आपका बैलेंस उन नोटों का समूह है जिन्हें केवल आपकी कुंजी खोल सकती है; वॉलेट उन्हें खोजने के लिए कमिटमेंट ट्री स्कैन करता है। RAND या किसी भी सूचीबद्ध RPL टोकन का ट्रांसफ़र एक 4-इन-4-आउट बंडल है, जिसे एक प्रूफ़ अधिकृत करता है। किसी को पता नहीं चलता कि प्रेषक कौन है, प्राप्तकर्ता कौन है, राशि कितनी है या कौन-सा एसेट स्थानांतरित हुआ।
फ़ॉसेट
खुले फ़ॉसेट वाले testnet पर, एक टैप से 100 RAND एक ऐसे नोट में मिंट होते हैं जिसे केवल आप खोल सकते हैं।
केवल वही प्रकट करें जो आप चुनें
अपनी व्यूइंग कुंजी कॉपी करें और RandScan पर My history खोलें, ताकि आपके भेजे या प्राप्त किए गए हर नोट को देख सकें, या किसी एक भुगतान की ट्रांज़ैक्शन कुंजी कॉपी करके ठीक वही भुगतान प्रकट करें और कुछ नहीं। एक्सप्लोरर आपके ब्राउज़र में डिक्रिप्ट करता है और कुंजी को कभी कहीं नहीं भेजता।

व्यूइंग कुंजियाँ और ट्रांज़ैक्शन कुंजियाँ randscan.org पर खुलती हैं।

testnet संबंधी टिप्पणियाँ

कुछ भी भेजने से पहले

चेन
सार्वजनिक एंडपॉइंट chain 21 को सर्व करता है, जो 12 Oct 2026 10:31 UTC से लाइव है (fullnode v0.8.0 पर कट किया गया)। वॉलेट कोर fullnode v0.8.0 (c0878c3) को वेंडर करता है और किसी अन्य चेन को अस्वीकार करता है: chain 21 constraint set 9 चलाती है, इसलिए 0.7.x वॉलेट इस पर भेज नहीं सकता, और यह रिलीज़ chain 20 पर नहीं भेज सकती। कुंजियाँ और पते यथावत रहते हैं; जिस वॉलेट ने chain 20 को स्कैन किया था, वह एक बार भिन्न-चेन बैनर दिखाता है और chain 21 के जेनेसिस से पुनः स्कैन करता है। ब्रिज जमा और निकासी पर zUSD में 0.1% शुल्क बना रहता है, जिसे वॉलेट निकासी से पहले दिखाता है।
RPC एंडपॉइंट
Settings → Network। डिफ़ॉल्ट https://rpc.randprotocol.org है; कोई भी rand-node RPC जिस तक आप पहुँच सकें, काम करता है, और सहेजे गए URL को रखने से पहले जाँचा जाता है
प्रूविंग
एक बंडल प्रूफ़ की मेमोरी अधिकतम लगभग 6.2 GB तक जाती है और लैपटॉप CPU पर इसमें लगभग एक मिनट लगता है
स्थिति
प्रायोगिक testnet सॉफ़्टवेयर। ऑडिट नहीं हुआ है। testnet पर RAND का कोई वास्तविक मूल्य नहीं है
लाइसेंस
GPL-3.0-only, उन फ़ुल नोड क्रेट्स की तरह जिनसे हर क्लाइंट लिंक होता है
अन्य क्लाइंट

एक वॉलेट, हर प्लेटफ़ॉर्म

हर जगह वही कुंजी फ़ाइल, वही पता प्रारूप और वही नियम: यहाँ बनाया गया वॉलेट किसी भी अन्य क्लाइंट में और rand CLI में इम्पोर्ट हो जाता है।