Attention Pavé
Voici dans les grandes lignes presque tout ce que vous devez savoir sur les wallets.
Pour aller plus loin, je vous invite à lire: http://chimera.labs.oreilly.com/bo [...] /ch04.html
Avant toute chose, voici queleques informations clés/règles/bonnes pratiques à garder en tête:
-L'adresse est dérivée de la clé publique elle même dérivée de la clé privée dérivée elle même, le cas échéant d'un Seed
-La seule chose que vous puissiez/devriez communiquer, c'est l'adresse*
-Il vaut mieux utiliser les adresses (dérivées des clés publiques pour recevoir des coins) qu'UNE seule fois**
*Dans certains cas bien précis (Wallet HD) communiquer une clé publique permettrait à la personne disposant de l'information d'en dériver les autres clés publiques et donc de connaitre votre inventaire en coins sur toutes ces clés et leurs dérivées
**En effet, utiliser la même adresse à plusieurs reprises est possible techniquement sauf que ça diminue l'anonymat du système, mais surtout, la votre.
Si vous utilisez plusieurs fois la même adresse de réception, n'importe qui:
-Aura plus de chances de rapprocher votre identité de cette adresse
-Connaitra très facilement le montant de coins déposés à cette adresse
-Pourra enrichir une base de liaisons entre adresses et donc entre individus. A l’ère de l’intelligence artificielle et du taux de croissance du crime informatique, c’est une précaution simple à prendre
)
Utiliser une nouvelle adresse à chaque transaction permet donc de brouiller les pistes et assurer votre anonymat, aidera à protéger votre patrimoine et celui des autres, peut devenir vite très compliqué
Il existe 2 grandes types (globalement) de Wallets, la seconde étant un léger twist de la première mais ajoutant énormément d'avantages:
-Wallet Aléatoires
C'est la base. Le wallet (ou vous mêmes) génère un nombre aléatoire dont il dérive une clé privée. De cette clé privée; il pourra dériver une clé publique puis une adresse.
Fin de l'histoire.
Dans ce cas, appliquer la règle de l'utilisation unique d’adresse devient vite compliqué car il faut gérer un grand nombre de clés privées sans aucun rapport entre elles.
Avantage:
Si vous perdez une clé privée ou si elle est compromise, les autres resteront safe (toutes choses égales par ailleurs, évidemment, on considère que les clés ne sont pas stoquées au même endroit)
Inconvénient: vu que les oeufs ne sont pas dans le panier et qu'il n'ont rien en commun, ça fait vite beaucoup de paniers, à mémoriser, gérer, maintenir, protéger...
-Hierarchical Deterministic Wallets
Plutôt que de choisir aléatoirement chaque clé privée à chaque fois, le Wallet va choisir aléatoirement un Seed (très souvent une série ORDONEE de mots, 12 ou 24)
Ce SEED, facilement mémorisable (écrit, imprimé, gravé, tatoué, RFIDé, mémorisé...) sert de base à la génération de clés privées en pagaille.
Le système est assez simple:
On indique le SEED et un indice (prenons 0) et paf, on obtient une clé privée K0
On la refait avec l'indice 1 ->K1
Ainsi de suite.
Et donc, avec simplement ce seed et un peu de discipline (prendre les indices dans l'ordre et non pas au hasard) on peut générer une infinité de clés privées dérivées les unes des autres.
Chacune pourra être utilisée pour une transaction unique de réception et une transaction unique de paiement.
Avantage:
-On peut construire une arborescence infinie et très sophistiquée (je vous passe tous les détails de ce que cela permet en termes de gestion/sécurité/... de comptes, sous comptes, tout en préservant l'intégrité de la blockchain et la sienne (enfin celle du patrimoine)
-Les manipulations sont très simples pour une machine et ça tombe bien on en a tous une sous la main
-On peut retrouver tout un wallet perdu et les bitcoins qui y sont attribués uniquement avec le Seed
Inconvénient:
-On décale tout le risque/sécurité vers le SEED. En effet, si celui ci est compromis... il est facile de retrouver TOUTES les clés privées qui en ont été générées
Note: quasiment tous les wallets que j'ai pu tester sont HD. C'est tellement plus simple à gérer.
Choix du wallet:
Tout dépend de ce que vous souhaitez en faire (stock à long terme, portefeuille pour dépenses courantes, moyen de paiement matérialisé, cadeau tonton)
Cold Storage:
On génère des clés offline, sur un device muni des algos qui vont bien. On a vu que les clés sont déterminées au hazard, un chimpanzé jouant aux flechettes les yeux bandés peut tout à fait vous générer vos petites clés. Faut quand même lui apprendre les maths.
Pour vous amuser: www.bitaddress.org
Avantage:
-accessible à tous, vous choisissez votre méthode d'aléa, votre soft pour la partie algorithmique, tableur excel, bref, ce que vous voulez
-Peut prendre diverses formes en particulier... une forme physique (bout de papier). Utile si votre sockage le plus sécurisé est un coffre fort, ou si vous souhaitez m'envoyer par la poste 200 BTC (mon adresse postale en MP)
Inconvenient:
-Le risque zero n'existant pas, il ne vous reste plus qu'à imaginer ce qui pourrait détruire ou vous déposseder de votre clé privée (ou seed): incendie, Gwantanamo, Ocean thirty one, Alzeihmer....
Il existe aussi des clés usb (pardon pour le raccourci), type Ledger Nano S. ça coute un peu de sous mais ça a l'avantage de simplifier la gestion des adresses et clés privées. Il prend en charge plusieurs types de coins. Il est quand même bien fichu niveau sécurité, mais il a les mêmes inconvenients que les autres colds storages. En gros, il n'a pas les inconvenients du hot storage tout en ayant ses avantages
Hot storage:
Site en ligne ou Soft sur votre ordinateur/smartphone (le tout connecté à internet, sinon, on retombe sur du cold storage)
Des sites en ligne, des app smartphone et des softs vous permettent de générer et stocker vos jeux de clés. Certains sont agrémentés d'interface de suivi de portefeuil (au sens investissement), voir même d'un exchange.
Avantage:
-Easy for newbies
-Les plus récents ont des interfaces léchées (exodus) et sont souvent très intuitifs
Inconvenients:
-Les sites en lignes: ils peuvent se faire hacker ou les gérants même de ces sites peuvent décider de se faire la male avec vos clés
-Vos ordis connectés ainsi que votre smartphone peuvent se faire voler, hacker ou faire défaut
En définitive, il n'y a pas de solution ultime et idéale pour tous les cas de figure.
En me creusant le cerveau, je me suis rendu compte que, une fois les précautions de bases prises, soit on a tendance à SUR évaluer les risques et se prendre le choux façon Fort Knox alors qu'en fait, tout ce qu'on risque c'est de quoi acheter un café au comptoir, soit, les choix sont très limités -> Cold Storage type ledger Nano.
Ainsi:
-Je me contenterai du wallet de mon exchange principal pour la partie courante échangeable en FIAT. La sécurité n'est pas top mais Bitstamp a une ancienneté et une réputation suffisantes pour lui faire confiance à ce stade de ma prise de risque
-J'aurai un hot storage pour la partie courante en coins (stocker de petits montants de coins en vue de les dépenser). Ce Wallet sera portable pour des raisons évidentes. Il me permettra en outre de recevoir de petits montants en coins.
-Enfin, un jour peut être, j'aurai un cold storage sous une forme indeterminée. Le plus probable sera l'aquisition d'un truc du genre Nano Ledger. Voici pourquoi:
Vous savez comment on génère des clés. Vous vous rendez compte qu'il est quand même bien plus simple de le faire à l'aide d'une machine (app, site offline pour rester cold). Et c'est justement là le problème: si vous générez une clé privée à l'aide d'un soft installé sur un device, que cette clé soit stockée sur ledit device ou non (seulement affichée le temps de la noter) vous êtes "condamnés" à ne plus jamais reconnecter ce device à Internet au risque de compromettre le coté "Cold" de votre wallet. (un petit malin pourrait avoir inffecté votre device pour récupérer la clé au moment de sa génération, la stocker, et se l'envoyer dès qu'une connection est détéctée). Nous sommes d'accord, nous atteignons des nivaux de parano démesurés quand on parle de broutilles (je ne met pas de montant car c'est relatif à chacun), mais si les montants deviennent significatifs, je trouve que ce n'est pas si débile que ça. En conclusion, le seul cold storage qui cumule les avantages de tous les autres wallets est le type ledger nano s (ou autres):
-HD wallet
-Multi currencies
-Device TOUT LE TEMPS OFFLINE
-Recoverable
Vous êtes ravis de cette conclusion? Eh bien détrompez vous. Vous n'avez toujours pas trouvé de façon ultime de mémoriser le seed.
Note: certains wallets vous permettent de surprotéger votre seed avec des authentification à 3 facteurs, je n'ai pas tout bien compris mais en gros, c'est comme si vous donniez 1/3 des mots à 2 autres personnes que vous. Un peu comme les coffres forts à deux clés dans les films d'action des années 80-90