Sujet de Grand Oral Cryptomonnaie en Maths
Grand Oral cryptomonnaie et les maths : si vous avez décidé de passer le Grand Oral sur le thème des cryptomonnaies…. Vous êtes au bon endroit ! Ce tutoriel en français va vous donner quelques pistes pour aborder le sujet des cryptomonnaies au Grand Oral du bac. Élèves de terminale, je vais vous aider pour le GO du baccalauréat !
Quelques remarques préliminaires au sujet du Grand Oral du Bac
Table des matières
- 1 Quelques remarques préliminaires au sujet du Grand Oral du Bac
- 2 Grand Oral cryptomonnaie et blockchain – introduction
- 3 Sujet de Grand oral cryptomonnaie : qu’est-ce qu’une blockchain ?
- 4 Proof Of Work – Grand Oral Cryptomonnaie
- 5 Comment fonctionne une transaction dans la blockchain ?
- 6 Les nœuds de la blockchain
- 7 Cryptographie – RSA
- 8 Conclusion au sujet Grand Oral cryptomonnaie
Pour commencer, l’année passé j’avais répondu à des interrogations de lycéens en terminale à propos du sujet de Grand Oral « peut-on prévoir les cours de bourse avec les maths ». Puis, cette année, je propose, en plus, un sujet Grand Oral lié aux cryptomonnaies.
Avertissement sur le sujet de Grand Oral
Tout d’abord, sachez que je ne suis ni prof de maths, ni prof tout cours. Si j’ai « fait » Maths Sup et Spé, mes souvenirs sont vagues.
Ainsi, vous devez vous référer à votre cours et faire vos propres recherches. En effet, je vais vous indiquer quelques pistes, mais ne prenez pas ce que j’écris ou dit pour argent comptant.
De plus, ma proposition est purement personnelle. Ainsi, elle ne vous garantir une bonne note.
Regardez ma vidéo sur ce sujet :
Comment vous organiser ?
J’ai essayé de raconter une histoire. Vous êtes libre de réutiliser ce que vous voulez. Ou pas. J’ai mis en gras les notions importantes. Revoyez votre cours d’algèbre et essayer de faire le lien avec le sujet.
Enfin, révisez de façon à pouvoir répondre à des questions. Ne parlez que de ce que vous maîtrisez.
Mes recommandations pour bien passer l’épreuve du Grand Oral
Encore une fois, n’étant pas forcément au courant du déroulement de l’épreuve du Grand Oral, prenez mes conseils avec des pincettes.
Toutefois, je vous ai listé un certain nombre de recommandations dans mon premier article sur le GO. Cliquez ici pour voit ces recommandations. En effet, inutile de les répéter ici.
Grand Oral cryptomonnaie et blockchain – introduction
Tout d’abord, dans votre sujet de Grand Oral Cryptomonnaie il vous faut une introduction. Ainsi, ne soyons pas trop original. En effet, il faut parler du Bitcoin : le roi des cryptomonnaies.
Premièrement, souvenez-vous toujours qu’il faut raconter une histoire. Donc, voici le début de votre histoire.
La crise des subprimes
2007-2008 c’est la crise des subprimes. Un individu dont l’identité est encore inconnue, sous le pseudonyme « Satoshi Nakamoto« , se dit : « comment protéger son argent de ces crises folles ? »
Ayant quelques notions de cryptographie (profitez-en pour ressortir la définition) il crée le Bitcoin en 2009. Une monnaie virtuelle sécurisée basée sur la cryptographie. Les cryptomonnaies étaient nées.
Éléments fondateurs des cryptomonnaies
Ensuite, l’idée géniale de Satoshi est de se baser sur une blockchain construite de façon à ce qu’il soit très difficile de corrompre le système. Voir ma vidéo sur la blockchain.
Toutefois, le sujet n’est pas simple et je vais tenter de l’aborder de manière didactique. Enfin, je pense qu’il faut que votre sujet de grand oral cryptomonnaie aborde les notions suivantes :
- hashage
- proof of work
- minage
- surjection
- problème des généraux byzantins
- double dépense
- Attaque des 51%
Avec cela, ce sera déjà pas mal.
Pourquoi la blockchain ?
Rappelez aussi les avantages d’une blockchain :
- Les transactions inscrites sur la blockchain sont infalsifiables. Elles y sont gravées comme dans le marbre.
- La blockchain est décentralisée : pas d’entité comme une banque qui peut dicter sa loi.
- On peut créer des applications (DAPP pour Distributed Application) et des contrats intelligents (Smart Contracts) dans la blockchain. Voire des mondes (Metaverse)
- La DEFI (Finance décentralisée) réduit le nombre des intermédiaires et donc le coût des transactions.
Vous pouvez donc parler, lors de votre épreuve de Grand Oral cryptomonnaie de toutes ces nouveautés que peuvent apporter les cryptomonnaies. C’est un nouveau paradigme.
Sujet de Grand oral cryptomonnaie : qu’est-ce qu’une blockchain ?
Tout d’abord définissons ce qu’est une blockchain. C’est une chaîne de blocs. Mais des blocs de quoi ? De données. Que l’on appelle payload. Ou charge utile. Généralement ce sont des transactions entre personnes. Paer exemple des échanges de Bitcoin entre deux personnes.
Ainsi, un bloc contient un certain nombre de transactions à enregistrer (de manière définitive et sécurisée) dans la blockchain.
Comment sont reliés les blocs de la blockchain ?
Ainsi, si l’on parle de chaîne, c’est que chaque bloc est relié à un autre bloc dans la chaîne. Chaque bloc est un maillon.
Un bloc contient :
- son numéro de bloc
- le payload (charge utile) : les transactions
- un horodatage (date et heure, minutes, secondes, etc)
- le hash du bloc précédent
- son hash.
Pour mieux comprendre comment sont liés les blocs, et apprendre ce qu’est un Merkle Tree, lire cet article.
Le tout premier bloc du Bitcoin s’appelle Genesis.
Sujet de Grand Oral Cryptomonnaie et fonction de hashage
Enfin, veuillez noter qu’il est important de parler de cette fonction de hashage. Cette notion de hash vient de la cryptographie. La science du chiffrement (crypto signifie « caché).
Un hash est une fonction qui à une chaîne hexadécimale d’une longueur quelconque (caractères et chiffres) associé une et une seule autre chaîne hexadécimale de longueur fixe.
Sur ce site vous pouvez vous amuser à générer de tels hash. Le Bitcoin utilise un algorithme de hash appelé SHA256. Prononcer Chat 256.
SHA = Secure Hash Algorithm. Créé par la NSA.
Remarque : SHA256 est une déclinaison du SHA2, le successeur du SHA1. SHA1 est réputé comme pas assez sécurisé.
Exemples de hash
Voici les hash SHA256 de Bonjour et bonjour.
Sha256(Bonjour) = 9172e8eec99f144f72eca9a568759580edadb2cfd154857f07e657569493bc44
Sha256(bonjour) = 2cb4b1431b84ec15d35ed83bb927e27e8967d75f4bcd9cc4b25c8d879ae23e18
Comme vous pouvez le voir, les chaînes générées sont (toujours) de même longueur et totalement différentes alors que les deux mots ne diffèrent que de la première lettre !
Un hash :
- est de longueur fixe (64 caractères pour le SHA256).
- diffère beaucoup si la chaîne d’origine change juste un peu.
- évite les collisions.
- est déterministe (produit toujours le même résultat avec le même input).
Le hash SHA256 prend en compte des chaînes de caractères en input d’une longueur jusqu’à 2^64. Ce qui semble correspondre au nombre estimé d’atomes dans l’univers !
Collisions de hash
Dans l’exemple j’ai utilisé le mot bonjour. Il est court. Mais on utilise en général des textes beaucoup plus longs que la longueur du hash généré.
Il est donc inévitable qu’il y ait des collisions :
- deux textes différents fournissent le même hash.
En effet, le hashage est surjectif.
Il faut donc définir une fonction de hashage qui limite les collisions. SHA256 permet 2^256 combinaisons (1,16 x 10^77). Ce qui est suffisant.
Pourquoi un hash ?
Le hash sert à définir une empreinte unique pour le bloc. Ainsi, le bloc suivant est lié au précédent par le hash de ce dernier (voir schéma plus haut).
Ainsi, la moindre modification du bloc N modifie son hash. Le bloc N+1 n’est plus relié au bloc N puisque le hash du bloc N a changé.
Il faudrait modifier tous les blocs de la chaîne
Par conséquent, un faussaire ou un hacker qui voudrait modifier un bloc devrait modifier tous les blocs suivants ! C’est difficile. Et nous allons voir pourquoi.
Remarque pour animer votre présentation
Vous pouvez préparer une petite maquette de chaîne de blocs avec des bouchons de liège et des crochets à rideau. Chaque bouchon a un crochet mâle et un crochet femelle. Utilisez de petits rectangles de papier ou de carton et des punaises pour ajouter sur chaque bouchon le payload et le hash.
Proof Of Work – Grand Oral Cryptomonnaie
En effet, pour valider un bloc, il faut fournir un certain travail. C’est ce que l’on appelle le Proof Of Work (preuve de travail).
Ainsi, valider un bloc et le rattacher à la blockchain, requiert la résolution d’une énigme cryptographique.
Or, valider cette énigme cryptographique nécessite de gros calculs informatiques. En effet, ces gros calculs ont besoins de :
- puissance électrique (cela coûte en électricité)
- puces informatiques, les GPU (Graphical Processor Units), forts coûteuses. Ce sont les cartes graphiques que les gamers utilisent. En fait les mineurs utilisent des ordinateurs spécifiques, plus puissants encore.
Valider un bloc, on dit miner, coûte assez cher. Les mineurs sont récompensés en Bitcoin. Vous pouvez regarder ce lien pour plus de détail.
Comment fonctionne l’énigme cryptographique ?
En fait, l’algorithme de la blockchain impose une difficulté de minage. Par exemple, il faut que le hash généré commence par un certain nombre de zéros…
Pour y arriver, le mineur doit effectuer plusieurs calculs de hash. C’est cela qui prend du temps et consomme de l’énergie.
En fait, pour calculer le hash, on doit inclure un nonce. Le nonce est un numéro qui s’incrémente chaque fois que l’on recommencer le calcul du hash. Ce nonce permet de modifier le hash.
Enfin, lorsque le hash généré satisfait aux conditions (un certain nombre de zéros au début), le minage a réussi. Mais pour arriver à un hash satisfaisant, il faudra en calculer un grand nombre !
Récompense de minage et rapidité de transaction
Depuis le bitcoin, d’autres cryptomonnaies sont beaucoup plus rapides. Le nombre de transactions bitcoin par seconde n’est que de 7. Par exemple, le réseau Visa peut en traiter jusqu’à 56 000 (2000 en moyenne, en fait). En effet, ce nombre limité est un des défauts du Bitcoin.
Enfin, il faut avoir de la puissance de calcul et être rapide. En effet, c’est celui qui trouve le premier un hash satisfaisant qui remporte la récompense.
Un problème écologique
Ainsi, il faut beaucoup de puissance de calcul pour miner du bitcoin. Cela pose un problème écologique car cela consomme beaucoup d’électricité. Ainsi, les mineurs transportent leurs machines dans les pays où l’électricité n’est pas chère.
Le PoW n’est donc pas adopté par toutes les cryptomonnaies. Certaines demandent moins d’énergie. Mais c’est une autre histoire.
Mais une garantie de sécurité
Toutefois, revenons à notre chaîne. Un hacker qui voudrait modifier un bloc de la blockchain devrait modifier tous les blocs suivants (à cause du hash). Cela coûterait bien trop cher en énergie.
Mais avant d’aller plus loin, voyons plus en détail comment fonctionne la blockchain.
Comment fonctionne une transaction dans la blockchain ?
Dans votre sujet Grand Oral cryptomonnaie on peut vous poser des questions sur les transactions. Alors, voici un site pour comprendre.
En gros, si Sophie veut envoyer deux bitcoins à Marc, elle va utiliser son wallet.
Un wallet
Un wallet, ou portefeuille, est une adresse dans le réseau de la blockchain. On peut y accéder directement depuis des logiciels comme le wallet Metamask qui est une extension à installer dans votre navigateur. Mais on peut aussi utiliser un wallet physique (une sorte de clé USB) ou un site centralisé comme Binance (regardez mon tuto sur Binance).
Dans un wallet on peut stocker des adresses de plusieurs réseaux de plusieurs blockchains.
Pour créer une adresse on doit définir :
- une clé privée (à garder secrète)
- une clé publique (contenue dans l’adresse que l’on donne pour recevoir des cryptos).
Le réseau
Sur une blockchain il a généralement plusieurs réseaux. Le principal, appelé MainNet. Et des réseaux de test (Testnet)pour les développeurs. Un développeur peut obtenir des coins poru faire des tests auprès d’un faucet.
Transaction
Sophie va se connecter à son wallet et entrer l’adresse publique (voir chiffrement asymétrique RSA) de Marc. Elle va ensuite lui envoyer les bitcoins.
Une transaction va donc contenir l’adresse de l’émetteur, l’adresse du récepteur et le montant de BTC.
Un bloc regroupe plusieurs centaines de transactions.
Confirmation
Une transaction doit être confirmée par la création d’un bloc la contenant et rattaché à la blockchain. Plus des blocs sont ajoutés, plus la transaction est confirmée. En général, sur BTC il faut 6 confirmations. Pour les petits montants, c’est moins. Pour les très gros, c’est plus.
Ainsi, vous l’avez compris, plus le nombre de blocs ajoutés ultérieurement est grand, plus il est coûteux à un éventuel hacker de falsifier la chaîne et les transactions contenues.
Les nœuds de la blockchain
Donc, la blcokchain est une chaîne de blocs. Mais le truc, c’est qu’elle est répliquée sur des milliers, voire millions de serveurs (appelés nœuds) partout dans le monde. Et chaque serveur a sa propre copie. Vous suivez ?
C’est que la blockchain est décentralisée. En effet, il n’y a pas une endroit unique où les « comptes » sont stockés, comme à la banque. Chaque nœud (serveur) a une copie. Vous pouvez en avoir une aussi sur votre PC… Mais elle pèse plus de 360 Go !
Mais, alors, comment être certain qu’un nœud a la bonne version de la chaîne ?
Le problème des généraux byzantins et le Grand Oral cryptomonnaie
Tout d’abord, ce problème des généraux byzantins est sympa à présenter lors de l’épreuve du Grand Oral Cryptomonnaie.
Ainsi, des généraux byzantins assiègent une ville. Leurs camps sont séparés et il ne peuvent communiquer que par des messagers. Pour vaincre la ville ils doivent établir un plan de bataille commun. Si un des généraux fait autrement que prévu, ils perdent.
Or, les messagers peuvent être capturés ou être des traitres.
Comment donc faire en sorte que tous les généraux aient le même plan ?
Voir ce site.
Solution avec le consensus de la blockchain
L’algorithme de la blockchain utilise un consensus qui peut prendre différentes formes.
Par exemple, dans le Bitcoin, la solution est :
- la chaîne la plus longue (sur l’ensemble des nœuds) est la chaîne valide.
C’est donc le mineur qui a le plus de puissance qui a raison.
Comme les mineurs sont récompensés en bitcoins pour leur minage, ils ont intérêt à ce que tout se passe bien.
Ainsi, l’algorithme de la blockchain prévoit des échanges entre les nœuds. Et ils s’accordent tous sur la chaîne la plus longue.
Une transaction sur la blockchain n’est vraiment validée que lorsque plusieurs blocs sont ajoutés.
Utiliser un explorateur de blockchain
Par exemple, vous pouvez utiliser un explorateur de blockchain comme ce site. Par ailleurs vous pouvez avoir des infos sur une cryptomonnaie via le site Coinmarketcap.
Double dépense – Pourquoi voudrait-on modifier un bloc ?
Mais, alors, pourquoi quelqu’un voudrait modifier un bloc ? Eh bien, pour dépenser deux fois le même argent. En effet, les blocs contiennent des transactions. Un agent mal intentionné pourrait passer deux fois des transactions avec les mêmes bitcoins.
C’est le fameux problème de la double dépense. Voir ce lien.
Dans le cas du bitcoin, ce genre d’attaque (de hacker) est résolu (théoriquement) par le fait que celui qui a la plus longue gagne. La plus longue chaîne 🙂 ! C’est ce que j’ai expliqué plus haut.
Attaque des 51%
Plus globalement, si quelqu’un possède plus de 50% de la puissance de calcul de la blockchain, il peut modifier la chaîne comme il veut. Puisque c’est lui qui aura la chaîne la plus longue. On appelle cela l’attaque à 51%. Consultez wikipedia.
Avec Bitcoin, il y a tellement de nœuds, le calcul nécessaire est tellement important, que ce genre d’attaque est improbable.
Cryptographie – RSA
Le SHA256 est complexe à calculer. Vous pouvez, lors de votre épreuve de Grand Oral cryptomonnaie, montrer un exemple de chiffrement RSA tel que développé dans ce livre. On utilise le petit théorème de Fermat.
Ainsi, vous pouvez disgresser sur le chiffrement, les clés privés – publiques. Je vous laisse revoir vos cours. Soyez certain de maîtriser le sujet, cela peut être posé comme question.
Conclusion au sujet Grand Oral cryptomonnaie
Enfin, pour conclure, vous pouvez rappeler l’importance de l’algèbre dans la cryptographie (théorèmes de Fermat, de Gauss, de Bézout, par exemple). Et de la cryptographie dans la vie moderne :
- Paiements par carte.
- HTTPS des sites internet (pour cacher le contenu des échanges).
- la cryptomonnaie.
- etc.
Par ailleurs, vous pouvez indiquer que Bitcoin consomme beaucoup d’énergie. Et que d’autres cryptomonnaies ont adoptés d’autres algorithmes moins consommateurs.
Par exemple :
- Ripple qui utilise non pas le Proof Of Work mais un protocole d’accord distribué
- EOS consomme 65000 fois moins que BTC et utilise un Proof Of Stake.
- Stellar avec un système de vote fédéré
- Mais aussi Solana, Cardano, Tezos, voir cette page.
Enfin, j’espère que cela vous aura été utile pour préparer votre épreuve de Grand Oral cryptomonnaie.
Pour voir tous mes articles liés au Grand Oral, cliquer ici.
Merci à vous. Partagez et regardez mes vidéos !
Illustrations : canva
Comments ( 4 )