Rand Protocol
Web

Rand Wallet di web

Wallet yang sama dalam tab pelayar biasa, dihidangkan daripada mesin anda sendiri oleh pelayan kecil yang hanya menerima sambungan loopback. Ia sengaja tidak dihoskan di mana-mana: wallet web hanya sebaik asal yang menghidangkannya, dan yang ini dihidangkan oleh anda.

Tidak dihoskan di mana-mana. Jalankannya daripada salinan repositori klien, atau daripada arkib sumber, di bawah.

Ikon Rand Wallet
Dibina dengan
JavaScript · teras WebAssembly
Diedarkan melalui
salinan semakan (checkout) repositori clients, dihidangkan pada mesin anda sendiri
Memerlukan
Node 20 atau lebih baharu; pelayar yang terkini
Penghantaran
Menghantar melalui prover RandProtocol, atau prover anda sendiri
Muat turun

Versi 0.8.0

Fail-fail dilampirkan pada keluaran v0.8.0 di GitHub; butang di sini ialah pautan kepadanya, dan tiada apa-apa yang disajikan daripada laman ini.

  1. Nyahmampat dan jalankan web/wallet/serve.sh di dalamnya, sama seperti daripada git checkout. Arkib ini mengandungi submodul full node, yang ditinggalkan oleh arkib “Source code” GitHub sendiri.
Sumber (.tar.gz)
repositori clients dan submodulnya, dalam satu arkib · 13.2 MB
Muat turun
rand-wallet-0.8.0-source.tar.gz
SHA-256 91f765f8cb6853914b49b26c1ba76d467c6e02d63a3f590acac3a155b977328d
Semak fail yang anda muat turun
SHA256SUMS
# dengan SHA256SUMS dimuat turun ke dalam folder yang sama dengan fail tersebut
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

# atau cetak hasil tambah semak bagi satu fail dan bandingkan dengan yang di atas
shasum -a 256 rand-wallet-0.8.0-source.tar.gz

Hasil tambah semak yang sepadan menunjukkan bahawa fail itu ialah fail yang diterbitkan. Ia tidak menunjukkan bahawa fail itu dibina daripada sumber: binaan belum boleh dihasilkan semula bit demi bit, jadi jika itu yang anda perlu ketahui, bina sendiri.

Penghantaran

Menghantar melalui prover RandProtocol, atau prover anda sendiri

Bukti bundle mencecah kira-kira 6.2 GB memori, sedangkan pelayar memberikan WebAssembly 4 GiB, maka wallet web tidak pernah membuat bukti sendiri. Ia membina pemindahan, meminta prover menjana bukti (prover RandProtocol secara lalai, atau yang anda pasangkan), menyemak bukti itu secara setempat dan menyerahkannya.

Untuk menyembunyikan sejarah anda daripada prover RandProtocol, pasangkan aplikasi desktop Rand Wallet pada komputer yang sama (Tetapan → Prove for my other devices) atau rand-prover anda sendiri. Bukti yang sedang dijana hanya berada dalam memori tab; memuat semula halaman semasa bukti dijana akan melupakannya, dan tiada apa-apa dihantar.

Peranti yang tidak dapat menjana bukti menggunakan prover RandProtocol secara lalai: beberapa mesin yang dikendalikan oleh validator (empat buat masa ini, di bawah https://prover.randprotocol.org), tanpa yuran. Mulai 0.6.9 setiap satu mempunyai kunci sendiri, yang disematkan oleh wallet, dan wallet memaklumkannya sebelum penghantaran pertama. Mesin yang menjana bukti bagi sesuatu penghantaran menerima kunci tontonan (viewing key) wallet dan satu salt sekali guna: pengendalinya boleh membaca keseluruhan sejarah wallet, setiap pembayaran yang diterima dan dihantar, tetapi tidak boleh membelanjakan. Kunci belanja tidak pernah meninggalkan peranti anda, yang menjana sendiri bukti kebenaran yang kecil itu. Untuk privasi yang lebih baik, pilih prover anda sendiri dalam Tetapan → Prover, yang kemudiannya sentiasa diutamakan; wallet menyemak setiap bukti sebelum menyerahkannya.

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

Kunci anda

Tempat kunci disimpan

Kunci perbelanjaan ialah satu-satunya rahsia dompet. Tiada akaun dan tiada pelayan yang menyimpan salinannya: jika kunci hilang, tiada sesiapa dapat memulihkannya, jadi simpan kunci itu apabila dompet menunjukkannya kepada anda.

Kunci belanja
Disulitkan semasa disimpan dalam IndexedDB: AES-256-GCM di bawah PBKDF2-SHA256 pada 600,000 lelaran. Apabila dibuka kunci, ia hanya berada dalam memori halaman, maka memuat semula akan mengunci wallet. Ia tidak pernah berada dalam localStorage, URL atau mesej ralat.
Buka kunci
Kata laluan yang salah dihadkan dengan tempoh menunggu yang bertambah sebelum setiap percubaan, dan bilangan percubaan kekal selepas muat semula.
Pelayan
Terikat pada 127.0.0.1 sahaja, menolak sebarang pengepala Host lain, menghidangkan fail statik dan tiada yang lain, di bawah Content-Security-Policy yang ketat: tiada skrip sebaris dan tiada skrip jauh.
Tab
Dua tab wallet berkongsi satu stor dengan selamat: satu mengimbas pada satu masa dan yang lain membaca apa yang ditulisnya.
Jalankannya

Jalankan daripada checkout

  1. Klon repositori clients dan jalankan web/wallet/serve.sh, kemudian buka http://127.0.0.1:8787/. Larian pertama membina teras WebAssembly, yang mengambil masa beberapa minit; selepas itu permulaan hanyalah salinan fail.
  2. Jika anda menemui Rand Wallet pada sesuatu URL jauh, percayailah sama seperti anda mempercayai pihak yang mengendalikan pelayan itu. Untuk perkara yang penting, gunakan aplikasi desktop atau sambungan pelayar.

Rantaian alat: Rust 1.98.1, disematkan dalam repositori, yang dipasang oleh rustup. Panduan pembinaan meliputi setiap klien bermula daripada mesin yang bersih. Direktori 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   # keluaran rasmi; core/vendor/fullnode @ v0.8.0 (c0878c3)
web/wallet/serve.sh   # bina, kemudian hidangkan di http://127.0.0.1:8787/
RAND_WALLET_PORT=9000 web/wallet/serve.sh   # pada port lain
Setiap klien

Fungsinya, pada setiap platform

Cipta wallet
Kunci belanja yang dijana pada peranti, dipaparkan sekali untuk anda simpan, dan alamat rand1… yang diperoleh daripadanya. Import kunci sedia ada, atau wallet.key.json daripada CLI rand; setiap klien mengeksport fail yang sama.
Terima dan hantar
Baki anda ialah set nota yang hanya boleh dibuka oleh kunci anda; wallet mengimbas pokok komitmen untuk mencarinya. Pemindahan RAND atau mana-mana token RPL yang disenaraikan ialah satu bundle 4-masuk-4-keluar yang disahkan oleh satu bukti. Tiada sesiapa mengetahui penghantar, penerima, jumlah atau aset yang dipindahkan.
Faucet
Pada testnet yang mempunyai faucet terbuka, satu ketukan mencetak 100 RAND ke dalam nota yang hanya boleh dibuka oleh anda.
Dedahkan hanya apa yang anda pilih
Salin kunci tontonan anda dan buka My history di RandScan untuk melihat setiap nota yang anda hantar atau terima, atau salin kunci transaksi satu pembayaran untuk mendedahkan pembayaran itu sahaja dan tiada yang lain. Penjelajah menyahsulit dalam pelayar anda dan tidak pernah menghantar kunci itu ke mana-mana.

Kunci pemantauan dan kunci transaksi dibuka di randscan.org.

Nota testnet

Sebelum anda menghantar apa-apa

Rantaian
Titik akhir awam melayani chain 21, yang beroperasi sejak 12 Oct 2026 10:31 UTC (dipotong pada fullnode v0.8.0). Teras dompet memasukkan fullnode v0.8.0 (c0878c3) sebagai vendor dan menolak sebarang chain lain: chain 21 menjalankan constraint set 9, maka dompet 0.7.x tidak dapat menghantar transaksi padanya, dan keluaran ini tidak dapat menghantar transaksi pada chain 20. Kunci dan alamat dibawa terus; dompet yang telah mengimbas chain 20 memaparkan sepanduk chain berbeza sekali sahaja dan mengimbas semula dari genesis chain 21. Deposit dan pengeluaran jambatan mengekalkan yuran 0.1% dalam zUSD, yang dipaparkan oleh dompet sebelum anda mengeluarkan.
Titik akhir RPC
Tetapan → Rangkaian. Lalai kepada https://rpc.randprotocol.org; sebarang RPC rand-node yang boleh anda capai berfungsi, dan URL yang disimpan disemak sebelum dikekalkan
Pembuktian
Bukti bundle mencecah kira-kira 6.2 GB memori dan mengambil masa kira-kira seminit pada CPU komputer riba
Status
Perisian testnet eksperimen. Belum diaudit. RAND pada testnet tidak mempunyai nilai sebenar
Lesen
GPL-3.0-only, seperti crate full node yang dipautkan oleh setiap klien
Klien lain

Satu dompet, setiap platform

Fail kunci, format alamat dan peraturan yang sama di mana-mana: dompet yang dicipta di sini boleh diimport ke dalam mana-mana klien lain dan ke dalam CLI rand.