Author

Topic: Question sur les bitcoin-bash-tools de Grondilu (Read 884 times)

newbie
Activity: 12
Merit: 0
December 18, 2013, 01:41:46 AM
#4
Je ne peut que t'encourager a lire cette page de blog.
http://www.e-ducat.fr/bitcoin-2/securite-signatures-ecdsa/

Pour une fois que quelqu'un dit pas n'importe quoi , autant en profiter Smiley


Un grand merci a vous deux... Et lien bookmarké pour les longues soirées d'hiver (c'est-a-dire maintenant quoi ; )

legendary
Activity: 1918
Merit: 1190
Je ne peut que t'encourager a lire cette page de blog.
http://www.e-ducat.fr/bitcoin-2/securite-signatures-ecdsa/

Pour une fois que quelqu'un dit pas n'importe quoi , autant en profiter Smiley

legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
Je ne comprend pourquoi le "compressed" WIF fait un caractere de plus que le "uncompressed" WIF
C'est juste dû à l'encodage en base 58 (un peu modifiée à la sauce bitcoin) de ta clé privée (qui est une suite de 32 octets), c'est anecdotique

Je ne comprend pas pourquoi la "bitcoin address" fait la meme taille dans les deux cas ("compressed" et "uncompressed").
Là encore, c'est seulement dû à l'encodage de la clé publique (qui est une suite de 65(ou 33 si compressée) octets)
Adresse = HASH160(clé publique) = RIPEMD160(SHA256(clé publique))

Si je venais a poster le WIF publiquement, n'importe qui pourrait me voler ce qu'il y a dans mon wallet ?
Le 'X' et le 'Y' donne les coordonnées du point de base sur la courbe elliptique définie par le "secret exponent", c'est bien cela ?
Si oui, il y a-t-il un et un seul unique point de base pour un secret exponent ?
Oui, oui, oui

Enfin je ne parviens pas a utiliser le vanitygen : quoi que j'essaye il met "unexpected format for public point". Ou se trouve ce "public
point" et comment l'utiliser ?
Je peux pas t'aider pour ça, tu devrais aller sur le fil vanitygen

Maintenant il me reste a comprendre comment créer la "compressed public key"
La clé publique non compressée est 04+X+Y
De plus, dans la courbe elliptique secp256k1, il y a exactement deux points (ou zéro) pour une même coordonnée X
Et ces deux points ont des Y de parité différente
Du coup au lieu de décrire un point par (X et Y), on le décrit par (X, et le point des deux qui a un Y pair) ou (X, et le point des deux qui a un Y impair)
Si Y est pair la clé publique est 02+X et si Y est impair elle est 03+X

04+X+Y fait 65 octets alors que 02(03)+X ne fait que 33 octets, d'où le terme "compressed"
newbie
Activity: 12
Merit: 0
Bonjour a tous,

je me suis procuré le fichier Bash de grondilu ici (est-ce bien la bonne addresse ?) :

https://github.com/grondilu/bitcoin-bash-tools

et je lance ensuite newBitcoinKey et j'obtiens, par exemple :  (wallet que je ne compte pas utiliser bien évidemment)

Code:
$ newBitcoinKey
---
secret exponent:  0x50D7482BDF1A78D7A13891B8140B63E816932C2D5CB5AE71B0C6ADA102EA8B0F
public key:
    X:                    E4B3D6A60CE681D78755469A21E7C9C47B5EC8A9E8C94B04402152F81EBDAC86
    Y:                    E433A51EA8BA813AA30188A470C26C377C83307FCBE1688F133FFF232953DFD9
compressed:
    WIF:                  L5nQyXuQ5tQfe3RsxHxM7QtChA8DGxwHcWaPyhFZff51kaP1hH5g
    bitcoin address:      1H5jQZvAEiE4GkrUNeq88CZN973qRaTa5G
uncompressed:
    WIF:                  5KkpaCXuMbJbamWCYZPWUjZu3JUToDDke3d7ZnNRcwqwYf66781
    bitcoin address:      1MSd79pqTwJ9Nuo682HPppYkgMukc3vfJs

J'ai a présent quelques petites questions  Wink

Je ne comprend pourquoi le "compressed" WIF fait un caractere de plus que le "uncompressed" WIF et je ne comprend pas pourquoi la "bitcoin address" fait la meme taille dans les deux cas ("compressed" et "uncompressed").

Si je venais a poster le WIF publiquement, n'importe qui pourrait me voler ce qu'il y a dans mon wallet ?

Le 'X' et le 'Y' donne les coordonnées du point de base sur la courbe elliptique définie par le "secret exponent", c'est bien cela ? Si oui, il y a-t-il un et un seul unique point de base pour un secret exponent ?

Enfin je ne parviens pas a utiliser le vanitygen : quoi que j'essaye il met "unexpected format for public point". Ou se trouve ce "public point" et comment l'utiliser ?

Un exemple de ce que je fais mal :

Code:
... $   vanityAddressFromPublicPoint 185oZK4z2qp1g9a5MSdHsT6cNPabPCm84V "l"
unexpected format for public point

(edit: je pense que la "uncompressed public key" est simplement 04 + X + Y, qui donne 130 caracteres / hexdigits... Maintenant il me reste a comprendre comment créer la "compressed public key")
Jump to: