Travaux en cours

Travaux en cours : nous construisons ce site en vue du MainNet. Les détails vont évoluer.

Ce site est encore en construction

ZooBC se construit au grand jour. Ce que vous voyez ici est actuel et honnête, mais pas terminé : lisez-le comme l'état des choses aujourd'hui, et non comme une version définitive.

D'ici le MainNet, des choses vont changer : formulations, structure, images et chiffres. Certaines pages sont provisoires.

L'écosystème ZooBC élargi arrive par étapes. Le portefeuille, l'explorateur et les canaux communautaires sont mis en ligne à mesure que le MainNet approche, et ce site grandit avec eux.

Si quelque chose vous semble erroné, cassé ou trompeur, dites-le-nous. Un retour aujourd'hui compte plus pour nous qu'un lancement soigné plus tard.

ZOOBC / MANUEL

Portefeuille ZooBC, manuel d'utilisation

Manuel du portefeuille

Réécrit à partir du manuel V0.36 pour le portefeuille V0.51. Terminologie mise à jour : la chaîne a renommé game/games en app/apps, les points de terminaison sont donc /api/v1/apps et les clés app_type.

Version V0.36 · juillet 2026

Ce manuel documente chaque écran, onglet, champ et type de transaction du portefeuille ZooBC. Le portefeuille est un unique fichier HTML qui s'exécute entièrement dans votre navigateur : vos clés ne quittent jamais votre appareil, toutes les transactions sont construites et signées localement, et seuls les octets signés finaux sont envoyés au réseau.


Table des matières

  1. Notions de base
  2. Prise en main
  3. L'interface principale
  4. ACCUEIL, Tableau de bord, À faire, En cours, Activité
  5. PORTEFEUILLE, Envoyer, Recevoir, Déposer, Retirer, Planifiés, Multi-sig, Politique
  6. ACTIFS, Jetons, Fichiers, Échange, Place de marché
  7. SOCIAL, Contacts, En ligne, Discussion, Appels
  8. ENTREPRISE, Factures, Formulaires, Notaire
  9. APPLICATIONS, l'Arcade
  10. AVANCÉ, Clés et graines, Portefeuille papier, Soumettre
  11. SYSTÈME, Paramètres, Nœud, Réseau, Passerelles, Relais, Gouvernance
  12. Référence des transactions
  13. Dépannage
  14. Glossaire

1. Notions de base

1.1 La monnaie et ses unités

La monnaie native est le ZBC. Sur la chaîne, chaque montant est stocké en unités atomiques : 1 ZBC = 100,000,000 unités atomiques (10⁸). Le portefeuille affiche toujours des montants lisibles et ne convertit qu'aux interfaces. Les jetons émis ont leurs propres décimales (0–8) et sont eux aussi stockés en unités de base.

1.2 Comptes et formats d'adresse

Un même portefeuille peut contenir des comptes sur de nombreux schémas de clés. Chaque compte est stocké sur la chaîne sous forme de compte typé : un préfixe de type de 4 octets + le matériel de clé. Formats pris en charge :

FormatTypeSchéma de cléAspect de l'adresse
ZooBC0ed25519ZBC_XXXX_… (base32 + somme de contrôle)
Ethereum / BNB4secp256k1 + keccak0x… (mêmes octets, libellé différent)
Bitcoin legacy (P2PKH)5secp256k11…
Bitcoin P2SH6(réception uniquement)3…
Bitcoin SegWit (P2WPKH)7secp256k1bc1q…
Bitcoin P2WSH8(réception uniquement)bc1q… (longue)
Bitcoin Taproot9BIP-340 schnorrbc1p…
Dépôt de jeu de données10(compte de loyer de l'objet)ZBS_…
Solana11ed25519clé publique base58
Polkadot12sr25519 (Schnorrkel)SS58
Cardano13ed25519addr1…
Ripple14secp256k1r…
Tron15secp256k1 + keccakT…
Tezos16ed25519tz1…

Tout format peut envoyer et recevoir sur la chaîne ZooBC : un compte au format Bitcoin signe les transactions ZooBC avec sa clé Bitcoin. L'adresse est dérivée exactement comme sur la chaîne d'origine, si bien qu'un dépôt arrivant par pont depuis cette chaîne crédite automatiquement le compte miroir (voir Déposer).

Chemins de dérivation (à partir d'une phrase BIP-39) : ZooBC m/44'/883'/account' (SLIP-0010 ed25519) ; ETH/BNB BIP-44 coin 60 ; BTC BIP-44/84/86 pour legacy/SegWit/Taproot ; Solana m/44'/501'/account' ; Cardano coin 1815 ; Tezos coin 1729 ; Polkadot utilise la dérivation mini-secret de Substrate.

1.3 Transactions, frais, séquestre

Chaque action sur la chaîne est une transaction signée avec un numéro de type, des frais en ZBC, un message facultatif et une enveloppe de séquestre facultative (approbateur + échéance + commission + instruction). Les frais réseau par défaut sont de 0.05 ZBC (base 0.025 + marge pour les transactions porteuses de données) ; le portefeuille les préremplit et les augmente automatiquement pour les messages volumineux. La liste complète des types figure à la section 12.

1.4 Passerelles, nœuds, relais

  • Un nœud valide la chaîne.
  • Une passerelle est le serveur web avec lequel dialogue le portefeuille ; elle sert le portefeuille/l'explorateur et fait office de façade pour un ou plusieurs nœuds.
  • Un relais est le serveur d'appels/de présence qu'exploite une passerelle ; il transporte la signalisation des appels et le statut en ligne.
  • Un nœud d'archive sert en plus l'historique complet et l'API de l'explorateur.

Si la passerelle configurée tombe en panne, le portefeuille bascule automatiquement : nœud actuel → solutions de repli intégrées → vos nœuds supplémentaires (Paramètres → Nœud) → passerelles découvertes dans le registre sur la chaîne.

1.5 Loyer de stockage et objets de survie

Les données écrites sur la chaîne (jeux de données, fichiers stockés, jetons) paient un loyer de stockage. Chaque objet dispose d'une adresse de dépôt ZBS_ approvisionnable, dérivée de la transaction qui l'a créé ; lorsque le dépôt est épuisé, l'objet peut être élagué. Vous pouvez prolonger la longévité de n'importe quel objet (voir Fichiers → Objets).

1.6 Modèle de sécurité

  • Votre phrase de récupération / clé ne quitte jamais la page ; la signature est locale.
  • La persistance sur l'appareil repose sur un coffre chiffré verrouillé par un code PIN à 6 chiffres (5 tentatives erronées effacent le coffre ; la phrase permet de le restaurer).
  • Déverrouillage facultatif par clé d'accès (Face ID / Touch ID / Windows Hello).
  • Les comptes en lecture seule voient tout mais ne peuvent pas signer ; les pages nécessitant une clé sont masquées.
  • Le mode air-gap signe hors ligne et exporte en JSON/QR au lieu de diffuser.

2. Prise en main

2.1 Avant de l'ouvrir, vérifiez que le fichier est authentique

Ce portefeuille est un fichier unique que vous ouvrez dans un navigateur, puis dans lequel vous saisissez votre phrase de récupération. Une fausse

copie a exactement le même aspect et se comporte normalement, jusqu'au moment où elle envoie votre phrase

ailleurs. Rien à l'écran ne peut vous avertir, car à ce stade, c'est la fausse page elle-même qui émet les avertissements.

Vérifiez donc le fichier avant de l'ouvrir. Cela prend une dizaine de secondes.

La méthode simple. Ouvrez /verify sur la passerelle depuis laquelle vous avez téléchargé le fichier, puis faites-le glisser dans la zone prévue.

La vérification s'exécute dans votre propre navigateur : le fichier n'est jamais envoyé nulle part.

La méthode qui ne demande qu'un terminal. Un hachage est l'empreinte d'un fichier : modifiez un seul octet

et il change complètement, et personne ne peut remonter le calcul pour fabriquer un autre fichier ayant la même

empreinte.


sha256sum "ZooBC Wallet.html"

Comparez le résultat affiché, caractère par caractère, avec le hachage publié pour ce fichier.

Demandez-vous ensuite qui vous a communiqué l'empreinte. C'est le point essentiel, et la page /verify est

explicite à ce sujet :

ce qu'elle indiquece que cela signifie
sur la chaîneLe hachage a été signé dans un bloc par l'autorité de publication, une clé unique fixée dans la genèse de la chaîne, seule habilitée à enregistrer un hachage de fichier. Chaque nœud détient cet enregistrement. Un site web ne peut ni le modifier, ni le falsifier, ni le supprimer.
cette passerelle l'affirmeLe hachage provient du site web que vous consultez. Cela permet de détecter un téléchargement corrompu ou une contrefaçon grossière. Cela n'aide pas si ce site est lui-même l'attaquant, car le fichier et son empreinte sont alors tous deux falsifiés et concordent parfaitement.
RÉVOQUÉ sur la chaîneL'autorité a publié ce fichier puis l'a retiré, généralement parce qu'il s'est révélé compromis ou défectueux. C'est pire qu'un fichier non reconnu, et non mieux : la chaîne a quelque chose de précis à dire sur celui-ci. Supprimez-le et récupérez un fichier à jour. Un site web qui le propose encore doit éveiller davantage de méfiance, pas moins.

Pour tout ce qui touche à l'argent, c'est une correspondance sur la chaîne qu'il faut exiger. Une passerelle qui se porte garante de ses

propres téléchargements ne constitue pas une preuve.

Comment vérifier sans faire confiance à aucun site web. Tout ce qui précède s'exécute encore sur une page que quelqu'un

vous sert. Si vous voulez une vérification qui s'en affranchisse, interrogez directement un nœud, n'importe lequel, y compris un nœud que vous exploitez

vous-même. Deux commandes :


sha256sum "ZooBC Wallet.html"
curl -s https://zoobc.network/api/v1/release/list

Si le hachage de votre fichier figure dans cette liste, c'est un fichier publié par l'autorité de publication. S'il n'y figure

pas, aucune assurance de quelque site web que ce soit ne rend sûr d'y saisir une phrase de récupération.

Vous pouvez aussi demander quelle clé est autorisée à publier :


curl -s https://zoobc.network/api/v1/release/authority

zoobc.network est la passerelle publique du TestNet ZooBC, pas du MainNet. Remplacez l'hôte par votre propre nœud pour vérifier sans faire confiance à cette passerelle.

Chaque nœud répond la même chose, car c'est inscrit dans la chaîne. Interrogez deux nœuds exploités par

des personnes différentes et comparez : c'est tout l'intérêt de la conception, et cela ne vous coûte qu'une

commande de plus.

Si /verify signale qu'un changement d'autorité de publication est en attente, arrêtez-vous et cherchez-en la raison avant

de vous fier à quoi que ce soit téléchargé depuis ce site. L'autorité est la clé unique derrière chaque affirmation de

cette page, et proposer de la transférer est précisément ce que ferait quelqu'un qui viendrait de la voler. Il

peut très bien s'agir d'une rotation planifiée, mais confirmez-le par un canal qui ne passe pas par le

site web en question, car un site compromis se fera un plaisir de vous rassurer sur sa propre passation.

Cela compte d'autant plus que ZooBC s'étend à d'autres portefeuilles et à d'autres langues. Vous ne devriez jamais avoir à croire qui que ce soit sur parole pour savoir quel fichier est authentique : la chaîne existe précisément pour vous en dispenser.

2.2 Premier lancement, avertissement sur les risques

Au tout premier lancement, un document intitulé Avis sur l'interface logicielle et reconnaissance des risques par l'utilisateur s'affiche. Vous devez l'accepter (ou quitter) ; les conditions d'utilisation complètes restent accessibles à tout moment depuis le pied de page.

2.3 Écran d'accueil

La carte d'accueil propose :

  • Phrase de récupération ou clé secrète : collez une phrase BIP-39 de 12/15/18/21/24 mots ou une clé privée de 64 caractères hexadécimaux. Le bouton en forme d'œil l'affiche ou la masque.
  • Format du portefeuille : ZooBC (par défaut), Ethereum, BNB, Bitcoin, Solana, Polkadot, Cardano, Ripple, Tron, Tezos. Pour Bitcoin, un sélecteur supplémentaire permet de choisir SegWit (bc1q…), Legacy (1…) ou Taproot (bc1p…). Une même phrase donne une adresse différente dans chaque format.
  • N° de compte : sélecteur pour choisir un index de dérivation (plusieurs comptes à partir d'une même phrase).
  • Déverrouiller le portefeuille : ouvre le portefeuille avec les identifiants saisis.
  • Créer un nouveau portefeuille : génère une nouvelle phrase (voir ci-dessous).
  • Restaurer depuis un fichier de sauvegarde : charge une sauvegarde chiffrée du coffre (.json) ; le code PIN utilisé lors de la sauvegarde vous est demandé.
  • Lien Paramètres du nœud : définissez l'URL de la passerelle avant de vous connecter.

2.4 Créer un nouveau portefeuille

  1. Choisissez la longueur de la phrase (12–24 mots). Les mots s'affichent sous forme de pastilles numérotées ; boutons Copier la phrase, Copier la liste numérotée, Nouvelle phrase.
  2. Un avertissement vous rappelle que la phrase est la seule sauvegarde. Cochez « J'ai noté ma phrase de récupération ».
  3. Vérifier : choisissez le bon mot pour quelques positions tirées au hasard.
  4. Définir un code PIN : choisissez et confirmez un code PIN à 6 chiffres. Il chiffre le coffre sur cet appareil pour que le portefeuille survive aux actualisations de la page.

2.5 Retour, déverrouillage

Saisissez votre code PIN (ou utilisez le bouton de clé d'accès s'il est configuré). Liens en dessous : Restaurer depuis un fichier de sauvegarde et Réinitialiser le portefeuille sur cet appareil (efface les données locales ; la phrase vous permet de restaurer).

2.6 Lecture seule

Surveiller une adresse affiche le solde et l'activité de n'importe quelle adresse sans clé. Le bandeau principal affiche un badge lecture seule et toutes les pages de signature sont masquées.


3. L'interface principale

3.1 Barre supérieure

  • Logo + badge de version (p. ex. V0.36).
  • Cloche de notifications : alertes générées côté client (messages entrants, demandes de signature, alertes de la chaîne) ; un badge rouge avec compteur ; chaque entrée renvoie directement à la bonne page (p. ex. une notification de facture ouvre la page de paiement).
  • Thème : bascule sombre/clair.
  • Verrouiller : verrouille immédiatement le portefeuille (code PIN pour le rouvrir).
  • Paramètres : ouvre la page Paramètres.
  • Indicateur du relais d'appels : affiche les données de relais restantes le cas échéant.
  • Pastille d'état du réseau : un point et un libellé, block N (connecté ; affiche la hauteur confirmée, sommet − 3), synchronizing… (défaillance passagère < 30 s), chain unreachable (défaillance continue). Un clic dessus ouvre l'explorateur de blocs (explorer.<gateway-domain>).

3.2 Bandeau du solde (colonne de gauche)

  • Solde avec un sélecteur de portée : Ce portefeuille / tous les portefeuilles cumulés.
  • L'icône de la monnaie actualise le solde au toucher ; un chevron ouvre le panneau des jetons, qui liste vos soldes de jetons.
  • Disponible : solde moins les montants bloqués (mises, séquestres, offres en cours).
  • Pastille d'adresse : avatar du compte (touchez-le pour changer de compte), nom de portefeuille modifiable, l'adresse et un bouton de copie.
  • Badges : lecture seule, multisig.
  • Boutons rapides Envoyer et Recevoir.

3.3 Menu de gauche

Groupes repliables (l'état ouvert/fermé est mémorisé ; des sections entières peuvent être masquées dans Paramètres → Menu) :

GroupeÉléments
ACCUEILTableau de bord · À faire · En cours · Activité
PORTEFEUILLEEnvoyer · Recevoir · Déposer · Retirer · Planifiés · Multi-sig · Politique
ACTIFSJetons · Fichiers · Échange · Place de marché
SOCIALContacts · En ligne · Discussion · Appels
ENTREPRISEFactures · Formulaires · Notaire
APPLICATIONSSalon · Solo · 1 contre 1 · 3 joueurs et plus
AVANCÉClés et graines · Portefeuille papier · Soumettre
SYSTÈMEParamètres · Nœud · Réseau · Passerelles · Relais · Gouvernance

Sur les écrans étroits, le menu se replie en une barre de navigation supérieure / un menu hamburger.

Pages légales et d'information : Conditions générales, Politique de confidentialité, Aide et manuel, Participer au projet.


4. ACCUEIL

4.1 Tableau de bord (vue d'ensemble)

La page qui s'affiche après le déverrouillage :

  • Vos monnaies : soldes cumulés par monnaie sur l'ensemble de vos portefeuilles.
  • Vos portefeuilles : une carte par compte (nom, adresse, solde en direct avec décimales atténuées, badge de chaîne, badges multisig/lecture seule). Un encadré d'état fait remonter les éléments qui demandent votre attention.
  • Vos jetons : les jetons que vous détenez, avec un raccourci Explorer vers la page Jetons.
  • Vos nœuds : les nœuds enregistrés appartenant à vos portefeuilles (actualisation automatique toutes les 10 min).

4.2 À faire

« Tout ce qui attend une action de votre part : approuver, régler ou répondre. » Une liste unique qui regroupe :

  • les séquestres dont vous êtes l'approbateur (approuver / rejeter directement dans la liste),
  • les transactions multisig en attente de votre signature,
  • les demandes de paiement/séquestre qui vous sont adressées,
  • les factures en attente de votre paiement,
  • les tours de jeu dans les applications et les éléments arrivant à expiration.

Un badge sur l'entrée du menu en indique le nombre. Actualiser recharge tout. La page s'actualise automatiquement toutes les 60 s tant qu'elle est ouverte.

4.3 En cours (transactions en cours)

Les transactions actuellement en cours, réparties en quatre onglets :

  • Toutes : liste combinée avec un compteur par onglet.
  • Approuver / rejeter un séquestre : en tant qu'approbateur désigné, saisissez (ou choisissez) l'identifiant d'une transaction de séquestre, puis Approuver et libérer (les fonds vont au destinataire) ou Rejeter et restituer (les fonds retournent à l'expéditeur). Diffuse ApprovalEscrow (type 4).
  • Arrêter un paiement liquide : interrompez un paiement liquide que vous avez lancé ; le reliquat non encore débloqué vous revient (LiquidPaymentStop, type 262).
  • Arrêter un versement progressif : les planifications en cours que vous avez créées ; la révocation vous restitue le reliquat non exécuté (les tranches déjà versées restent acquises au destinataire) (CancelSchedule, type 30).

4.4 Activité

Votre historique de transactions.

  • Filtre de compte : un portefeuille ou tous.
  • Filtre de monnaie : toutes les monnaies ou une en particulier.
  • Sélecteur de source : Dernières TX (la fenêtre récente du nœud connecté) ou Toutes les TX (l'historique complet d'un nœud d'archive).
  • Pastilles de catégorie : Toutes · Portefeuille · Trading · Applications · Outils · Coinbase · Frais, avec un total par catégorie.
  • Chaque transaction diffusée par le portefeuille est aussi conservée dans un journal local (avec les octets de son corps) : elle apparaît ainsi instantanément, survit à l'élagage des nœuds et s'affiche avec tout le détail propre à son type. Les lignes se déploient pour afficher les montants, les contreparties (avec le nom du contact lorsqu'il est connu), les frais, les détails du séquestre, les messages (déchiffrés lorsqu'ils vous sont destinés) et un bouton de copie du hachage.

5. PORTEFEUILLE

5.1 Envoyer

La page principale de transfert. Champs, de haut en bas :

  • Destinataire : tout format d'adresse pris en charge (ZBC_…, 0x…, 1…, bc1…, Solana, SS58, addr1…, r…, T…, tz1…) ou un contact (bouton de sélection). Un indicateur de validité et le nom du contact correspondant s'affichent sous le champ.
  • Montant + Max (remplit avec le solde disponible moins les frais).
  • Frais réseau (ZBC) : préremplis à partir du réseau ; augmentent avec la taille du message ; vous pouvez les augmenter.
  • Message (facultatif) : stocké sur la chaîne. Pour les transferts ZBC → ZBC, vous pouvez cocher Chiffrer le message (de bout en bout ; seul le destinataire peut le lire). L'indication de frais se met à jour selon la taille en octets.
  • Note privée (facultative) : enregistrée uniquement sur cet appareil, jamais sur la chaîne.
  • Longévité (contextuel) : apparaît lors d'un envoi vers une adresse d'objet ZBS_, pour identifier un réapprovisionnement du loyer.
  • Case Paiement liquide : le montant est débloqué progressivement au profit du destinataire sur une période choisie (en minutes). Le destinataire peut réclamer sa part au fur et à mesure du déblocage ; vous pouvez l'arrêter plus tôt depuis En cours (la part non débloquée vous revient). Envoie LiquidPayment (type 6) au lieu d'un simple transfert.
  • Case Séquestre : bloque les fonds jusqu'à l'approbation d'un approbateur :
  • Adresse de l'approbateur (ou contact),
  • Bloquer jusqu'au : pastilles prédéfinies (1 jour … 6 mois) ou sélecteur de date/heure exactes ; affiché sous forme d'échéance en hauteur de bloc, avec une note précisant que le rythme des blocs est une estimation et que le délai réel variera,
  • Commission de l'approbateur (ZBC),
  • Instruction (texte libre, p. ex. « libérer à la livraison »).
  • Un lien : Vous attendez plutôt un paiement ? → Demander un paiement (séquestre côté destinataire, sur la page Planifiés).
  • Payer les frais réseau avec ce jeton (contextuel), pour les jetons qui le permettent : brûle des jetons de frais et libère une part équivalente de la contrepartie en ZBC (indisponible sous séquestre).
  • Créer la transaction uniquement : signe sans diffuser et produit le JSON signé + un QR à soumettre plus tard ou depuis un autre appareil (voir Soumettre).
  • Aperçu : montant, commission, frais, total.
  • Vérifier et envoyer : fenêtre de confirmation, puis diffusion. Réinitialiser le formulaire efface tout. Après l'envoi, l'identifiant de la transaction s'affiche (et reste disponible même si vous quittez la page) avec des liens de copie et vers l'explorateur.

Ce qui est diffusé : SendZBC (type 1), ou TransferToken (11) lorsqu'un jeton est sélectionné dans le bandeau, ou LiquidPayment (6) lorsque la case de paiement liquide est cochée. Le séquestre peut accompagner chacune d'elles dans l'enveloppe.

5.2 Recevoir

Votre adresse sous forme de grand code QR, l'adresse en texte et un bouton Copier l'adresse.

5.3 Déposer

Pont vers ZooBC : apportez des BTC, ETH, USDC ou USDT sur la chaîne sous forme de jetons enveloppés (p. ex. BTC → ZBTC), frappés à 1:1 après confirmation. Deux onglets :

  • Démarrer : choisissez une monnaie (celles qui ne sont pas prises en charge affichent Bientôt disponible). Le portefeuille affiche :
  • l'adresse de dépôt de conservation (QR + copie) sur la chaîne d'origine,
  • les confirmations requises,
  • Qui est crédité : le dépôt crédite le compte ZooBC qui reflète l'adresse depuis laquelle vous envoyez (même clé) ; l'adresse de conservation étant partagée, l'adresse d'envoi est la seule preuve de propriété. Envoyez depuis un portefeuille dont vous contrôlez la clé ici.
  • Après les confirmations, une supermajorité des 2/3 des nœuds ZooBC atteste le dépôt, puis le jeton enveloppé est frappé (de quelques minutes à ~1 heure).
  • Suivi, trois sous-onglets : En transit (actualisation automatique toutes les 20 s ; états Détecté → En confirmation → En attestation → Frappé, avec délai estimé par chaîne), Surveiller un autre compte (toute adresse de la chaîne d'origine ou ZBC_), Historique (terminés et abandonnés).

5.4 Retrait

Pont hors de ZooBC (les monnaies encapsulées retournent vers leur chaîne d'origine). Cet écran est une maquette, le pont sortant n'est pas encore fonctionnel ; il présente la liste des monnaies et le parcours prévus.

5.5 Planifiés

De la valeur qui circule selon un calendrier. Cinq onglets :

  • Déblocage progressif, calendrier pré-bloqué : la totalité du montant est bloquée à la création puis versée au destinataire par tranches. Champs : destinataire, monnaie/jeton, montant par tranche, intervalle, nombre de tranches (1–520), période de blocage initiale (cliff) facultative, révocable/irrévocable, date de fin facultative. Diffuse ScheduledTransfer (29) avec funding_mode 0.
  • Récurrent, prélèvement à l'échéance : rien n'est bloqué ; chaque tranche est prélevée sur votre solde au moment où elle se déclenche (échec sans conséquence si le solde est vide). Mêmes champs ; funding_mode 1.
  • À une hauteur, un déclencheur ponctuel : bloque un montant dès maintenant et paie le bénéficiaire lorsque la chaîne atteint une hauteur de bloc donnée. Le champ de hauteur dispose d'un assistant calendrier date/heure (il convertit en hauteur estimée ; le moment réel dérive avec le temps de bloc). Diffuse CreateTrigger (15) ; l'annulation rembourse via CancelTrigger (16).
  • Demande, le séquestre côté bénéficiaire : vous demandez un paiement en fixant le payeur, le montant (ZBC ou jeton), l'approbateur, l'échéance, la commission et l'instruction ; le payeur la reçoit dans À faire et la finance. Diffuse EscrowRequest (260).
  • Liste, tous les calendriers que vous avez créés ou que vous recevez, regroupés ; chaque ligne indique le type (Déblocage progressif/Récurrent/Ponctuel), l'avancement (versé sur le total), la prochaine échéance, le badge de rôle et les actions : Révoquer (si révocable), Réattribuer les tranches restantes à un nouveau destinataire (ReassignSchedule, 31, destinataire actuel uniquement).

5.6 Multisig

Un compte qui exige plusieurs signatures pour chaque dépense. Deux onglets :

  • Créer un compte multisig, adresses des participants (une par ligne, tout format ; Ajouter depuis les contacts), Signatures minimales, Nonce. Calculer l'adresse affiche l'adresse ZBC_ déterministe. Ensuite :
  • Enregistrer sur la chaîne, inscrit l'ensemble des participants (MultisigRegistration, type 5),
  • Ajouter à mon portefeuille, le rend sélectionnable comme compte (badge multisig) pour recevoir des fonds et proposer des dépenses.
  • Signer une transaction multisig, les éléments en attente qui vous sont adressés apparaissent en haut. Collez une transaction reçue d'un signataire précédent (hex / base64 / JSON), Signer avec ma clé, puis transmettez le résultat au signataire suivant : signer ne diffuse jamais rien. Diffuser (page Soumettre) ouvre Soumettre avec la charge utile pré-remplie dès que suffisamment de signatures sont réunies.

5.7 Politique, « Ce que j'échange »

Refus par catégorie, par compte et sur la chaîne, appliqué par chaque nœud. Désactiver une catégorie est bidirectionnel : vous ne pouvez ni l'envoyer ni la recevoir ; toute tentative est rejetée (aucun fonds ne bouge ; l'expéditeur ne paie que les frais réseau). Neuf interrupteurs :

BitCatégorieCouvre
0PaiementsEnvoi de ZBC, transferts liquides / planifiés / à déclencheur
1ApplicationsCréation, participation, coup, abandon, dépassement de délai, règlement
2JetonsÉmission, transfert, frappe, destruction et financement de monnaies colorées
3ÉchangeOffres d'échange et marchés à carnet d'ordres
4Données et stockageJeux de données, stockage prépayé, fichiers (DFS), preuves de stockage
5Séquestre et multisigApprobation / demande de séquestre, multisignature
6Nœuds et infrastructureEnregistrement de nœuds, registre des passerelles / nœuds d'archive / relais
7PontAttestation / frappe inter-chaînes
8GouvernanceVotes sur les frais, gouvernance des versions signées

Une pastille récapitulative affiche « Tout est accepté » ou « Refusé : … ». Désactiver Paiements ou Nœuds et infrastructure demande une confirmation supplémentaire (cela peut vous bloquer dans l'usage quotidien). Enregistrer la politique diffuse SetTransactPolicy (type 50, masque u16 LE, frais d'environ 0.05 ZBC) ; elle s'applique une fois le bloc validé.


6. ACTIFS

6.1 Jetons

Registre de toutes les monnaies de la chaîne (genèse + « monnaies colorées » émises par les utilisateurs). Deux modes :

  • Parcourir, liste consultable de tous les jetons enregistrés avec icône, symbole, nom, offre, garantie et votre solde ; vous pouvez donner un surnom local à un jeton. Les jetons garantis conservent une valeur constante en ZBC.
  • Émettre et gérer (accessible aussi via le hub Multisig → Jetons) :
  • Émettre un jeton, Symbole (vérifié selon le jeu de caractères + une liste de symboles réservés interdits), Nom, Offre totale, Décimales (0–8), Garantie (ZBC bloqués), 0 pour un jeton non garanti, options Remboursable (détruire → récupérer votre part de la garantie) et Frappable (l'émetteur peut en ajouter), logo SVG + description facultatifs (transmis dans le message de la tx, ≤ 6144 octets). Diffuse IssueToken (10).
  • Envoyer un jeton, jeton, montant, destinataire (TransferToken, 11 ; prend en charge le séquestre et les frais payés en jeton).
  • Frapper ou détruire, Frapper (émetteur uniquement, jetons frappables ; augmente l'offre et bloque davantage de garantie pour que la valeur unitaire reste constante, type 12), Détruire / rembourser (détruit vos jetons ; les jetons remboursables vous rendent votre part de la garantie, type 13), Financer (recharge le loyer de survie du jeton pour qu'il ne soit pas élagué, type 14).

6.2 Fichiers

Stockage de fichiers décentralisé (DFS) et tous les outils de cycle de vie des données. Six onglets :

  • Mes fichiers, les fichiers que vous avez stockés : nom, taille, hash racine, santé des répliques, état du loyer ; téléchargez-les ou copiez un lien de partage.
  • Téléverser un fichier, le nœud découpe le fichier en morceaux adressés par leur contenu et les distribue à son ensemble de répliques ; le portefeuille l'ancre ensuite sur la chaîne avec StoreFile (type 40) : racine du fichier (32 o), taille, taille des morceaux, dépôt de loyer (min. 0.01 ZBC) et liste des morceaux. Si votre liste de fichiers est vide, cet onglet s'ouvre par défaut.
  • Télécharger par racine, récupérez n'importe quel fichier sur le réseau de stockage à partir de sa racine en 64 caractères hexadécimaux (ou de son identifiant ZTX_).
  • Jeux de données, vos entrées brutes sur la chaîne. Chaque message de chat, sondage, facture, formulaire et champ de profil est une entrée de jeu de données sur un compte :
  • Mes entrées, liste avec bouton Supprimer en un seul geste.
  • Ajouter une entrée, compte (vide = le vôtre), propriété, valeur (4096 octets max. ; compteur d'octets en direct). Diffuse SetupAccountDataset (type 3).
  • Supprimer une entrée manuellement, le destinataire + la propriété (y compris le suffixe #… affiché dans Chat) + la valeur doivent correspondre exactement. Diffuse RemoveAccountDataset (259).
  • Financer le stockage, prépayez le loyer des jeux de données de votre compte (FundStorage, type 9). Le ciblage par jeu de données arrivera avec la prochaine chaîne.
  • Objets, gestion des objets soumis au loyer de survie :
  • liste de vos objets avec solde de loyer et estimation d'expiration,
  • Transférer la propriété, en deux étapes : vous proposez (TransferDataset, 42), le destinataire accepte (AcceptDataset, 44),
  • Politique d'accès, listes de comptes autorisés/refusés (SetDatasetPolicy, 43),
  • Supprimer (DeleteDataset, 45),
  • Financer n'importe quel objet par le hash de sa tx de création, retrouvez le dépôt ZBS_ de l'objet à partir de son identifiant de transaction et rechargez-le par un transfert normal (compatible séquestre).

6.3 Bourse

Une bourse à carnet d'ordres sur la chaîne (CLOB). Le badge d'en-tête affiche honnêtement CONNEXION… / EN DIRECT / HORS LIGNE ; rien n'est simulé lorsque les points de terminaison sont indisponibles.

  • Modes, Simple (formulaire d'abord, sans carnet ni historique des échanges) et Pro (graphique de profondeur, carnet d'ordres, derniers échanges, ordres, disposition de terminal de trading).
  • Sélecteur de paire, lignes De / Vers listant toutes les monnaies enregistrées ; bouton d'inversion ; les marchés existants apparaissent sous forme de pastilles (avec le nombre de vos ordres ouverts).
  • Barre de statistiques, dernier prix, variation/plus haut/plus bas/volume sur 24 h, mini-graphique.
  • Profondeur de marché et carnet d'ordres, en direct depuis la chaîne ; les états de carnet vide en donnent la raison : « Aucun ordre pour l'instant, soyez le premier » / nœud hors ligne / API de lecture absente.
  • Formulaire d'ordre, Achat/Vente, type d'ordre Marché / Limite / Stop, montant (+Max à partir de votre solde en direct), prix limite, total, frais estimés (0.1 %). Les ordres au marché sur un carnet vide sont bloqués avec une explication (aucun prix à apparier). Passer un ordre diffuse PlaceOrder (type 22) ; si le marché de la paire n'existe pas encore, on vous propose Créer le marché (CreateMarket, 21, avec un dépôt de loyer en ZBC).
  • Mes ordres, conservés par appareil ; affiche En attente de bloc tant qu'ils sont en attente, puis ouvert/exécuté/annulé ; Annuler diffuse CancelOrder (23, rembourse la part non exécutée) ; Effacer les exécutés fait le ménage dans la liste.

6.4 Place de marché

Un tableau d'offres d'échange de pair à pair (OTC) : « publiez ce que vous donnez et ce que vous voulez ; n'importe qui peut accepter. » Entièrement atomique : le nœud échange les deux côtés dans un même bloc ou pas du tout. Uniquement EN DIRECT, avec un état HORS LIGNE honnête.

  • Parcourir les offres, filtrez par actif Donné / Voulu ; chaque fiche d'offre indique l'auteur (avatar + nom du contact), les montants donné → voulu, le prix implicite, l'expiration et l'état (Ouverte / Exécutée / Annulée / Expirée). Accepter diffuse AcceptSwapOffer (19) : le preneur paie le côté voulu et reçoit le côté donné mis en réserve.
  • Créer une offre, actif donné + montant (bloqué sur votre solde tant que l'offre est ouverte), actif voulu + montant, expiration facultative (0 = valable jusqu'à annulation), contrepartie réservée facultative (seule cette adresse peut accepter). Affiche une fiche de confirmation, puis diffuse CreateSwapOffer (18).
  • Mes offres, vos offres ouvertes avec Annuler (CancelSwapOffer, 20, rembourse le montant réservé), ainsi qu'un historique local à l'appareil des offres vendues / acceptées / annulées / expirées.

7. SOCIAL

7.1 Contacts

Votre carnet d'adresses. Ajouter un contact : nom, photo et note facultatives, et autant d'adresses que vous le souhaitez sur différentes chaînes (chacune avec un badge de chaîne). Les noms des contacts remplacent les adresses brutes dans tout le portefeuille (Envoyer, Activité, Chat, Place de marché…), l'adresse brute restant toujours copiable en un geste. Les contacts sont conservés dans le coffre chiffré et suivent vos sauvegardes.

7.2 En ligne

Présence en direct de vos contacts. Chaque ligne indique l'état (en ligne / absent / hors ligne), avec des actions rapides pour discuter ou appeler. La présence fonctionne en mode push : les portefeuilles émettent un signal toutes les ~60 s via le relais et la liste se rafraîchit à intervalle régulier, si bien que deux portefeuilles se voient sans aucune navigation. La façon dont vous apparaissez se règle dans Appels → Apparence.

7.3 Chat

Messagerie sur la chaîne. Deux niveaux :

  • Vue conversation, façon WhatsApp : liste des conversations avec badges de non-lus, avatars (photo du contact ou initiales), recherche, renommage local ; la vue du fil affiche des bulles, l'horodatage et une icône de cadenas sur les messages chiffrés de bout en bout (ZBC ↔ ZBC). Les messages entrants provenant de l'un de vos propres portefeuilles sont reconnus comme « vous ».
  • Formulaire d'envoi brut, À (adresse ou contact), Sujet (facultatif ; par ex. un identifiant d'application pour les coups, chat par défaut), Message. Chaque message est une transaction SetupAccountDataset (type 3) sur le compte du destinataire et coûte des frais réseau normaux.

Les messages peuvent être supprimés via Fichiers → Jeux de données (la suppression doit correspondre exactement à l'entrée).

7.4 Appels

Voix, vidéo et partage d'écran, de pair à pair. Les appels directs sont gratuits ; quand un pare-feu bloque la liaison directe, une passerelle relais achemine le trafic contre un crédit que vous rechargez. Cinq onglets :

  • Contacts en ligne, qui est joignable maintenant (filtre En ligne uniquement / Tous) ; touchez pour lancer un appel vocal ou vidéo.
  • Relais, votre crédit de relais, affiché en Mo de données restants avec des estimations dérivées (voix ≈ 0.36 Mo/min, vidéo ≈ 15 Mo/min ; le crédit est uniquement du volume de données, pas des minutes). Liste des passerelles relais avec leur état de santé ; Ajouter une passerelle ; les recharges sont un paiement en ZBC à l'opérateur du relais et se confirment sur la chaîne (les recharges en attente sont interrogées jusqu'à ce qu'elles soient créditées).
  • Appels récents, journal avec sens, durée, itinéraire (direct / relayé), données consommées et passerelle.
  • Activer des comptes, choisissez lesquels de vos comptes peuvent passer des appels (inscription signée auprès du relais).
  • Apparence, la façon dont vous apparaissez : Tout le monde / Tous les contacts / Contacts sélectionnés / Personne (avec un sélecteur par contact pour Sélectionnés). « Personne » vous permet tout de même de lancer des appels.

Pendant un appel : coupure du micro, activation de la caméra, partage d'écran et compteur de données en direct. L'indicateur de relais de la barre supérieure affiche les données restantes pendant les appels relayés.


8. ENTREPRISE

8.1 Factures

Envoyez par lien une facture payable en ZBC ou dans toute monnaie/tout jeton enregistré (ZUSD, ZBTC…). Le paiement est un transfert normal dans cette devise ; l'état se met à jour automatiquement à partir de la chaîne.

  • Créer une facture, montant + devise, description, date d'échéance facultative ; la facture est inscrite comme jeu de données sur votre compte et vous obtenez un lien de partage (voir 8.4).
  • Deux onglets : Émises par moi et Reçues, chacun regroupé en En attente de paiement et Payées. Les lignes payées renvoient à la transaction de règlement. Les factures entrantes apparaissent aussi dans les notifications et dans À faire, avec un lien direct vers la page de paiement.
  • Page de paiement, ouverte depuis un lien : affiche l'émetteur, le montant, la devise et le mémo ; un seul geste construit le transfert exact.

8.2 Formulaires

Publiez un formulaire, partagez un lien et recueillez des réponses signées et chiffrées que vous seul pouvez lire, avec la preuve de qui a signé quoi. Définissez les champs, publiez (un jeu de données sur votre compte), partagez le lien ; les réponses sont chiffrées pour votre clé et listées avec l'adresse du signataire et l'horodatage.

8.3 Notarisation (preuve d'existence)

Horodatez n'importe quel fichier sur la chaîne : le document ne quitte jamais votre appareil.

  • Notariser, déposez un fichier ; il est haché localement (SHA3-256). Pour les images, vous pouvez joindre une petite miniature (avec l'option de la chiffrer pour vous-même) ; les PDF reçoivent une mention honnête « pas d'aperçu ». Le hash (+ la miniature facultative) est inscrit sur votre compte comme jeu de données, financé par son propre loyer de stockage.
  • Mes ancrages, vos ancrages avec hauteur/heure de bloc ; ceux en attente (soumis, pas encore sur la chaîne) sont suivis localement jusqu'à confirmation.
  • Vérifier, déposez un fichier pour le hacher de nouveau et rechercher son ancrage, sur votre propre compte par défaut, ou collez une adresse ZBC_ / un lien pour vérifier celui de quelqu'un d'autre.

Les liens vers les factures, formulaires, sondages et pages de paiement s'adaptent à la façon dont le portefeuille est servi : depuis une véritable origine https://, ce sont des URL complètes ; depuis un fichier local, ce sont des liens #fragment, et le destinataire colle le fragment après …wallet.html dans son propre portefeuille (aucun chemin file:// n'est jamais codé en dur).


9. APPLICATIONS

L'Arcade : des applications au tour par tour, sur la chaîne et avec mise. Le salon filtre l'accès honnêtement : quand la chaîne est injoignable, une surcouche bloque le jeu jusqu'à son retour.

9.1 Vues

  • Salon, cagnotte du réseau (ZBC + jetons), vos parties et défis ouverts (boutons pour rejoindre), statistiques et bibliothèque d'applications.
  • Solo, applications en solo contre la maison (dés, pile ou face, roulette, machines à sous, loterie, crash…).
  • 1 contre 1, applications au tour par tour : morpion, échecs, puissance 4, dames, reversi, gomoku, bataille navale, jeu des petits carrés… Défiez un adversaire précis (adresse/contact, l'invitation arrive dans son portefeuille) ou publiez un défi ouvert que n'importe qui peut rejoindre.
  • 3 joueurs et plus, applications de groupe (petits chevaux, pig, course, style Monopoly).

9.2 Lancer une partie

Le formulaire de nouvelle partie : application, mise (montant + monnaie, ZBC ou tout jeton de la liste de la cagnotte ; 0 = amicale), places, adversaire (1 contre 1) et, si c'est pris en charge, mode rapide (canal d'état). La création diffuse CreateApp (24) et bloque votre mise ; celui qui rejoint bloque la sienne avec JoinApp (25).

9.3 Jouer

La vue du plateau affiche la barre d'état (à qui le tour, compte à rebours), le plateau, la colonne des joueurs et l'historique des coups. La légalité des coups est contrôlée côté client ; la VM d'applications du nœud revalide chaque coup.

  • Mode sur la chaîne, chaque coup est une transaction AppMove (26) ; le compte à rebours ne descend jamais sous le temps de bloc mesuré. Si le portefeuille se désynchronise, il peut reconstruire toute l'application à partir de la chaîne.
  • Mode rapide (canaux), les coups sont échangés instantanément sous forme de bons signés (retransmis toutes les ~10 s jusqu'à accusé de réception) ; à la fin, l'un ou l'autre joueur soumet SettleApp (39) et la chaîne rejoue les bons signés selon ses propres règles pour arbitrer et verser les gains.
  • Abandonner (27) concède la partie : la mise revient à l'adversaire. Réclamer le dépassement de délai (28) revendique la victoire si l'adversaire a abandonné au-delà du délai par coup.
  • Quitter est sans risque : les manches inachevées sont conservées localement, rouvrez la même application pour vous reconnecter ; le résultat est scellé sur la chaîne.

10. AVANCÉ

10.1 Clés et phrases de récupération

Gérez chaque identité du coffre :

  • Phrases de récupération, chacune avec un nom. À partir de chaque phrase, vous pouvez dériver des comptes sur n'importe quelle chaîne prise en charge et à n'importe quel index de compte sans la ressaisir. Afficher (protégé par PIN), renommer, supprimer.
  • Importer une clé, une clé privée unique de 64 caractères hexadécimaux, dans n'importe quel format.
  • Surveiller une adresse, ajoutez une entrée en lecture seule.
  • Liste des clés importées et adresses surveillées, avec pour chaque ligne l'adresse, le solde en direct et la suppression.

10.2 Portefeuille papier

Stockage à froid imprimable. Commandes : Source, Mon portefeuille (un compte que vous détenez) ou Nouveau portefeuille vide (phrase neuve générée sur place, jamais stockée) ; options de mise en page ; Imprimer. L'impression contient le QR de l'adresse + la phrase/clé, avec un avertissement appuyé sur sa manipulation.

10.3 Soumettre

Diffusez une transaction signée ailleurs (appareil isolé du réseau, cosignataire multisig, « créer seulement » depuis Envoyer). Collez le JSON signé ou Scanner le QR avec la caméra. Aucune clé n'est nécessaire. Renvoie l'identifiant de la transaction obtenue ou l'erreur du nœud mot pour mot.


11. SYSTÈME

11.1 Paramètres

Regroupés en sous-onglets :

  • Sécurité, modifiez le code PIN à 6 chiffres (les sauvegardes téléchargées ensuite nécessitent le nouveau PIN).
  • Clé d'accès, configurez / supprimez le déverrouillage par clé d'accès de la plateforme (Face ID / Touch ID / Windows Hello).
  • Verrouillage auto, verrouillage après une période d'inactivité.
  • Menu, affichez/masquez des sections entières de la barre latérale (préférence de l'appareil). Seul ACCUEIL est toujours affiché ; Paramètres reste accessible depuis la barre supérieure.
  • Sauvegarde et restauration, téléchargez le coffre chiffré (votre PIN est nécessaire pour l'ouvrir ; quiconque possède le fichier + le PIN peut dépenser) / restaurez à partir d'un fichier de sauvegarde.
  • Nœud (accessible aussi avant la connexion), la passerelle actuelle avec son indicateur de santé, Lister les passerelles et vérifier qui est en ligne (à partir du registre sur la chaîne), une saisie manuelle d'URL de nœud pour des nœuds de secours supplémentaires, et les paramètres avancés du nœud.
  • Thème, sombre / clair.
  • Mode air-gap, lorsqu'il est ACTIVÉ, le portefeuille ne diffuse jamais rien : chaque transaction est signée et exportée (JSON + QR) pour qu'un appareil connecté la soumette. Un indicateur apparaît dans la barre supérieure.
  • Réinitialiser, effacez cet appareil (coffre, caches) ; votre phrase restaure tout ce qui compte.

11.2 Nœud

Tout pour faire fonctionner un nœud validateur (comptes ZooBC uniquement) :

  • Mes nœuds, tous les nœuds détenus par vos portefeuilles (tous les comptes ou un seul) ; nommez-les localement, copiez leurs clés.
  • Enregistrer un nœud, collez la clé secrète du nœud (64 caractères hexadécimaux) + le solde bloqué (1 ZBC min., 1000 par défaut). Le portefeuille récupère un bloc récent et construit une preuve de propriété (POOWN) : la clé du nœud signe owner ‖ block hash ‖ height, puis le portefeuille diffuse NodeRegistration (type 2). La mise est libérée si vous retirez le nœud.
  • Retirer un nœud, désinscription ; le solde bloqué est libéré (RemoveNode, 514).
  • Mettre à jour la mise du nœud, nouveau solde bloqué (il ne peut que rester identique ou augmenter) ; nouvelle POOWN (UpdateNode, 258).
  • Revendiquer un nœud, réattribuez la propriété d'un nœud à ce portefeuille en prouvant son contrôle avec sa clé secrète (ClaimNode, 770).

11.3 Réseau

Vos enregistrements d'infrastructure sur la chaîne, avec une vue d'ensemble en direct des trois registres :

  • Enregistrer une passerelle, accès direct au formulaire Passerelles (bloque une mise de 10 ZBC, remboursée à la désinscription ; la passerelle doit ensuite émettre des signaux de vie, sinon elle est automatiquement élaguée et sa mise remboursée).
  • Enregistrer / mettre à jour un relais, publiez un relais pour permettre sa découverte : clé du relais (ZBR_/64 hex), passerelle qu'il dessert, domaine, URL (RegisterRelay, 48 ; Désinscrire, 49). C'est toujours le certificat de liaison hors chaîne du relais (ci-dessous) qui l'authentifie : cet enregistrement sert seulement à le rendre trouvable.
  • Enregistrer / mettre à jour un nœud d'archive, indiquez qu'un de vos nœuds enregistrés sert l'historique complet + l'API de l'explorateur : clé du nœud (ZNK_/64 hex), domaine, URL (RegisterArchival, 46 ; Désinscrire, 47). Lui attribue le badge Archive dans l'explorateur.

Un nouvel enregistrement avec la même clé met à jour le domaine/l'URL ; seules la nouvelle annonce ou la désinscription faites par le propriétaire ont un effet.

11.4 Passerelles

  • Liste des passerelles, la passerelle avec laquelle ce portefeuille communique, avec un contrôle de santé de toutes les passerelles enregistrées (Lister les passerelles et vérifier qui est en ligne) ; choisissez celle par laquelle vous connecter. Paramètres avancés du nœud… ouvre la configuration brute des URL.
  • Enregistrer une passerelle, Générer une clé de passerelle (ou collez 64 caractères hexadécimaux ; l'aperçu de l'adresse ZBG_ se met à jour en direct), domaine, URL → RegisterGateway (36), ce qui bloque la mise de 10 ZBC. Les signaux de vie (37) sont émis automatiquement par la passerelle en fonctionnement.
  • Désinscrire une passerelle, par clé ; rembourse la mise (UnregisterGateway, 38).

11.5 Relais

Enregistrer un relais (parcours opérateur, sans transaction ni frais) : choisissez la passerelle dont la clé ZBG_ signe, définissez la validité du certificat (en jours), puis Générer la clé et le certificat du relais. Le portefeuille produit la clé ZBR_ du relais et un certificat signé par la clé de votre passerelle ; collez le résultat dans le /etc/zoobc/relay.env du serveur relais et redémarrez-le : son journal affiche [fed] ON et il se relie aux passerelles pairs. Relancez à tout moment pour renouveler la clé.

11.6 Gouvernance

  • Sondages, un sondage est un enregistrement sur la chaîne (un jeu de données) : question, options, description, période de vote, règles d'éligibilité (solde ZBC minimum, ancienneté minimale du compte, nombre minimal de transactions). Nouveau sondage ouvre l'éditeur ; Ouvrir un lien de sondage… permet de coller un lien #gov=poll/... partagé. Chaque vote est une transaction signée depuis le compte du votant ; les décomptes sont lus directement sur la chaîne. Les fiches de sondage indiquent l'état (à venir / ouvert / clos), le nombre de votes, la copie du lien et Ouvrir.
  • Vote sur les frais, votez pour relever ou abaisser le coefficient de frais du réseau (1.0× = normal). La médiane de tous les votes des nœuds le fait évoluer, dans la limite de 0.5×–2.0× par période. Deux étapes :
  1. Engagement, votre vote est diffusé sous forme de hash (FeeVoteCommit, type 7) ; le portefeuille mémorise le vote sous-jacent sur cet appareil.
  2. Révélation, pendant la période de révélation, diffusez le vote + votre signature brute (FeeVoteReveal, 263).

12. Référence des transactions

Tous les entiers sont en little-endian ; montants en unités atomiques (×10⁸ pour ZBC, ×10^décimales pour les jetons). Toutes les transactions partagent la même enveloppe : type(u32) · version(1) · timestamp(u64) · sender(typed acct) · recipient(typed acct; 02000000 = none) · fee(u64) · body_len(u32) · body · escrow-or-marker · message_len(u32) · message. Le bloc de séquestre (pour tout type compatible séquestre) est approver(typed) · commission(u64) · timeout(u64) · instruction(lp4) · multi_party(1) ; sans séquestre, un marqueur de 4 octets (=2) est écrit. Les comptes ZBC signent en ed25519 sur SHA3-256("ZBC-TX" ‖ genesis_hash(32) ‖ unsigned_bytes) ; les autres formats signent avec leur schéma natif sur le même condensé. C'est l'intégration du hash de genèse dans le condensé qui empêche de rejouer une signature sur un autre réseau ZooBC ; elle est obligatoire depuis la v0.4.0.

Paiements et séquestre

TypeNomCorpsRemarques
1SendZBCamount(8)Destinataire dans l'enveloppe. Séquestre + message sur la chaîne (chiffrable en option ZBC→ZBC) pris en charge.
6LiquidPaymentamount(8) · complete_minutes(8) · [token_id(8)] · [fee_in_token(1)]Se débloque linéairement au profit du destinataire sur la période ; le destinataire réclame les fonds au fil du déblocage. Les flux de jetons ajoutent token_id en dernier.
262LiquidPaymentStoptx_id(8)L'expéditeur arrête le flux ; le reliquat non débloqué lui est restitué.
4ApprovalEscrowapproval(u32: 0=approuver, 1=rejeter) · escrowed_transaction_hash(32)Signée par l'approbateur désigné ; l'approbation libère les fonds au destinataire, le rejet les renvoie à l'expéditeur. À l'expiration du délai, la chaîne tranche automatiquement.
260EscrowRequesttoken_id(8) · amount(8) · approver(typed) · timeout(8) · commission(8) · instruction(lp4)Destinataire de l'enveloppe = le payeur. Séquestre côté bénéficiaire : le payeur le finance depuis À faire.
15CreateTriggerfire_height(8) · amount(8)Destinataire de l'enveloppe = bénéficiaire. Bloque maintenant, paie à la hauteur de bloc.
16CancelTriggertrigger_id(8)Rembourse le montant bloqué au propriétaire.

Planificateur

TypeNomCorpsRemarques
29ScheduledTransfertoken_id(8) · per_fire(8) · interval_s(8) · fires(u32) · cliff_s(8) · funding_mode(1) · cancel_policy(1) · end_time(8) · reserved(1)funding_mode 0 = déblocage progressif (total pré-bloqué), 1 = récurrent (prélèvement à l'échéance). cancel_policy 0 = révocable. 1–520 tranches.
30CancelScheduleschedule_id(8)Révocation par l'expéditeur (si révocable) ou refus par le destinataire ; le reliquat non versé est restitué.
31ReassignScheduleschedule_id(8) · new_recipient(typed)Destinataire actuel uniquement.

Messages et données

TypeNomCorpsRemarques
3SetupAccountDatasetprop_len(u32) · prop · val_len(u32) · valMessages de chat, factures, formulaires, sondages, ancrages de notarisation, champs de profil. 4096 octets max. par entrée ; le loyer de stockage s'applique.
259RemoveAccountDatasetmême structureLe compte + la propriété + la valeur doivent correspondre exactement.
9FundStorageamount(8)Prépaie le loyer des jeux de données de votre compte.
40StoreFilefile_root(32) · total_size(8) · piece_size(u32) · deposit(8) · piece_count(u32) · piece_ids(32×n)Ancre un téléversement DFS ; dépôt ≥ 0.01 ZBC ; la racine doit correspondre aux morceaux.
42TransferDatasetobject_id(32) · new_owner(typed 36)Transfert de propriété en deux étapes (offre).
43SetDatasetPolicyobject_id(32) · mode(1) · n_add(1)+adds · n_remove(1)+removesListes de contrôle d'accès (255 max. par modification).
44AcceptDatasetobject_id(32)Le destinataire accepte une offre de transfert.
45DeleteDatasetobject_id(32)Le propriétaire supprime l'objet.

object_id = le hash de la transaction de création (ZTX_/64 hex). Les recharges de longévité sont de simples SendZBC vers l'adresse de dépôt ZBS_ de l'objet (type de compte 10) et peuvent être placées sous séquestre.

Jetons (monnaies colorées)

TypeNomCorpsRemarques
10IssueTokendecimals(1) · flags(1) · supply(8) · backing(8) · sym(lp2) · name(lp2)Options : remboursable, frappable. Icône SVG + description transmises dans le message (≤ 6144 o).
11TransferTokentoken_id(8) · amount(8) · fee_in_token(1)Compatible séquestre ; sous séquestre, les frais doivent être payés en ZBC (fee_in_token forcé à 0).
12MintTokentoken_id(8) · add_supply(8) · add_backing(8)Émetteur uniquement ; maintient la valeur unitaire constante.
13BurnTokentoken_id(8) · amount(8)Les jetons remboursables vous rendent votre part de la garantie.
14FinanceTokentoken_id(8) · amount(8)Recharge le loyer de survie du jeton.

Trading

TypeNomCorpsRemarques
18CreateSwapOffergive_token(8) · give_amt(8) · want_token(8) · want_amt(8) · expiry(8; 0=GTC) · [counterparty(36)]Bloque le côté donné. Une contrepartie désignée en fait une offre réservée.
19AcceptSwapOfferoffer_id(8)Échange atomique : côté voulu preneur→auteur, côté donné réservé→preneur.
20CancelSwapOfferoffer_id(8)Auteur uniquement ; rembourse le montant réservé.
21CreateMarketbase_token(8) · quote_token(8) · deposit(8)Marché à carnet d'ordres ; le dépôt est un loyer en ZBC.
22PlaceOrdermarket_id(8) · side(1) · price(8, ×1e8) · amount(8, base) · flags(1: bit0 marché, bit1 post-only) · expiry(8)side 0 = achat de la base, 1 = vente.
23CancelOrderorder_id(8)Propriétaire uniquement ; rembourse la part non exécutée.

Applications

TypeNomCorpsRemarques
24CreateAppapp_type(1) · stake_token(8) · stake_amount(8) · seats(1) · params(lp2) · [opponent(36)] · [channel(1)]Mise en unités de base. Places : 1 solo, 2 duel, 3+ groupe. L'adversaire est le destinataire de l'enveloppe, si bien que l'invitation apparaît dans son flux. channel=1 = mode rapide (2 places uniquement).
25JoinAppapp_id(8)Bloque la mise du joueur qui rejoint.
26AppMoveapp_id(8) · move(lp2)Un coup = une tx ; la VM d'applications du nœud revalide.
27ResignAppapp_id(8)La mise revient à l'adversaire.
28ClaimTimeoutapp_id(8)Victoire si l'adversaire a abandonné au-delà du délai par coup.
39SettleAppapp_id(8) · final_seq(u32) · move_count(u32) · [seat(1)·move(lp2)·sig(64)]*Règlement du mode rapide : la chaîne rejoue les bons signés et arbitre.

Nœuds et infrastructure

TypeNomCorpsRemarques
2NodeRegistrationnode_pub(32) · owner(36) · locked(8) · POOWN(136)1 ZBC bloqué au minimum. POOWN = owner‖blockhash‖height(72) + signature ed25519 du nœud (64) sur ces données, à partir d'un bloc récent.
514RemoveNodenode_pub(32)Libère le solde bloqué.
258UpdateNodenode_pub(32) · locked(8) · POOWN(136)La mise ne peut que rester identique ou augmenter.
770ClaimNodenode_pub(32) · POOWN(136)Réattribue la propriété au signataire.
36RegisterGatewaygw_key(32) · domain(lp4) · url(lp4)Bloque une mise de 10 ZBC fixée par le protocole.
37GatewayHeartbeatgw_key(32)Signal de vie ; empêche l'élagage de l'enregistrement.
38UnregisterGatewaygw_key(32)Rembourse la mise de 10 ZBC.
46 / 47Register / UnregisterArchivalnode_pub(32) [· domain(lp4) · url(lp4)]Sans mise, frais uniquement. Signée par le propriétaire.
48 / 49Register / UnregisterRelayrelay_key(32) [· gw_key(32) · domain(lp4) · url(lp4)]Enregistrement de découverte ; c'est toujours le certificat hors chaîne qui authentifie.

Gouvernance et politique

TypeNomCorpsRemarques
7FeeVoteCommitvote_hash(32)SHA3-256 de FeeVoteInfo (blockhash‖height‖feeVote) ; vote conservé localement pour la révélation. 1.0× ↔ feeVote 10000.
263FeeVoteRevealFeeVoteInfo(44) · sig_len(u32=64) · voter_sig(64)ed25519 brut sur les informations. Médiane appliquée, limitée à 0.5×–2.0× par période.
5MultisigRegistrationver(u32) · min_sigs(u32) · nonce(u64) · n(u32) · participants triés · 0 · 0Adresse = encodage ZBC du SHA3-256 de l'ensemble canonique des participants.
50SetTransactPolicymask(u16)Bit i activé = le compte refuse la catégorie i (bits 0–8, voir §5.7). Signée par le compte lui-même uniquement ; appliquée dans les deux sens par chaque nœud.

13. Dépannage

  • « synchronisation… » dans la barre supérieure, une coupure réseau passagère ; le portefeuille attend 30 s d'échec continu avant de déclarer la chaîne injoignable et essaie entre-temps automatiquement les nœuds de secours et les passerelles connues.
  • « Nouvelle chaîne détectée », la pointe du nœud est bien en dessous du bloc le plus haut que ce portefeuille a vu : le réseau a été redémarré depuis la genèse. Le portefeuille propose de nettoyer en un clic les caches de l'ancienne chaîne (activité, jetons, applications, notifications) ; les clés, phrases de récupération et contacts sont conservés.
  • PIN oublié, après 5 tentatives erronées, le coffre est effacé. Restaurez avec votre phrase de récupération (ou un fichier de sauvegarde + son PIN).
  • Une transaction est refusée et seuls les frais sont prélevés, la contrepartie (ou vous-même) a une politique de transaction qui refuse cette catégorie (§5.7).
  • Bourse/Place de marché/Applications affichent HORS LIGNE, le nœud ne propose pas ces points de terminaison ou est injoignable ; les onglets continuent de le sonder et repassent EN DIRECT d'eux-mêmes.
  • Application figée / navigateur fermé en cours de partie, rouvrez la même application depuis le Salon pour vous reconnecter ; les applications sur la chaîne se reconstruisent à partir de la chaîne, celles en mode rapide retransmettent automatiquement les bons.
  • Un message ou une transaction envoyé depuis un autre appareil n'apparaît pas dans Activité, la source Dernières TX d'Activité affiche la fenêtre récente du nœud connecté ; passez la source sur Toutes les TX (archive) pour l'historique complet.
  • Le lien de partage commence par #, vous utilisez le portefeuille depuis un fichier local ; le destinataire colle le fragment après …wallet.html dans sa propre copie ou dans n'importe quel portefeuille hébergé par une passerelle.

14. Glossaire

  • Unité atomique, plus petite unité sur la chaîne ; 10⁻⁸ ZBC.
  • Jeton garanti, jeton adossé à des ZBC bloqués ; le détruire rembourse la garantie au prorata.
  • Jeu de données, un enregistrement propriété→valeur sur un compte ; le stockage de données générique de la chaîne.
  • Séquestre, fonds retenus jusqu'à ce qu'un approbateur désigné approuve, rejette, ou que l'échéance tranche automatiquement.
  • Mode rapide / canal, bons de coups signés hors chaîne, réglés par une transaction finale unique.
  • Passerelle, le serveur web par lequel le portefeuille se connecte (clé ZBG_).
  • Paiement liquide, un transfert qui se débloque en continu au fil du temps.
  • POOWN, preuve de propriété du nœud : la clé du nœud signe propriétaire + hash d'un bloc récent + hauteur.
  • Relais, serveur d'appels et de présence exploité par une passerelle (clé ZBR_).
  • Disponible, solde moins tout ce qui est bloqué (mises, séquestres, offres, calendriers).
  • Coffre, le stockage local chiffré par PIN qui contient phrases de récupération, clés et contacts.
  • Lecture seule, une adresse ajoutée sans sa clé ; consultation possible, signature jamais.
  • Adresse ZBS_, le compte de dépôt de loyer d'un objet, qu'on peut alimenter comme n'importe quelle adresse.
  • ZTX_, forme d'affichage d'un hash de transaction.