Rand Protocol
Extension de navigateur

Rand Wallet pour Firefox

La même extension que la version Chrome, issue du même code, empaquetée pour Firefox. Rien n'y est minifié ni regroupé : le code examiné par Mozilla est celui que vous exécutez.

La fiche sur Firefox Add-ons est en attente. Tant qu'elle n'a pas passé la validation, installez la version 0.8.0 depuis le téléchargement ci-dessous, ou compilez-la depuis les sources.

Icône de Rand Wallet
Développé avec
JavaScript · Manifest V3
Distribué via
addons.mozilla.org
Prérequis
Firefox 140 ou version ultérieure
Envoi
Envoie via le prover de RandProtocol, ou le vôtre
Téléchargement

Version 0.8.0

Les fichiers sont joints à la release v0.8.0 sur GitHub ; les boutons ci-dessous sont des liens vers ces fichiers, et rien n'est servi depuis ce site.

  1. Ouvrez about:debugging, choisissez This Firefox → Load Temporary Add-on… et sélectionnez le zip.
  2. Un module temporaire est supprimé au redémarrage de Firefox. La version release de Firefox n'installe durablement que ce que addons.mozilla.org a signé : il en sera ainsi tant que la fiche n'est pas en ligne.
  3. Firefox accorde les autorisations de site d'une extension à l'installation. Si vous avez refusé randbridge.org à ce moment-là, accordez-le plus tard dans le panneau des autorisations de l'extension.
Module Firefox (.zip)
Firefox 140 ou version ultérieure · 2.7 MB
Télécharger
rand-wallet-firefox-0.8.0.zip
SHA-256 2982e605ba06dfac9de02e67652e3afc6d8b4d4ce20cb17225fe5c8335a503c6
Vérifier ce que vous avez téléchargé
SHA256SUMS
# avec SHA256SUMS téléchargé dans le même dossier que le fichier
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

# ou affichez la somme d'un seul fichier et comparez-la à celle indiquée ci-dessus
shasum -a 256 rand-wallet-firefox-0.8.0.zip

Une somme identique indique que le fichier est bien celui qui a été publié. Elle n'indique pas que le fichier a été compilé à partir des sources : les builds ne sont pas encore reproductibles bit à bit ; si c'est ce que vous devez savoir, compilez-le vous-même.

Envoi

Envoie via le prover de RandProtocol, ou le vôtre

Une preuve de lot atteint un pic d'environ 6,2 GB de mémoire, alors qu'un navigateur n'accorde que 4 GiB à WebAssembly : l'extension ne produit donc jamais la preuve elle-même. Elle construit le transfert, fait produire la preuve par un prover (le prover de RandProtocol par défaut, ou un prover que vous appairez), vérifie la preuve localement, puis la soumet.

Par défaut, elle utilise le prover de RandProtocol, après un avis unique. Pour lui cacher votre historique, appairez l'application de bureau Rand Wallet sur le même ordinateur (dans ses Paramètres → Prove for my other devices, puis collez le lien dans les Paramètres → Prover de l'extension) ou votre propre rand-prover sur un serveur.

Un appareil incapable de produire une preuve utilise par défaut les provers de RandProtocol : quelques machines exploitées par les validateurs (quatre aujourd'hui, sous https://prover.randprotocol.org), sans frais. Depuis la version 0.6.9, chacun a sa propre clé, que le wallet épingle, et le wallet le signale avant le premier envoi. La machine qui produit la preuve d'un envoi reçoit la clé de visualisation du wallet et un sel à usage unique : son opérateur peut lire tout l'historique du wallet, chaque paiement reçu et envoyé, mais ne peut rien dépenser. La clé de dépense ne quitte jamais votre appareil, qui produit lui-même la petite preuve d'autorisation. Pour plus de confidentialité, choisissez votre propre prover dans Paramètres → Prover ; il est alors toujours préféré, et le wallet vérifie chaque preuve avant de la soumettre.

Appairer un prover, pas à pas : docs/prover.md.

Vos clés

Où se trouve la clé

La clé de dépense est l'unique secret du portefeuille. Il n'y a ni compte ni serveur qui en détienne une copie : si vous perdez la clé, personne ne peut la restaurer ; enregistrez-la donc dès que le portefeuille vous l'affiche.

Clé de dépense
Générée dans le cœur du wallet à partir de l'aléa du système d'exploitation, et stockée uniquement sous forme de coffre AES-256-GCM protégé par PBKDF2-SHA256. Tant qu'elle est déverrouillée, elle réside dans le stockage de session du navigateur, qui se vide à la fermeture du navigateur et que les pages web ne peuvent pas lire.
Clés à l'écran
La clé de visualisation et l'export de la clé de dépense sont protégés par une nouvelle vérification du mot de passe, aussi coûteuse que le déverrouillage. Aucune clé n'est jamais placée dans une URL, la console ou le stockage persistant de l'extension.
Verrouillage automatique
Une alarme du navigateur, et non un minuteur de page : le wallet se verrouille donc à l'heure, même après la fermeture de la fenêtre contextuelle et la mise en veille du worker d'arrière-plan.
Réseau
Uniquement l'URL RPC des Paramètres. La rediriger vers une autre adresse demande l'autorisation d'accéder à cet unique hôte. Ni analytique, ni code distant : l'extension n'exécute que les scripts avec lesquels elle a été installée.
Également

Swap, et window.rand pour les sites Rand

L'écran Swap du wallet échange RAND et tokens via les pools de durian.market : il obtient du pool, sur la chaîne, le montant exact, puis produit la preuve et envoie lui-même le swap, et durian.market peut demander le même swap via window.rand.invoke.

randbridge.org trouve l'extension sous le nom window.rand et peut demander à se connecter. La connexion exige un wallet déverrouillé et votre approbation pour ce site ; un site connecté découvre votre adresse et son hash de destinataire du bridge, rien de plus.

Compiler depuis les sources

Ou compilez-la vous-même

  1. Compilez et empaquetez l'extension depuis le dépôt clients, ci-dessous.
  2. Ouvrez about:debugging, choisissez This Firefox → Load Temporary Add-on… et sélectionnez dist/firefox/manifest.json.

Chaîne d'outils : Rust 1.98.1, épinglé dans le dépôt, que rustup installe. Le guide de compilation couvre chaque client à partir d'une machine vierge. Répertoires des sources : firefox/, extension/, ui/, core/.

Rand Wallet pour Firefox
bash
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init   # la version publiée ; core/vendor/fullnode @ v0.8.0 (c0878c3)
core/scripts/build-wasm.sh   # → extension/shared/core/ (installe wasm-bindgen-cli)
firefox/pack.sh   # → dist/firefox/ et dist/rand-wallet-firefox-<version>.zip
npx web-ext lint --source-dir dist/firefox
Tous les clients

Ce qu'il fait, sur toutes les plateformes

Créer un portefeuille
Une clé de dépense générée sur l'appareil, affichée une seule fois pour que vous la sauvegardiez, et l'adresse rand1… qui en est dérivée. Importez une clé existante, ou un wallet.key.json issu de la CLI rand ; tous les clients exportent le même fichier.
Recevoir et envoyer
Votre solde est l'ensemble des notes que seule votre clé peut ouvrir ; le portefeuille parcourt l'arbre d'engagements pour les trouver. Un transfert de RAND ou de n'importe quel jeton RPL répertorié est un seul bundle 4 entrées, 4 sorties, autorisé par une preuve. Personne n'apprend l'expéditeur, le destinataire, le montant ni l'actif déplacé.
Faucet
Sur un testnet doté d'un faucet ouvert, une simple pression crée 100 RAND dans une note que vous seul pouvez ouvrir.
Ne divulguer que ce que vous choisissez
Copiez votre clé de visualisation et ouvrez My history sur RandScan pour voir chaque note que vous avez envoyée ou reçue, ou copiez la clé de transaction d'un paiement pour divulguer exactement ce paiement et rien d'autre. L'explorateur déchiffre dans votre navigateur et n'envoie la clé nulle part.

Les clés de consultation et les clés de transaction s'ouvrent sur randscan.org.

Notes sur le testnet

Avant d'envoyer quoi que ce soit

Chaîne
Le point d'accès public sert la chain 21, en service depuis le 12 Oct 2026 10:31 UTC (issue de fullnode v0.8.0). Le cœur du portefeuille intègre fullnode v0.8.0 (c0878c3) et refuse toute autre chaîne : la chain 21 exécute le constraint set 9, de sorte qu'un portefeuille 0.7.x ne peut pas y envoyer de transactions, et cette version ne peut pas en envoyer sur la chain 20. Les clés et les adresses sont conservées ; un portefeuille qui scannait la chain 20 affiche une seule fois une bannière de chaîne différente, puis relance l'analyse depuis le bloc de genèse de la chain 21. Les dépôts et retraits via le bridge appliquent des frais de 0,1 % en zUSD, que le portefeuille affiche avant le retrait.
Point d'accès RPC
Settings → Network. Par défaut https://rpc.randprotocol.org ; tout RPC rand-node que vous pouvez joindre convient, et une URL enregistrée est vérifiée avant d'être conservée
Génération de preuves
Une preuve de bundle atteint environ 6,2 GB de mémoire au pic et prend environ une minute sur un CPU de portable
Statut
Logiciel testnet expérimental. Non audité. Le RAND sur le testnet n'a aucune valeur réelle
Licence
GPL-3.0-only, comme les crates du nœud complet que chaque client lie
Autres clients

Un portefeuille, toutes les plateformes

Le même fichier de clé, le même format d'adresse et les mêmes règles partout : un portefeuille créé ici s'importe dans tout autre client et dans la CLI rand.