Wallet et Protection 2021

Wallet et Protection 2021

Comprendre les Wallets et leurs constitutions

Le but de ce paragraphe n’est pas de vous expliquer tout sur la création d’un wallet mais de vous donner , sans technique abusive, une information claire et précise sur ce que sont et ne sont pas les wallets, comment ils sont construits et surtout leurs dangers . Il n’y a aura aucun conseil (choix) et aucune recommandation quant au choix d’un wallet , pour la simple raison que les évolutions dans ce domaine ferait que cet article serait obsolète dés son écriture si je m’aventurai à vous donner des conseils. Je me bornerai donc à vous donner les éléments constitutifs de ce que j’appellerai un bon wallet.
Une très mauvaise information circule sur le Web entre des jargons utilisés à mauvaise escient. Nous allons donc tenter d’expliquer avec des mots simples, une redoutable complexité qui font que les wallets sont pratiquement inviolables et que la sécurisation de ceux-ci reléve de votre propre sécurité

Les différends type de Wallets

Il existe des portefeuilles MONO currency, ou plutôt Mono Blockchain et les portefeuilles multi Blockchain.

En effet, si vous ne maitrisez pas la technologie Blockchain, comprenez qu’une Blockchain n’est qu’une technologie de “gestion” de bases de données ou les données sont empilées les unes sur les autres avec aucune possibilité de suppression ou de modification. C’est pour cela que vous pouvez lire des expression comme “gravé dans la Blockchain”, car cette gravure sera encore persistante dans quelques millions d’années si la Covid ou autre “saloperie” ne font pas disparaitre la race humaine.

Vous l’aurez donc compris, la blockchain est une technologie, et il n’existe pas UNE blockchain mais des Blockchain.
On utilise la technologie Blockchain pour écrire des données dans un registre (base de données) , ces données étant généralement publiques (mais l’on peut rendre une blockchain privée) et permettre de certifier que les écritures qui la compose ne sont et ne seront jamais falsifiées.
La principale utilisation de la Blockchain est aujourd’hui les crypto mais elle commence (la technologie) a être de plus en plus utilisée dans la gestion de plein d’activités (Assurances, traçabilité de produits, cadastre, documents officiels etc etc.)

Pour “graver” une opération dans la Blockchain, il faut que celle-ci soit ‘certifiée”, ‘confirmée”, et que ces confirmations sont effectuées par une multitude d’ordinateurs , ce qui a un coût et que donc chaque opération induit des frais (minimes voire très minimes) et qu’une Blockchain est donc associé à un “jeton” (Crypto monnaie) pour pouvoir fonctionner.(Dans 95% des cas car tout cela évolue vite mais n’est pas le sujet de ce jour).

Dernière notion à savoir sur la Blockchain, certaines blockchains “permettent” à d’autre jetons (“Crypto”) d’utiliser leur blockchain pour effectuer des transactions.
La blockchain la plus usité en de début d’année 2021 est la Blockchain de l’Ethereum. Cette blockchain (ce n’est pas la seule mais la plus connue) permet également d’effectuer des “contrats intelligents” (Smart Contract).Les smart contracts, ou contrats intelligents, sont des programmes informatiques irrévocables, qui exécutent un ensemble d’instructions prédéfinies lors d’un évènement.
Afin de faire fonctionner au mieux ces smart contracts et de leur permettre de communiquer entre eux, les développeurs ont décidé de mettre en place des standards, ces derniers sont appelés ERC – Ethereum Request for Comment.

Beaucoup de crypto monnaies utilise le protocole ERC20 pour se propager. Les frais versés lors de transaction le sont toujours dans le jeton “propriétaire” de la Blockchain utilisée. Par exemple si j’initialise une transaction d’un jeton appelé GLAM , je vais payer des frais en ETH puisque ce dernièr utilise la blockchain ERC20 (ethereum).

J’espère que tout cela est clair pour vous car la compréhension de cette partie vous guidera sur le choix d’un Wallet.

En début de ce paragraphe j’écrivais : “Il existe des portefeuilles MONO currency, ou plutôt Mono Blockchain et les portefeuilles multi Blockchain.”

En effet , vous avez des portefeuilles qui ne gèrent que l’ethereum (et les jetons qui sont associés) , d’autres que le BTC , d’autres que le Tron etc,
D’autres portefeuilles vont vous permettre de gérer les principales Cryptos mais pas les jetons qui y sont gérés et enfin d’autres vont vous permettre de gérer une grande partie de vos cryptos.

"hot wallet" et "cold wallets

Enfin, il existe des “hot wallet” et des “cold wallets”. Le hot wallet étant toujours connecté à Internet et le Cold Wallet étant utilisé lors des transactions…Pour finir sur ce sujet, toutes les transactions d’une blockchain ou d’un jeton sont consultables (si la blockchain est publique bien entendu) à l’aide de logiciel online dédié que l’on appellent des explorateur de Blockchain (Blockain explorer) en voici quelques-uns:

Cliquez pour aller sur    https://etherscan.io/ un nouvel onglet va s'ouvrir

Cliquez pour aller sur    https://scope.klaytn.com/ un nouvel onglet va s'ouvrir
Cliquez pour aller sur    https://eosflare.io/ un nouvel onglet va s'ouvrir
Cliquez pour aller sur    https://steemblockexplorer.com/ un nouvel onglet va s'ouvrir

Cliquez pour aller sur https://tracker.icon.foundation/ un nouvel onglet va s'ouvrir

Cliquez pour aller sur https://blockscout.com/poa/core un nouvel onglet va s'ouvrir

Cliquez pour aller sur https://explorer.poa.network/poa/xdai/bridged-tokens un nouvel onglet va s'ouvrir

Cliquez pour aller sur https://tronscan.org/#/ un nouvel onglet va s'ouvrir

Cliquez pour aller sur https://www.blockchain.com/nl/explorer un nouvel onglet va s'ouvrir

Mais qu'est-ce qu'un Wallet?

Au risque de choquer beaucoup de gens qui écrivent sur la blockchain et les wallets, un Wallet (portefeuille) est , à mon humble avis, une appellation trompeuse. Un wallet ne devrait pas se présenter comme un portefeuille mais comme un porte clefs. Un wallet serait plutôt un keychain. Ceci étant comme il est d’usage courant d’appeler cela un wallet, je vais donc vous expliquer comment cela fonctionne. Quelque soit le wallet que vous utilisez,, son fonctionnement sera toujours le même. Vous l’aurez compris mais il est bon de le préciser, un “Wallet”( Dieu que je n’aime pas ce terme impropre) ne STOCKE pas vos Cryptos. Vos cryptos sont stockées sur la blockchain à laquelle elles appartiennent. Ce registre (base de données) qu’est la Blockchain est visible par tous . Alors comment marche le processus. Imaginons que vous choisissiez un Wallet qui vous permet de faire des opérations sur le BTC, l’ETH, l’EOS , le XLR et XLM. Que celui que vous choisirez face plus ou moins n’a pas d’importance, c’est le principe que je vous dévoile, de façon générique. Je vais simplifier le plus possible cette section pour que la compréhension soit totale pour tous, je ferais peut être un article pour expliquer les arcanes de tout cela. A partir de la clefs Privée, sont créées la Clef Publique et l’adresse Blockchain , celle que vous copiez de votre wallet pour la donner à toutes les personnes qui veulent vous envoyer des cryptos(petits veinards).
Wallet BTC

Deux possibilité sont offertes :

  • On Copie l’adresse avec le bouton “Copy Address
  • On fait scanner Le QR code à l’émetteur.

Cette adresse ne permet pas de “dépenser” de la crypto mais uniquement d’en recevoir.
Elle a été générée par une Clef Privée qui, elle seule, permet à votre Wallet de SIGNER , AUTHENTIFIER la paternité de la demande avec l’aide de la clef publique Nous voyons bien que ce que l’on appelle Wallet n’est en fait qu’un porte Clefs.

Nous voyons également de marqué (la dernier phrase) : Quand vous recevez du BTC , une nouvelle Adresse va être générée.. Explication juste après

Qu'est-ce qu'une clé privée?

Une clé privée est une forme sophistiquée de cryptographie qui permet à un utilisateur d’accéder à sa crypto – monnaie . Une clé privée fait partie intégrante des “Coins” , et sa composition de sécurité aide à protéger son propriétaire contre le vol.

Comprendre la clé privée

Lorsqu’il s’agit de crypto – monnaie , un utilisateur reçoit généralement une adresse publique et une clé privée pour envoyer et recevoir des pièces ou des jetons. L’adresse publique est l’endroit où les fonds sont déposés et reçus. Mais même si un utilisateur a des jetons déposés dans son adresse, il ne pourra pas les retirer sans la clé privée unique. La clé publique est créée à partir de la clé privée via un algorithme mathématique complexe.
Cependant, il est presque impossible d’inverser le processus en générant une clé privée à partir d’une clé publique.
La clé privée peut prendre plusieurs formes différentes, généralement représentées sous la forme d’une série de caractères alphanumériques, ce qui rend la tâche difficile pour un pirate informatique.
La plupart des utilisateurs représentent leurs clés de portefeuille au format d’importation de portefeuille, qui comporte 51 caractères. Considérez une adresse publique comme une boîte aux lettres et la clé privée comme la clé de la boîte. Le facteur, et n’importe qui d’ailleurs, peut insérer des lettres et des petits paquets par l’ouverture de la boîte aux lettres. Cependant, la seule personne qui peut récupérer le contenu de la boîte aux lettres est celle qui possède la clé unique.
Il est donc important de garder la clé en sécurité car si elle est volée ou obtenue sans autorisation, la boîte aux lettres peut être compromise.
Un Wallet stocke donc la clé privée d’un utilisateur. Lorsqu’une transaction est initiée, le logiciel du portefeuille crée une signature numérique en traitant la transaction avec la clé privée.
Cela confirme un système sécurisé puisque la seule façon de générer une signature valide pour une transaction donnée est d’utiliser la clé privée.
La signature est utilisée pour confirmer qu’une transaction provient d’un utilisateur particulier et garantit que la transaction ne peut pas être modifiée une fois diffusée.
Si la transaction est modifiée, même légèrement, la signature changera également.
Si un utilisateur perd sa clé privée, il ne peut plus accéder au portefeuille pour dépenser, retirer ou transférer des pièces .
Si il perds ses clefs privées, il est ruiné

Tout cela est bien joli mais…

Vous venez de comprendre comment toutes les transactions fonctionnaient et elles fonctionneront toujours comme cela.
Néanmoins des améliorations considérables ont vues la naissance des portefeuille “Hierarchical Deterministic (HD)”.
Ainsi, comme vous le savez peut-être, chaque fois que nous nous inscrivons à un portefeuille blockchain, une longue liste de mots (sensibles à la séquence) qui doit être gardée secrète nous est présentée.
Cette Phrase est ce qu’on appelle la SEED (Graine en Français) ou appelée plus généralement phrase mnémotechnique ou  mnemonic phrase.
Ces portefeuilles( HD )peuvent potentiellement avoir un nombre infini d’adresses de comptes et de clés publiques et  privées. L’interface utilisateur de votre portefeuille peut choisir de n’en présenter que 1, 10 ou 20. Je ne rentrerai pas plus dans le détail sur cette technologie que j’expliquerai peut être lors d’un nouvel article mais sachez donc que l’idée maitresse est la suivante :
Une SEED , générant une Clef Privée Maitre déclinant, elle, théoriquement une infinité de “SOUS CLEFS” (Clefs filles)
Wallet BTC

Pour aller plus loin

Je vous invite à aller sur le site : https://iancoleman.io/bip39/et a vous amuser  à voir la construction des adresses avec une SEED. Vous pourrez même tester une SEED qui vous appartient et a contrôler que la première adresse trouvée correspond bien a une de vos adresses de votre portefeuille. Vous verrez également qu’il existe plusieurs protocoles le plus courant étant le bit 44.
ll vous suffit de choisir le nombre de mots que vous aller utiliser , de choisir la crypto et ensuite d’appuyer sur le bouton : Generate a random mnemonic: words, or enter your own below

Si vous voulez vérifier des choses vous appartenant , alors ne le faites pas en ligne, mais pour voir la magie mnémotechnique en action en utilisez l’un des outils les plus badass célébrés par la communauté blockchain créée par Ian Coleman ; Convertisseur de code mnémonique (également connu sous le nom d’outil BIP39). Cet outil est le plus couramment utilisé pour dériver des adresses de blockchain à l’aide d’une phrase mnémotechnique.

⚠️ Je vous recommande vivement de télécharger l’outil et de l’utiliser hors ligne.
Cet outil ne doit pas être utilisé en ligne. Il existe un nombre incalculable d’escroqueries en ligne qui tentent de voler votre phrase mnémotechnique. ⚠️

Pour utiliser le convertisseur de code mnémonique hors ligne, téléchargez le fichier bip39-standalone.html à partir d’ ici . Ouvrez ce fichier HTML dans n’importe quel navigateur. Pour rester prudent, assurez-vous que vous n’êtes pas connecté à Internet lorsque vous l’utilisez.

Soyons gentil et résumons!

Si un wallet vous propose une SEED Alors vous êtes sur un HD Wallets(donc il intègre une possibilité presque infinie d’adresses et il peut les gérer avec une adresse Maitre).
Sous forme brute, un mnémonique n’est rien d’autre qu’un grand nombre choisi au hasard.
Ce nombre peut être de 128 bits, 160 bits, 192 bits, 224 bits ou 256 bits.
Le mot «au hasard» est ici essentiel car nous ne voulons pas créer un mnémonique prévisible (car cela conduirait à une mauvaise sécurité).
Le nombre total de mnémoniques de 12 mots pouvant être générés est de 2048 ^ 12.
Une fois le Mnémonique obtenu , il suffit de le transformer avec une table.

Cette table de recherche (officiellement connue sous le nom de liste de mots) peut être trouvée ici . L’ordre des mots ne doit pas être modifié car chaque mot est lié en dur à une valeur d’index.

Cette liste de mots existe pour l’anglais, le japonais, le coréen, l’espagnol, le chinois (simplifié), le chinois (traditionnel), le français et l’italien.

Ces mots constituent une phrase mnémotechnique lisible par l’homme.

Pour aller plus loin (Pour ceux que cela passionne).
Quand on a ce grand nombre qu’est le mnémonique, on lui applique des transformations, opérations qui permettent d’obtenir un nombre “contrôlable” (c’est à dire que l’on peut vérifier que ce nombre a été construit de manière valable et contrôlée) . Imaginons la représentation de ce nombre en hexadécimal : acdc3e927940a645c51d059dc476a0ec

L’étape suivante consiste à appliquer l’ algorithme SHA256 sur le nombre aléatoire de 128 bits. Cela nous donnera un hachage de 256 bits :a5f1cc6ff28228b130455a7eb05f5367f53c9bce9443393e35cbf5a9f8f9a570

Après avoir ajouté une somme de contrôle , transformé ce nombre en Binaire (une suite de 0 et de 1), on le divise en groupes de 11 BITS et l’on obtient quelque chose de ce type :

10101100110
11100001111
10100100100
11110010100
00001010011
00100010111
00010100011
10100000101
10011101110
00100011101
10101000001
11011001010

Chacun de ces groupes transformés en base décimale donne :

10101100110  = 1382
11100001111  = 1807
10100100100  = 1316
11110010100  = 1940
00001010011  = 83
00100010111  = 279
00010100011  = 163
10100000101  = 1285
10011101110  = 1262
00100011101  = 285
10101000001 = 1345
11011001010 = 1738

Ces chiffres deviennent les index des mots de la liste consultable ici 

et donc notre SEED devient :
10101100110  = 1382   –>protect
11100001111  = 1807   –>tide
10100100100  = 1316   –>piece
11110010100  = 1940   –>venue
00001010011  = 83       –>apart
00100010111  = 279     –>carpet
00010100011  = 163     –>begin
10100000101  = 1285   –>party
10011101110  = 1262   –>oval
00100011101  = 285     –>castle
10101000001 = 1345    –>pool
11011001010 = 1738    –>summer

Votre SEDD est donc :  protect tide piece venue apart carpet begin party oval castle pool summer

Vous savez donc comment se constitue une SEED et vous aurez compris que si les Wallets sont bien programmés, alors cette SEED est remplaçable par les mots des langues présentes :

Donc en Français , cette SEED serait :
10101100110  = 1382   –>opinion
11100001111  = 1807   –>spécial
10100100100  = 1316   –>neurone
11110010100  = 1940   –>typhon
00001010011  = 83       –>allouer
00100010111  = 279     –>brebis
00010100011  = 163     –>atroce
10100000101  = 1285   –>murène
10011101110  = 1262   –>moelleux
00100011101  = 285     –>brioche
10101000001 = 1345    –>nuptial
11011001010 = 1738    –>sédatif

SEED en Français :
opinion spécial neurone typhon allouer brebis atroce murène moelleux brioche nuptial sédatif

Ces deux SEED permettent de reconstituer le même Wallet.

Une SEED vous permet d’être sur d’avoir un HD Wallet. Ce qui veut dire que vous êtes multi-adresses par crypto.
La même SEED permet de constituer des adresses de Crypto différentes (BTC, ETH etc)
La SEED ne dépends pas du Wallet qui l’utilise (si la programmation a été respectueuse des standards (nous verrons que cela n’est pas toujours le cas).
Ce qui veut dire que l’on peut utiliser notre SEED sur plusieurs Wallet différends
Si l’on perds sa SEED, alors nous sommes ruinés.
La SEED NE DOIT JAMAIS ETRE MONTREE SUR UN ECRAN, QUEL Qu’il SOIT

Cet article a 4 commentaires

  1. COUDERC Jacques

    Vraiment Excellent !!!

    Merci cher Philippe !

  2. Francmade

    C’est passionnant! Merci. Tu nous apprends à démarrer les Jets privés en cryptographie. Je vais m’y mettre pour vraiment maitriser la procédure.

  3. Henriette

    Merci infiniment pour cette formation détaillée

    J’essaie d’intégrer, d’assimiler au mieux

  4. Merci pour ces informations d’une grande richesse.
    Habitué des cryptos, j’apprends encore grâce à cet article.
    Il est évident que ces informations sont issus d’une recherche approfondie et que nous avons la chance d’y avoir accès.

    Une notion importante à retenir ici, c’est que la valeur de la crypto et son adresse publique associée, sont INSCRITES DANS LA BLOCKCHAIN et que le seul moyen pour le propriétaire d’y accéder pour en faire usage de manière autonome est d’en avoir la clé privée dont vous êtes le seul propriétaire. Cette clé privée n’est inscrite nulle part (et donc n’est pas inscrite dans la blockchain) ! A partir de la clé privée, vous êtes capable de gérer votre crytpo. A vous donc de bien la sécuriser.

    La sécurisation du SEED de votre portefeuille est donc tout aussi important car il s’agit de votre porte-clés (publique et privé).

Laisser un commentaire