Rand Protocol
Web

Rand Wallet di web

Dompet yang sama di tab peramban biasa, dilayani dari mesin Anda sendiri oleh server kecil yang hanya menerima koneksi loopback. Dompet ini sengaja tidak di-host di mana pun: dompet web hanya sepercaya origin yang melayaninya, dan dalam hal ini origin-nya adalah Anda sendiri.

Tidak dihosting di mana pun. Jalankan dari salinan repositori klien (checkout), atau dari arsip kode sumber, di bawah ini.

Ikon Rand Wallet
Dibangun dengan
JavaScript · inti WebAssembly
Didistribusikan melalui
checkout repositori clients, dijalankan di mesin Anda sendiri
Prasyarat
Node 20 atau yang lebih baru; peramban versi terkini
Pengiriman
Mengirim melalui prover RandProtocol, atau prover Anda sendiri
Unduhan

Versi 0.8.0

Berkas dilampirkan pada rilis v0.8.0 di GitHub; tombol di sini hanyalah tautan ke berkas tersebut, dan tidak ada yang disajikan dari situs ini.

  1. Ekstrak, lalu jalankan web/wallet/serve.sh di dalamnya, persis seperti dari git checkout. Arsip ini memuat submodul full node, yang tidak disertakan dalam arsip “Source code” bawaan GitHub.
Kode sumber (.tar.gz)
repositori clients beserta submodulnya, dalam satu arsip · 13.2 MB
Unduh
rand-wallet-0.8.0-source.tar.gz
SHA-256 91f765f8cb6853914b49b26c1ba76d467c6e02d63a3f590acac3a155b977328d
Periksa berkas yang Anda unduh
SHA256SUMS
# dengan SHA256SUMS yang diunduh ke folder yang sama dengan berkasnya
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

# atau cetak checksum satu berkas dan bandingkan dengan yang tertera di atas
shasum -a 256 rand-wallet-0.8.0-source.tar.gz

Checksum yang cocok menunjukkan bahwa berkas tersebut adalah berkas yang dipublikasikan. Hal itu tidak menunjukkan bahwa berkas dibangun dari kode sumber: build belum dapat direproduksi bit demi bit, jadi jika itu yang perlu Anda ketahui, bangunlah sendiri.

Pengiriman

Mengirim melalui prover RandProtocol, atau prover Anda sendiri

Bukti bundle mencapai puncak sekitar 6,2 GB memori, sedangkan peramban memberi WebAssembly 4 GiB, sehingga dompet web tidak pernah membuktikan sendiri. Dompet ini menyusun transfer, meminta prover membuat bukti (prover RandProtocol secara bawaan, atau prover yang Anda pasangkan), memeriksa bukti tersebut secara lokal, lalu mengirimkannya.

Agar riwayat Anda tidak terlihat oleh prover RandProtocol, pasangkan aplikasi desktop Rand Wallet di komputer yang sama (Pengaturan → Prove for my other devices) atau rand-prover milik Anda sendiri. Bukti yang sedang berjalan hanya berada di memori tab; memuat ulang halaman di tengah proses pembuktian akan menghapusnya, dan tidak ada yang dikirim.

Perangkat yang tidak dapat membuat bukti memakai prover RandProtocol secara bawaan: beberapa mesin yang dijalankan oleh validator (saat ini empat, di bawah https://prover.randprotocol.org), tanpa biaya. Mulai 0.6.9 setiap prover memiliki kunci sendiri yang di-pin oleh dompet, dan dompet menyampaikannya sebelum pengiriman pertama. Mesin yang membuktikan suatu pengiriman menerima viewing key dompet dan sebuah salt sekali pakai: operatornya dapat membaca seluruh riwayat dompet, setiap pembayaran yang diterima dan dikirim, tetapi tidak dapat membelanjakan. Spend key tidak pernah meninggalkan perangkat Anda, yang membuat sendiri bukti otorisasi kecilnya. Untuk privasi lebih, pilih prover Anda sendiri di Pengaturan → Prover, yang kemudian selalu diutamakan; dompet memeriksa setiap bukti sebelum mengirimkannya.

Memasangkan prover, langkah demi langkah: docs/prover.md.

Kunci Anda

Tempat kunci disimpan

Kunci pengeluaran (spend key) adalah satu-satunya rahasia dompet. Tidak ada akun dan tidak ada server yang menyimpan salinannya: jika kunci hilang, tidak ada yang dapat memulihkannya, jadi simpanlah kunci tersebut saat dompet menampilkannya kepada Anda.

Spend key
Dienkripsi saat disimpan di IndexedDB: AES-256-GCM dengan PBKDF2-SHA256 pada 600.000 iterasi. Saat terbuka, kunci hanya berada di memori halaman, sehingga memuat ulang akan mengunci dompet. Kunci ini tidak pernah berada di localStorage, URL, atau pesan galat.
Buka kunci
Kata sandi yang salah dibatasi dengan waktu tunggu yang bertambah sebelum setiap percobaan, dan hitungannya tetap tersimpan setelah dimuat ulang.
Server
Hanya mengikat 127.0.0.1, menolak header Host lain, melayani berkas statis dan tidak yang lain, dengan Content-Security-Policy yang ketat: tanpa skrip inline dan tanpa skrip jarak jauh.
Tab
Dua tab dompet berbagi satu penyimpanan dengan aman: satu tab memindai pada satu waktu dan yang lain membaca hasil tulisannya.
Jalankan

Jalankan dari checkout

  1. Kloning repositori clients dan jalankan web/wallet/serve.sh, lalu buka http://127.0.0.1:8787/. Proses pertama membangun inti WebAssembly, yang memakan waktu beberapa menit; setelah itu, memulai hanya berupa penyalinan berkas.
  2. Jika Anda menemukan Rand Wallet di suatu URL jarak jauh, percayai sebatas Anda memercayai pihak yang menjalankan server tersebut. Untuk hal yang penting, gunakan aplikasi desktop atau ekstensi peramban.

Toolchain: Rust 1.98.1, dipatok di repositori, yang dipasang oleh rustup. Panduan build mencakup setiap klien mulai dari mesin yang bersih. Direktori kode sumber: web/wallet/, ui/, core/.

Rand Wallet di web
bash
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init   # rilis ini; core/vendor/fullnode @ v0.8.0 (c0878c3)
web/wallet/serve.sh   # build, lalu layani di http://127.0.0.1:8787/
RAND_WALLET_PORT=9000 web/wallet/serve.sh   # di port lain
Setiap klien

Fungsinya di setiap platform

Membuat dompet
Sebuah spend key yang dibuat di perangkat, ditampilkan sekali agar Anda simpan, beserta alamat rand1… yang diturunkan darinya. Impor kunci yang sudah ada, atau wallet.key.json dari CLI rand; setiap klien mengekspor berkas yang sama.
Menerima dan mengirim
Saldo Anda adalah himpunan note yang hanya dapat dibuka oleh kunci Anda; dompet memindai pohon komitmen untuk menemukannya. Transfer RAND atau token RPL mana pun yang terdaftar adalah satu bundle 4-masuk-4-keluar yang diotorisasi oleh sebuah bukti. Tidak ada pihak yang mengetahui pengirim, penerima, jumlah, atau aset mana yang berpindah.
Faucet
Di testnet dengan faucet terbuka, satu ketukan mencetak 100 RAND ke dalam sebuah note yang hanya dapat Anda buka.
Ungkapkan hanya yang Anda pilih
Salin viewing key Anda dan buka My history di RandScan untuk melihat setiap note yang Anda kirim atau terima, atau salin kunci transaksi satu pembayaran untuk mengungkapkan pembayaran itu saja dan tidak ada yang lain. Penjelajah mendekripsi di peramban Anda dan tidak pernah mengirim kunci ke mana pun.

Viewing key dan transaction key dibuka di randscan.org.

Catatan testnet

Sebelum Anda mengirim apa pun

Rantai
Endpoint publik melayani chain 21, yang aktif sejak 12 Okt 2026 10:31 UTC (dibuat dari fullnode v0.8.0). Inti dompet memuat vendor fullnode v0.8.0 (c0878c3) dan menolak chain lain mana pun: chain 21 menjalankan constraint set 9, sehingga dompet 0.7.x tidak dapat mengirim di chain tersebut, dan rilis ini tidak dapat mengirim di chain 20. Kunci dan alamat tetap berlaku; dompet yang memindai chain 20 menampilkan banner chain berbeda satu kali, lalu memindai ulang dari genesis chain 21. Deposit dan penarikan bridge dikenai biaya 0,1% dalam zUSD, yang ditampilkan dompet sebelum Anda melakukan penarikan.
Endpoint RPC
Pengaturan → Jaringan. Bawaannya https://rpc.randprotocol.org; RPC rand-node mana pun yang dapat Anda jangkau akan berfungsi, dan URL yang disimpan diperiksa sebelum dipertahankan
Pembuktian
Bukti bundle mencapai puncak sekitar 6,2 GB memori dan memakan waktu sekitar satu menit pada CPU laptop
Status
Perangkat lunak testnet eksperimental. Belum diaudit. RAND di testnet tidak bernilai riil
Lisensi
GPL-3.0-only, seperti crate full node yang ditautkan setiap klien
Klien lain

Satu dompet, setiap platform

Berkas kunci, format alamat, dan aturan yang sama di mana-mana: dompet yang dibuat di sini dapat diimpor ke klien lain mana pun dan ke CLI rand.