You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Comprendre la [cryptographie sur courbe elliptique](https://arstechnica.com/information-technology/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/).
Obtenir un nombre aléatoire sur 256 bits (32 bytes), nommé `k`.
11
+
12
+
## Etape 2
13
+
14
+
Obtenir la clé publique tel que Q = kG où `G` est le générateur de Secp256k1 et `k` la clé privée.
15
+
16
+
La clé publique correspond aux coordonnés (x,y) concaténés et sérialisés en hexadémical pour donner : hex(x).hex(y).
17
+
18
+
## Etape 3
19
+
20
+
Hasher la clé publique sérialisée avec SHA256 et hasher le résultat avec Ripemd160.
21
+
22
+
## Etape 4
23
+
24
+
Ajouter un byte (network ID) au résultat de l'étape 3 tel que :
25
+
- 0x00 pour le mainnet
26
+
- 0x6f pour le testnet
27
+
28
+
## Etape 5
29
+
30
+
SHA256d sur le résultat de l'étape 4 : double hash. Récupérer les 4 premiers bytes du résultat. Ce sera le `checksum`.
31
+
32
+
## Etape 6
33
+
34
+
Ajouter le `checksum` à la fin du résultat de l'étape 4. C'est la proto adresse.
35
+
36
+
## Etape 7
37
+
38
+
Encoder la proto adresse avec Base58. C'est l'adresse publique résultante.
39
+
40
+
# Wallet Import Format
41
+
42
+
Le Wallet Import Format ou WIF est une méthode simple pour compacter une valeur codée en 256 bits, typiquement la clé privée `k` et la rendre utilisable plus facilement.
43
+
44
+
Note : il existe plusieurs formats WIP, ici un seul est évoqué et c'est le plus courant.
45
+
46
+
# Etape 1
47
+
48
+
Récupérer la clé privée `k`.
49
+
50
+
# Etape 2
51
+
52
+
Ajouter un byte (network ID) au début de la clé privée :
53
+
- 0x80 pour le mainnet
54
+
- 0xef pour le testnet
55
+
56
+
# Etape 3
57
+
58
+
Hasher le résultat de l'étape 2 avec SHA256d (double SHA256). Récupérer les 4 premiers bytes, c'est le `checksum`.
59
+
60
+
# Etape 4
61
+
62
+
Ajouter le `checksum` à la fin du résultat de l'étape 2.
0 commit comments