Rand Protocol
वेब

वेब पर Rand Wallet

वही वॉलेट एक सामान्य ब्राउज़र टैब में, जिसे आपकी अपनी मशीन से एक छोटा, केवल-लूपबैक सर्वर सर्व करता है। यह जानबूझकर कहीं होस्ट नहीं किया गया है: कोई वेब वॉलेट उतना ही भरोसेमंद होता है जितना उसे सर्व करने वाला ओरिजिन, और इसे आप स्वयं सर्व करते हैं।

यह कहीं होस्ट नहीं किया गया है। इसे clients रिपॉज़िटरी के checkout से, या नीचे दिए गए स्रोत आर्काइव से चलाएँ।

Rand Wallet आइकन
निर्माण में प्रयुक्त
JavaScript · WebAssembly कोर
वितरण माध्यम
clients रिपॉज़िटरी का एक चेकआउट, जिसे आपकी अपनी मशीन पर सर्व किया जाता है
आवश्यकताएँ
Node 20 या उसके बाद का संस्करण; एक अद्यतन ब्राउज़र
भेजना
RandProtocol प्रूवर या आपके अपने प्रूवर के माध्यम से भेजता है
डाउनलोड

संस्करण 0.8.0

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

  1. इसे अनपैक करें और भीतर web/wallet/serve.sh चलाएँ, ठीक वैसे ही जैसे git चेकआउट से। इस आर्काइव में फ़ुल नोड सबमॉड्यूल शामिल है, जिसे GitHub के अपने “Source code” आर्काइव छोड़ देते हैं।
सोर्स (.tar.gz)
clients रिपॉज़िटरी और उसका सबमॉड्यूल, एक ही आर्काइव में · 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

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

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

भेजना

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

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

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

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

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

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

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

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

स्पेंड कुंजी
निष्क्रिय अवस्था में IndexedDB में एन्क्रिप्टेड रहती है: 6,00,000 इटरेशन पर PBKDF2-SHA256 के अंतर्गत AES-256-GCM। अनलॉक होने पर यह केवल पेज की मेमोरी में रहती है, इसलिए रीलोड करने से वॉलेट लॉक हो जाता है। यह कभी localStorage, किसी URL या किसी त्रुटि संदेश में नहीं होती।
अनलॉक
गलत पासवर्ड पर हर प्रयास से पहले बढ़ती प्रतीक्षा लगाकर प्रयासों को सीमित किया जाता है, और यह गिनती रीलोड के बाद भी बनी रहती है।
सर्वर
केवल 127.0.0.1 से बाइंड होता है, किसी अन्य Host हेडर को अस्वीकार करता है, केवल स्टैटिक फ़ाइलें सर्व करता है और कुछ नहीं, एक सख़्त Content-Security-Policy के अंतर्गत: न इनलाइन स्क्रिप्ट, न रिमोट स्क्रिप्ट।
टैब
वॉलेट के दो टैब एक ही स्टोर को सुरक्षित रूप से साझा करते हैं: एक समय में एक स्कैन करता है और बाकी वही पढ़ते हैं जो उसने लिखा।
इसे चलाएँ

इसे चेकआउट से चलाएँ

  1. clients रिपॉज़िटरी क्लोन करें और web/wallet/serve.sh चलाएँ, फिर http://127.0.0.1:8787/ खोलें। पहली बार चलाने पर WebAssembly कोर बिल्ड होता है, जिसमें कुछ मिनट लगते हैं; उसके बाद शुरू करना केवल एक फ़ाइल कॉपी है।
  2. यदि आपको Rand Wallet किसी रिमोट URL पर मिले, तो उस पर ठीक उतना ही भरोसा करें जितना उस सर्वर को चलाने वाले पर। किसी भी महत्वपूर्ण काम के लिए डेस्कटॉप ऐप या ब्राउज़र एक्सटेंशन का उपयोग करें।

टूलचेन: 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… पता। कोई मौजूदा कुंजी, या 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 में इम्पोर्ट हो जाता है।