Merci beaucoup !
les clé publique (= les adresses bitcoin)
Alors ça, c'est un vrai plaisir de le lire ! Tout deviens plus simple à comprendre.
La phrase que tu sites est la plus précise:
Une adresse bitcoin est un hash SHA-256 dun hash RIPEMD-160 encodé en base58check dune clé publique.En fait, l'adresse Bitcoin n'est pas directement la clé public. Il arrive que l'on dise que l'adresse est la clé public par souci de simplification car l'adresse est effectivement calculée à partir de la clé public et dépend donc directement de celle-ci: Une clé public unique -> une adresse bitcoin unique.
Une adresse bitcoin est composée de 27 à 34 caractères choisi parmi les 58 possibles de l'encodage base58check (
https://en.bitcoin.it/wiki/Base58Check_encoding).
Pour déduire une adresse bitcoin à partir de là clé public, il faut appliquer l'algorithme suivant:
1: Calculer le hash de la clé public avec SHA-256
2: Calculer le hash du précédent hash avec RIPEMD-160
3: Ajouter la version du réseau au début du hash (0x00 pour les adresses "classiques")
4: Calculer le hash du résultat précédent avec SHA-256
5: Calculer un nouveau hash à partir du hash précédent avec SHA-256 (oui oui on fait bien deux hash SHA-256 à suivre)
6: Ajouter les 4 derniers octets du résultat précédent à la fin du résultat obtenu à l'étape 3 (le hash RIPEMD-160 avec la version ajoutée au début). On obtient l'adresse bitcoin sous forme binaire sur 25 octets.
7: Et enfin, convertir ce dernier résultat en base58check (cette conversion donne l'adresse telle qu'on peut la voir partout)
Quelques précisions:
-Les adresses bitcoin "classiques" commencent toujours par 1 (celles qui commencent par 3 sont des adresses multi-signatures) car l'étape 3 ajoute 00 au début de chaque adresse. Ce 00 converti en base58check donne 1. .
-L'adresse bitcoin à toujours une longueur de 25 octets. C'est la conversion en base58check qui donne une adresse qui contient entre 27 et 34 caractères (cela dépends de la valeur binaire de l'adresse).
Merci pour cette réponse plus que précise.