Bonjour pagu, excellent commentaire très enrichissant de par les liens fournis. J’ajouterais que le géant Dell propose le Bitcoin comme moyen de paiement pour ses PC.
Une fonction de hachage est une fonction h possédant les deux propriétés suivantes : 1. propriété de compression : pour tout x, le nombre h(x) est de taille fixée 2. Facilité de calcul : h(x) se calcule facilement
Une fonction de hachage sert à produire une empreinte courte d’un message indépendamment de sa longueur. Elle permettra par exemple de contrôler l’intégrité des données. On peut aussi imaginer, pour signer un message, de signer un haché bien choisi (pour avoir une signature courte). Pour réaliser cet objectif, nous devons imposer des contraintes à notre fonction de hachage.
Soit h : X -> Y une fonction de hachage. 1. h est dite à sens unique si, pour presque tout y de Y, il est calculatoirement infaisable de trouver x tel que y = h(x) 2. h est dite faiblement sans collision si, pour x donné, il est calculatoirement infaisable de trouver x’ tel que h(x’) = h(x) h est dite sans collision s’il est calculatoirement infaisable de trouver x et x’ tels que h(x) = h(x’)
En pratique, le haché d’un message peut être vu comme une empreinte d’un message ou un condensé. La propriété d’être sans collision permet de se prémunir contre des attaques sur l’intégrité d’un message. Supposons, par exemple, qu’un message M soit déposé sur une page Internet et qu’on l’y laisse pendant plusieurs jours. Comment savoir si le message n’a pas été modifié ? Une solution simple consiste, avant de déposer le message, à calculer une empreinte h(M) par une fonction de hachage h. Pour savoir si le message a été modifié, on calcule une empreinte (ou un haché) du message M’ que l’on a retrouvé. Si h(M’) = h(M), alors nécessairement M = M’. En effet, pour un haché h(M) donné, la propriété d’être faiblement sans collision assure que l’on ne peut (en pratique) trouver M’ différent de M tel que h(M’) = h(M). Garder un haché d’un message pour une comparaison postérieure avec le haché du même message éventuellement modifié permet donc de vérifier l’intégrité d’un message.
Dans le cas précédent, on utilise simplement la notion d’être faiblement sans collision. [Nous verrons comment] le fait d’être aussi sans collision peut être nécessaire comme, par exemple, pour la signature électronique. Dans ce cas, on signe (en pratique) un haché ; le fait de ne pas être capable de trouver une collision à priori garantit la non-répudiation d’un message, à savoir que le signataire a bien signé un message donné et pas un autre (avec le même haché).
source : Licence 3 cours de Mathématiques appliquées ed. Pearson p.462
Concernant la technologie Bitcoin, la fonction de hachage employée est le SHA256 (conçue par la National Security Agency des États-Unis (NSA)) et renvoie une empreinte de longueur fixe sur 256 bits (quel que soit la longueur du message).
De nombreuses sociétés dans le monde on conçu des machines uniquement dédiées au calcul de fonctions de hachage SHA256 en vue de profiter de la création monétaire du réseau Bitcoin. Ces machines sont nommées ASIC et ne servent qu’à cela, faisant ainsi du réseau Bitcoin de loin la plus grande puissance de calcul au monde pour SHA256.
Bonjour Pascal, j’apprécie votre commentaire. Vous indiquez que "ce système a toutes les chances de
s’effondrer" lorsque la création monétaire sera insuffisante. Je pense que les frais de transaction vont augmenter à chaque baisse de rémunération pour les mineurs. Le système trouvera alors son équilibre avec des frais parmi les plus bas. Mais peut-être ces frais deviendront trop élevés et impliqueront la chute du système. rdv dans 40, 60, 80 ans ?
Petite précision : quand je compare des puissances de calcul, ce n’est que dans le domaine du calcul en masse de fonctions mathématiques de hashage (le réseau bitcoin ne sera vraisemblablement jamais la 1ère puissance de calcul pour calculer la trajectoire d’une fusée). Être le meilleur dans ce domaine assure la sécurité informatique du réseau.
Toutes les transactions sont publiques et inscrites dans la blockchain. L’anonymat vient du fait que chacun peut créer une adresse bitcoin sans que l’on sache à qui appartienne cette adresse. Par contre si on veut les convertir en argent réél on se fait épingler. Il faut comparer le bitcoin à du cash, mais ce dernier n’a pas de livre de comptes public et restera l’outil rêvé des fraudeurs.