Introduction aux crypto-monnaies

Depuis quelques années maintenant, Internet puis les médias se sont emparés d’un sujet intéressant : les crypto-monnaies.

En quoi cela consiste ?

Il s’agit de monnaie établie non pas au sein d’une banque centrale (comme peuvent l’être l’euro, le dollar, et toutes les autres monnaies officielles), mais de « jetons » et transactions que s’échangent les nœuds d’un réseau. Les transactions s’effectuent grâce à la cryptographie asymétrique.

Pour saisir les avantages et inconvénients, voici quelques schémas.

 Comment fonctionne une transaction traditionnelle ?

Dans notre économie actuelle, les banques sont le maillon de confiance qui permet d’effectuer des transactions en toute sérénité. Voici un exemple simple, où une transaction à lieu entre un émetteur E et un bénéficiaire B, d’un montant de 5 M (monnaie arbitraire).

cryptomonnaie-Diapositive1

  1. E et B se mettent d’accord sur l’échange d’un bien ou d’un service d’une valeur de 5M.
  2. E envoie une demande de transaction à sa banque. Celle-ci peut prendre plusieurs formes :
    • un virement bancaire (par Internet par exemple)
    • un paiement par carte (par terminal de paiement électronique)
  3. La banque de E valide ou refuse la transaction, en fonction du contrat qui la lie avec son client (autorisation de découvert, …). Si elle la valide, elle débitera le compte de la somme de 5M.
  4. Une fois la transaction validée, la banque de E envoie une transaction à la banque de B, qui lui retournera un accusé de réception (notez que  cette étape n’est pas forcement synchrone et peut avoir lieu plus tard, dans des « lots » de transactions entre les deux banques).
  5. La banque de E transmet ainsi une preuve de transaction, à B ou à E suivant la forme de celle-ci :
    • pour un paiement par carte, il s’agira d’un ticket
    • pour un virement bancaire, d’un numéro de transaction
  6. Parallèlement, la banque de B créditera le compte de B de 5M.
  7. B pourra faire valoir sa preuve de transaction auprès de sa banque, afin de s’assurer que la transaction s’est bien réalisée.
  8. Dans le cas où tout s’est bien passé, B pourra profiter de la somme de 5M envoyée par E.

La transaction complète peut durer entre 2 jours et plusieurs mois suivant la somme et le mode utilisée. Par ailleurs, celle-ci peut être mise à mal par plusieurs facteurs :

  • Carte bancaire corrompue ou détournée
  • Banque douteuse
  • etc.

Je ne vais pas faire ici un cours complet sur les méthodes qui permettent d’affaiblir ce système, je ne crois pas en avoir la compétence et ce n’est absolument pas le but de cet article.

Étudions maintenant le fonctionnement d’une crypto-monnaie

Pour pouvoir effectuer une transaction, il est nécessaire de disposer d’un couple clef publique/clef privée. La clef publique est utilisée comme adresse lors de la transaction.

cryptomonnaie-Diapositive2

  1. E et B se mettent d’accord sur l’échange d’un bien ou d’un service d’une valeur de 5C. Ils échangent leur adresse (clef publique).
  2. E émet une transaction, qu’il signe avec sa clef privée. Étant le seul en possession de cette clef, il est l’unique personne sur le réseau à pouvoir signer une transaction, qui correspondra à sa clef publique (son adresse).
  3. Cette transaction est ensuite diffusée sur le réseau, en pair-à-pair (P2P ou peer-to-peer). Le réseau agit ainsi comme un livre de compte gigantesque, où chaque transaction du réseau est enregistrée sur chaque nœud du réseau.
  4. La transaction se réplique sur le réseau, tour à tour, les nœuds ont vent de celle-ci et l’enregistre. Ainsi, F, G, H et I enregistrent la transaction, et la mettent à disposition. Chaque nœud « valide » ainsi la transaction.
  5. Finalement, la transaction arrive chez B, et la somme est créditée par le logiciel sur son portefeuille bbbbbbb.

La réalisation de ces étapes prend entre quelques secondes et plusieurs heures, en fonction du nombre de nœuds sur le réseau (plus il y a de nœuds, plus il est performant). La plupart du temps, une transaction n’est considérée comme sûre qu’après un certain nombre de validations (entre 4 et 200 pour les plus paranoïaques).

Mettre en défaut une crypto-monnaie est un exploit presque impossible à réaliser, puisque pour cela, il est nécessaire de « casser » la clef privée d’un portefeuille pour émettre des transactions en son nom et ainsi récupérer son contenu.

Les crypto-monnaies face au système actuel

Quels sont les avantages des crypto-monnaies sur les transactions traditionnelles ?

  • La mise à disposition d’un portefeuille est immédiate, ne nécessite aucun contrat et n’engendre aucun frais direct (contrairement à l’établissement d’un compte bancaire).
  • Il est possible de disposer d’autant d’adresses qu’on le désire, chacune étant liée à une clef privée distincte. Ceci permet d’augmenter la sécurité de vos transactions, et de réduire leur traçabilité.
  • Les transactions sont beaucoup plus rapides.
  • En cas de panne d’un nœud, le réseau n’est pas altéré et continue de fonctionner. Le nœud rattrapera son retard lors de sa reconnexion, contrairement à une panne d’un élément de la chaine d’une transaction traditionnelle (panne de courant, indisponibilité du terminal de paiement électronique, indisponibilité de la banque, …).
  • Il est possible d’imprimer sa crypto-monnaie sous la forme d’une adresse à usage unique, rendant la transaction indépendante de la présence d’un réseau.
  • En chiffrant son portefeuille, il est impossible de « voler » la monnaie, même en étant un proche (sauf dans le cas des sites hébergeant des portefeuilles). Rien n’empêche techniquement un banquier de vider votre compte et de s’en servir comme il l’entend (néanmoins, un cadre légal très strict prévient ces pratiques en Europe).

Et quels sont les inconvénients ?

  • Aucune autorité légale (comme une banque centrale) ne régule le marché de la crypto-monnaie. Elle est donc susceptible de connaitre des variations violentes, à la hausse comme à la baisse.
  • Aucune loi ne protège l’épargnant ou l’utilisateur d’une crypto-monnaie. Il est ainsi très facile de créer un service en ligne pour former un système de Ponzi ou simplement une loterie truquée. La crypto-monnaie n’ayant aucune valeur légale, peut-on continuer à parler d’arnaque ?
  • La perte de votre clef privée entraîne la perte pure et simple de tous les revenus attachés. Il n’y a aucun moyen de récupérer un clef privée autrement qu’en restaurant une sauvegarde.
  • Le vol de votre clef privée entraîne la possibilité d’émettre des transaction en votre nom. Ainsi, en volant un téléphone disposant de ces clefs privés, il est possible de vider votre portefeuille ! Bien entendu, aucune banque, assurance ou autorité ne couvrira la perte de ces revenus, et je suis certain qu’aucune enquête ne sera officiellement demandée pour trouver le voleur et recouvrer vos biens. Cependant, il est possible est surtout vivement recommandé de chiffrer sa clef privée en utilisant un mot de passe complexe.
  • La sécurité, et donc la valeur de la crypto-monnaie résident dans la force de son algorithme de chiffrement. Si celui-ci venait à être cassé ou simplement à montrer des faiblesses, le cours de la crypto-monnaie pourrait s’effondrer, là où une banque serait couverte par une assurance ou par l’État. Ce scénario est toutefois improbable puisque les algorithmes couramment utilisés sont réputés sûrs, et leur code source est disponible librement.

Attention à ces fausses vérités à propos des crypto-monnaies

  • Il est faux de croire que les transactions réalisées sur le réseau d’une crypto-monnaie sont anonymes. Comme dit plus tôt, la transaction est réalisée entre deux adresses, et est publiquement disponible sur l’ensemble du réseau. Il existe même pour chaque crypto-monnaie des sites permettant de suivre à la trace chaque transaction entre chaque adresse. Si vous utilisez la même adresse pour commander votre journal ou pour louer un botnet, soyez sûrs que les autorités finiront par mettre la main sur vous, si vous êtes amené à réaliser l’attaque du siècle avec ledit botnet.
  • Il est dangereux de croire que votre portefeuille est en sécurité si vous l’hébergez sur un serveur distant. Gardez à l’esprit qu’avoir accès à votre clef privée donne l’accès à vos revenus. Je vous déconseille donc fortement l’utilisation de plateformes en ligne, quelque soit leur réputation, et quelque soit le rendement d’épargne qu’elles peuvent proposer. Évitez ainsi de stocker de la crypto-monnaie sur une machine dont vous n’avez pas le contrôle absolu et exclusif. Les cas de serveurs qui disparaissent dans la nature avec les clefs privées des utilisateurs se multiplient, et il est difficile de déterminer s’il s’agit de piratages, ou d’actions délibérées de la part des administrateurs. Bien entendu, les autorités, si elles daignent s’y intéresser, n’auront un champ d’actions que très limité.
  • Jusqu’à maintenant, aucune crypto-monnaie n’a montré de faiblesse dans sa sécurité. Beaucoup d’articles relatent des cas de « piratage » de crypto-monnaies. En fait, il s’agit de vols ou de pertes de portefeuilles, que les utilisateurs ont mis en ligne, ignorant les avertissements quant aux dangers de cette pratique. Encore une fois : les crypto-monnaies ne sont pas conçues pour être utilisées depuis des serveurs distants. Il est important de considérer votre portefeuille comme vos clefs de voiture. Aussi, si vous confiez celles-ci à un tiers, ne vous plaignez pas si celui-ci se fait voler votre voiture ou s’il disparait avec.
  • Il est impossible d’annuler une transaction réalisée en crypto-monnaie. En effet, une fois diffusée sur le réseau, si celle-ci est validée, elle sera répliquée de nœud en nœud et gravée pour toujours. Ceci lui donne un caractère irrévocable, ce qui est une bonne chose, car avec la vitesse à laquelle est diffusée la transaction, il pourrait être gênant de pouvoir l’annuler aussi rapidement. Ceci permettrait d’acheter un bien ou un service, d’attendre la confirmation de son expédition, et d’annuler son paiement.
  • Les tentatives de régulations sur ces monnaies sont vaines. Un état qui chercherait à établir la liste des revenus d’un citoyen pour lui réclamer des impôts pourrait se heurter à d’énormes difficultés, tant sur un plan technique que juridique. Il lui est en effet totalement impossible de faire geler un avoir, comme pourrait le réaliser une banque lors d’une suspicion de fraude ou de blanchiment. Un individu inquiété par l’origine de ses revenus pourrait aisément séparer son solde sur plusieurs centaines voire milliers de portefeuilles, rendant toute investigation fastidieuse et pratiquement impossible à démêler.

Comment obtient-on de la crypto-monnaie ?

Quelque soit la crypto-monnaie désirée, il existe deux façons de l’obtenir :

  • l’échanger contre une autre crypto-monnaie ou une monnaie traditionnelle
  • l’extraire (ou la « miner »)

L’échange

Pour l’échanger, il existe une multitude de plateforme d’échanges (appelés Exchange en anglais). Il suffit de chercher « Exchange » avec le nom de la monnaie qui vous intéresse pour trouver votre bonheur.

Les plateformes d’échange « Exchanges »

Évidemment, ces services ne sont pas gratuits, et chaque transaction se voit agrémentée de frais à payer (entre 0,01% et 5%). Dans l’ensemble, cela fonctionne comme une place d’échange classique. Vous devez faire un versement initial qui doit être confirmer par un nombre important de pairs (au moins 10) et vous pourrez ensuite faire vos achats. Des adresses de portefeuilles temporaires vous seront fournies, cependant, ne laissez pas de sommes importantes dormir sur ces comptes.

Attention aux annonces en ligne !

Par ailleurs, vous trouverez sur beaucoup de forums spécialisés, ou même sur des sites d’enchères en ligne, des annonces d’achat ou de vente. Si les tarifs sont souvent alléchants (vente en dessous du prix du marché, ou achat surévalué), il est important de se méfier de ces annonces ; en effet le caractère irrévocable d’une transaction en crypto-monnaie n’est pas compatible avec les moyens de paiement garantis par des banques ou des entreprises.

Ainsi, si je réponds à une offre d’achat d’une quantité importante de crypto-monnaie contre de l’argent réel, à un prix qui me semble intéressant, il est fort possible qu’une fois la transaction effectuée, la personne annule son paiement, ou dénonce un achat frauduleux. Les crypto-monnaies n’ayant pas vraiment la cote auprès des établissements traditionnels, il est fort probable que le paiement ne soit jamais honoré. Cette plainte sera d’autant plus valable qu’elle aura lieu quelques heures voire quelques minutes après la transaction, appuyant l’argument d’un achat non autorisé.

L’extraction « Mining »

Extraire une crypto-monnaie est une tâche fastidieuse, qui demande un investissement continu à mesure que la monnaie prend de la maturité. Certaines crypto-monnaies sont pré-extraites en partie, afin d’en distribuer les montants suivants des règles précises.

L’analogie avec les métaux précieux

La grande particularité des crypto-monnaies est qu’elles sont construites sur le modèle des métaux précieux :

  • Au tout début, personne ne les connait, et à fortiori, personne n’en veut. La valeur est donc nulle.
  • Les premiers prospecteurs s’y intéressent et en trouvent en relative abondance, puisque personne n’y a touché jusqu’ici.
  • Ceux-ci en parlent à leurs proches, et une fraction de ceux-ci vont s’y intéresser également, grossissant petit à petit le nombre de personnes concernées. Cette nouvelle ressource s’échange modestement car personne n’a conscience de sa rareté.
  • La popularité croissante provoque une fièvre qui incite chacun à extraire plus que ses pairs, accélérant ainsi l’appauvrissement des gisements.
  • La quantité de ressources faciles d’accès étant épuisée, il devient nécessaire de s’équiper en conséquence pour continuer l’enrichissement. De la même façon, la ressource devenant difficile à obtenir pousse les prix à la hausse.
  • De nouvelles techniques apparaissent, permettant de chercher plus loin et donc de ramener plus de ressources. Le prix de celles-ci freine les plus modestes à s’équiper. En même temps, ces techniques toujours plus performantes réduisent de façon exponentielle la quantité de ressources disponibles.
  • Une fois tous les gisements épuisés, cette ressource atteint une valeur élevée relativement stable.

Petit lexique du mineur débutant

l’empreinte « hash »

Le hash est le résultat d’un algorithme de somme de contrôle particulier. Cet algorithme permet de calculer une empreinte propre à une série de données. Ainsi, si on calcule deux fois l’empreinte pour la même série de données, celle-ci sera identique. Si on change ne serait-ce qu’un bit de ces données, quelque soit la taille, l’empreinte deviendra radicalement différente. Ceci rend totalement imprévisible le résultat de la fonction à la seule vue des données. Par ailleurs, il n’est pas possible de retrouver les données depuis une empreinte. Cette fonction est primordiale dans beaucoup de domaines en informatique (cryptographie, vérification d’authenticité, …).

Pour l’extraction, lorsque l’on réalise un hash, on calcule l’empreinte d’un ensemble de données, comprenant l’entête du dernier bloc établi, et des données arbitraires. Si ce hash est « gagnant » ( plus petit qu’une valeur cible « target »), alors un nouveau bloc est établi. Le reste des hashes est « jeté ».

L’extraction est donc une sorte de loterie, où on parie à chaque hash que le résultat sera inférieur à la cible.

le bloc « block »

C’est un ensemble de transactions, qui une fois que le bloc suivant est établi, valide définitivement les transactions qu’il contient. Un bloc est identifié par le hash « gagnant »

la cible « target »

La cible est un nombre dépendant de la difficulté du réseau. Celle-ci représente la valeur maximale d’un hash pour qu’il soit considéré comme « gagnant » et qu’un nouveau bloc commence. Plus la difficulté augmente, plus la cible sera petite.

la difficulté « difficulty »

Il s’agit d’un ajustement qui garantit une extraction à vitesse constante dans le temps. Plus il y a de hash, plus la probabilité qu’un hash « gagnant » soit trouvé rapidement augmente, et plus la difficulté augmente. Un peu comme pour la recherche de métaux précieux : plus on est nombreux à chercher au même endroit, et plus il est difficile d’en trouver.

La difficulté augmente généralement, mais peut aussi se réduire, lorsque le nombre de mineurs diminue.

la chaîne de blocs « blockchain »

La blockchain est la liste complète des blocs trouvés, rangés dans un ordre précis. Chaque blocs contenant les transactions, on peut ainsi déterminer l’historique et donc le solde de chaque compte de la crypto-monnaie.

le taux d’empreintes « hashrate »

Le taux d’empreintes permet de calculer les performances d’un équipement. Il existe différentes organisations pour extraire de la crypto-monnaie. La difficulté augmentant avec le nombre de mineurs, le hashrate doit suivre la cadence pour pouvoir rester profitable. Il est généralement exprimé en kilohash/s, megahash/s, gigahash/s voire terahash/s et exahash/s. En ordre de grandeur voici les performances que l’on peut attendre des différents équipements :

Équipement hashrate
Processeur 0-50 khash/s
Carte graphique 100khash/s – 1Mhash/s
Puce ASIC 300khash/s – 5Ghash/s

Si certaines monnaies sont encore au stade des cartes graphiques, d’autres sont déjà passées aux puces ASIC (Application Specific Integrated Circuit : circuit intégré pour application dédiée). Il s’agit de puces spécialement conçues pour l’extraction de crypto-monnaie. Celles-ci sont pour la plupart très chères, et ont donc eu pour effet d’exclure les mineurs les plus modestes.

un pool

Un pool est un rassemblement de mineurs dans le but de trouver des blocs plus facilement. Il existe différents types de pool, mais la plupart proposent de partager la crypto-monnaie issue de ces blocs au prorata de la quantité de hashes générés par chacun.

le round

Un round est une période entre deux blocs. Généralement, une difficulté s’applique à un round entier. L’ajustement de la difficulté permet d’assurer une durée globalement constante au round.

 

One thought on “Introduction aux crypto-monnaies”

  1. Excellent article. Complet, clair, sans les habituels pontifs qu’on lit partout (et qui sont souvent mensonger). Bref : à lire par tout le monde.

Laisser un commentaire

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