Vires in numeris

Vires in numeris est la devise de Bitcoin, et pourrait se généraliser à l'ensemble des cryptomonnaies. Venant du latin, elle signifie littéralement : « Les forces dans les nombres. » Le mot vires désigne les forces, les ressources, l'énergie physique, les troupes militaires. Le terme numeris désigne quant à lui les nombres, et par extension : la science des nombres, l'arithmétique. Ainsi, la devise met en avant la puissance des mathématiques qui donnent à Bitcoin sa robustesse et sa sécurité. Elle nous dit : « N'ayez pas confiance en quelqu'un d'autre, ayez confiance dans les nombres. » Et ce sont bien les nombres qui permettent à Bitcoin de fonctionner de manière ininterrompue depuis maintenant près de 10 ans, et ceci sans tiers de confiance, sans État ni Banque Centrale.

Vires in numeris a été évoquée pour la première fois le 25 mai 2011 sur le forum bitcointalk. Elle a ensuite rapidement été popularisée grâce aux bitcoins frappés de Casascius sur lesquels elle était gravée. Casascius était un utilisateur de bitcointalk, un américain du nom de Mike Caldwell. Ses bitcoins frappés, qu'il a vendus entre 2011 à 2013, étaient des pièces (et des lingots) physiques de bitcoins. La pièce de bitcoin ne valait pas grand chose en soi : c'était l'information qui s'y trouvait (la clé privée) qui avait une valeur. Cette information ne pouvait être révélée qu'en détruisant l'hologramme au dos de la pièce, ce qui imposait son usage unique. Les images ci-dessous montrent l'avant et l'arrière d'un bitcoin physique de Casascius (série 2) d'une valeur de 0.5 BTC datant de 2013.

 

Avant de la pièce Arrière de la pièce
Pièce bitcoin de Casascius pile Pièce bitcoin de Casascius face

 

De nos jours, la tradition a été perpétuée par l'entreprise française Ledger qui grave la phrase au dos du Nano S, le portefeuille matériel phare de l'entreprise.

 

Ledger Nano S vires in numeris
Ledger Nano S

 

Pourquoi donc Vires in numeris ? Comme je l'ai dit, le fonctionnement sécurisé de Bitcoin repose sur la mathématique. Il se base notamment sur la cryptographie : c'est d'ailleurs pour cela qu'on parle souvent de cryptomonnaie. Bitcoin est un élégant assemblage de technologies permettant aux individus de s'échanger de la valeur quasi-instantanément et n'importe où dans le monde. Ces technologies, génialement combinées par Satoshi Nakamoto, ont des fondements mathématiques sérieux qui soutiennent l'existence du protocole.

Tout d'abord, Bitcoin utilise l'algorithme de signature électronique ECDSA (Elliptic Curve Digital Signature Algorithm), qui fait appel à la cryptographie sur les courbes elliptiques et donc à des notions complexes d'algèbre. Comme d'autres algorithmes de cryptographie asymétrique, celui-ci se base sur un couple clé privée / clé publique. La clé privée, l'information secrète protégeant les bitcoins d'un utilisateur, est un nombre choisi au hasard statistiquement impossible à retrouver. Pour calculer la clé publique et pour signer les transactions à l'aide de la clé privée, le protocole utilise la courbe elliptique secp256k1.

 

secp256k1
secp256k1

 

Très utilisées en cryptographie, les fonctions de hachage SHA256, SHA512 et RIPEMD160 interviennent à divers endroits dans Bitcoin. Il s'agit de fonctions calculant un nombre de taille fixe impossible à inverser sans tester toutes les possibilités. Elles sont, entre autres, utilisées dans le calcul d'adresses et dans le chaînage des blocs réalisé par les mineurs.

Dans la même veine, Bitcoin se sert des arbres de Merkel pour former les blocs et organiser les transactions qui s'y trouvent. Cette architecture se révèle très utile aux portefeuilles légers (comme celui que vous utilisez sur votre smartphone par exemple) qui se contentent de télécharger les en-têtes des blocs et ne vérifient que partiellement les transactions.

Le calcul économique, modélisé par la théorie des jeux, joue aussi un grand rôle dans la sécurité de Bitcoin. Le mécanisme de la preuve de travail incite les mineurs à être honnêtes : il est plus rentable de contribuer à sécuriser le réseau, qu'à essayer de l'attaquer. Les mineurs sont également poussés à valider la version de Bitcoin valorisée par les utilisateurs, ce qui crée un équilibre dans les intérêts en présence.

Enfin, la création des nouveaux blocs est arrangée mathématiquement. D'une part, l'ajustement de la difficulté de minage permet de maintenir une moyenne de 10 minutes dans la fréquence des blocs. D'autre part, pour limiter la quantité de bitcoins en circulation, la récompense distribuée aux mineurs diminue avec le temps. La rémunération par blocs est réduite de moitié tous les 210 000 blocs, soit environ tous les 4 ans. Initialement de 50 bitcoins par bloc, elle est passée à 25 bitcoins par bloc en 2012, puis à 12.5 bitcoins en 2016. Cette diminution géométrique doit être compensée par une courbe d'adoption exponentielle (qui conduirait à une augmentation du prix). À terme, la création monétaire s'arrêtera et le réseau fonctionnera uniquement grâce aux frais de transaction. Le nombre maximal de bitcoins (égal à 21 000 000) est d'ailleurs facilement calculable grâce à une formule élégante :

Calcul nombre maximal de bitcoins en circulation

 

Ainsi, les nombres sont partout présents dans Bitcoin : pour fonctionner, le protocole repose sur la force de la mathématique. C'est pour cela que Bitcoin peut se passer d'une autorité centrale, et ainsi court-circuiter le système financier actuel. C'est ce qui fait dire à ceux qui s'y sont intéressés en profondeur, que la technologie derrière Bitcoin n'est pas une chose à négliger et qu'elle pourrait modifier les usages de demain. C'est ce qui donne la foi à tous ses partisans : le système continue de fonctionner même quand on arrête d'y croire ; le jeu se poursuit, inlassablement, inéluctablement. Vires in numeris.

Je suis fasciné par les cryptomonnaies et par l'impact qu'elles pourraient avoir sur nos vies. De formation scientifique, je m'attache à décrire leur fonctionnement technique de la façon la plus fidèle possible.

0 Comments

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *