Consensus et blocs
La chaîne Velum produit des blocs à tour de rôle entre les nœuds complets actifs, avec un objectif de 2 secondes par créneau. Le rythme réel est mesuré : l’explorateur et la page d’accueil affichent la moyenne récente. À chaque époque (1 800 blocs, environ une heure30 blocs, environ 60 secondes), les nœuds découvrent les VEL de cette époque grâce à leur travail vérifié.
Tours
Le temps est découpé en créneaux de 2 s (l’objectif) depuis la genèse (slot = floor((ts − genèse) / 2000)). Pour chaque créneau, tous les nœuds calculent le même ordre de passage :
actifs = nœuds complets inscrits avec un signe de vie dans les 15 derniers blocs
ordre = actifs triés par sha256(hash_bloc_précédent | slot | adresse)
- Le premier de l’ordre (rang 0) propose le bloc au début du créneau.
- Les suppléants attendent une demi-seconde par rang (rang × 500 ms) avant de pouvoir proposer.
- Un bloc signé avant son tour est rejeté.
L’ordre change à chaque bloc (il dépend du hash précédent) : personne ne sait à l’avance quand ce sera le tour de qui.
Signes de vie
Chaque nœud signe régulièrement un signe de vie (presence : nœud, hauteur, heure). Ces signes entrent dans les blocs et définissent qui est actif. Ils comptent aussi pour la disponibilité, l’une des conditions de niveau.
La chaîne ne s’arrête pas
Si les nœuds actifs s’éteignent tous en même temps, chaque créneau vide fait avancer d’un rang tous les autres. En quelques créneaux, n’importe quel nœud inscrit peut continuer à produire. Les nœuds légers ne produisent jamais de blocs : ceux qu’ils signeraient sont rejetés.
Époques
Dans le dernier bloc de chaque époque :
- On additionne ce qu’il y a à découvrir : émission de l’époque, 80 % des frais conservés et les 0,1 % que reverse la Réserve du réseau.
- 15 % sont découverts par ceux qui ont produit et validé des blocs, à parts égales par bloc.
- 85 % sont découverts par ceux qui ont ouvert des ponts : livraisons vérifiées × multiplicateur de niveau.
- Les cagnottes de tokens (
pool.fund) encore actives sont libérées. - La difficulté (travail vérifié / VEL émis) et le prix de l’oracle sont publiés.
- Les ordres du marché dont le
ttlest échu expirent.
Le travail de chaque nœud n’entre pas reçu par reçu : chaque nœud publie une réclamation agrégée (work.claim) avec la racine de Merkle de ses reçus, et l’époque suivante vérifie 16 reçus au hasard (work.prove). Voir Monter un nœud.
Voir La monnaie VEL pour l’émission et Monter un nœud pour les niveaux.
Choix de chaîne et réorganisations
Quand deux blocs se disputent la même hauteur, la règle tranche :
meilleure = la chaîne la plus haute ; à hauteur égale, le bloc au plus petit hash
Un nœud qui voit une meilleure branche bascule dessus (réorganisation). Grâce au système de tours, les réorganisations sont courtes : en général un ou deux blocs, quand deux suppléants proposent presque en même temps. L’indexeur de l’explorateur garde les états récents pour les suivre et marque les blocs écartés comme « branche abandonnée ».
Finalité {#finalidad}
Sur {{chain}}, la finalité est probabiliste : plus un bloc a de blocs au-dessus de lui, plus il est improbable qu’il soit écarté.
| Usage | Confirmations recommandées | Durée approximative |
|---|---|---|
| Messages, petits paiements entre particuliers | 1 | Un bloc |
| Commerces et passerelles de paiement | 6 | Quelques secondes |
| Plateformes d’échange, montants courants | 30 | ≈ 1 min au rythme visé |
| Plateformes d’échange, gros montants | Une époque | ≈ 1 h sur le réseau principal |
La finalité immédiate avec les signatures des 2/3 des validateurs est dans la feuille de route du réseau principal.
Structure d’un bloc
BlockHeader = { chain, height, prev, ts, slot, proposer, txRoot, receiptRoot, presenceRoot, stateRoot }
Block = { header, hash, sig, txs[], receipts[], presence[], rewards[], tokenRewards?[] }
hash = sha256(JSON canonique du header)
sig = ed25519 du proposant sur le hash
Les racines sont des arbres de Merkle (SHA-256) des transactions, des reçus et des signes de vie. stateRoot est l’empreinte de l’état complet après application du bloc : deux nœuds honnêtes aboutissent toujours au même.