Bitcoin Forum

Local => Discussions générales et utilisation du Bitcoin => Topic started by: Pierre-Joseph Proudhon on October 18, 2013, 08:13:10 PM



Title: Lien qui relie la clé privée et la clé publique
Post by: Pierre-Joseph Proudhon on October 18, 2013, 08:13:10 PM
Je suis désolé, je ne suis ni informaticien, ni mathématicien donc je pose peut-être des questions à la con :
- Quel lien mathématique (s'il y en a un) lie la clé privée à la clé publique ?
- Comment le réseau fait-il pour reconnaître la signature numérique d'une transaction sans connaitre la clé privée ?


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: jackjack on October 18, 2013, 08:26:01 PM
Je suis désolé, je ne suis ni informaticien, ni mathématicien donc je pose peut-être des questions à la con :
- Quel lien mathématique (s'il y en a un) lie la clé privée à la clé publique ?
- Comment le réseau fait-il pour reconnaître la signature numérique d'une transaction sans connaitre la clé privée ?
- La clé publique est un point sur une courbe qui correspond à la clé privée (la clé privée est le nombre de fois qu'il faut multiplier le générateur de la courbe elliptique pour avoir la clé publique)
- C'est des maths rien de bien compliqué si on prend le temps de s'y pencher

Regarde les pages wikipedia sur les courbes elliptiques et les papiers sur les courbes elliptiques si c'est pas assez


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: Pierre-Joseph Proudhon on October 18, 2013, 08:44:50 PM
Regarde les pages wikipedia sur les courbes elliptiques et les papiers sur les courbes elliptiques si c'est pas assez

Merci, je vais me pencher là-dessus pour voir si j'y comprends ququ chose.


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: jackjack on October 18, 2013, 09:47:15 PM
N'hésite pas à poser des questions


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: Pierre-Joseph Proudhon on October 18, 2013, 10:08:33 PM
N'hésite pas à poser des questions

Merci. Je me suis renseigné sur l'utilisation des courbes elliptiques en cryptographie... c'est quand même un petit peu trop pointu pour moi.

Je vais prendre le problème autrement : Si j'ai bien compris, quand je fais une transaction, j'envoie au réseau le montant de cette transaction, ma clé publique, une signature obtenue avec ma clé privée et la clé publique du destinataire. Comment le réseau vérifie-t-il l'authenticité de ma signature pour être sûr que c'est bien moi qui possède cette paire de clés et les bitcoins qui lui sont associés ?


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: jackjack on October 18, 2013, 10:20:25 PM
Tu veux dire mathématiquement?
http://fr.wikipedia.org/wiki/Elliptic_curve_digital_signature_algorithm
http://www.e-ducat.fr/bitcoin-2/securite-signatures-ecdsa/


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: Pierre-Joseph Proudhon on October 18, 2013, 10:44:06 PM
Tu veux dire mathématiquement?
Je ne sais pas si c'est possible, mais si tu as une réponse plus littéraire (voire métaphorique) que mathématique, je crois que ça m'irait très bien !

Quote
http://www.e-ducat.fr/bitcoin-2/securite-signatures-ecdsa/
Merci pour ce lien. Je vais me pencher là-dessus.


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: jackjack on October 19, 2013, 12:22:03 AM
Je vois pas trop comment décrire ça
En tout cas ceci (les utilisations permises par les courbes elliptiques) est dû au fait que la multiplication de point n'est pas inversible: calculer 4*P est instantané mais retrouver P à partir de 4*P est impossible (hors faiblesse de la courbe)
Voir logarithme discret


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: Pierre-Joseph Proudhon on October 19, 2013, 10:00:43 PM
Je vois pas trop comment décrire ça
En tout cas ceci (les utilisations permises par les courbes elliptiques) est dû au fait que la multiplication de point n'est pas inversible: calculer 4*P est instantané mais retrouver P à partir de 4*P est impossible

Si je comprends bien, grâce à l'algorithme ECDSA, on peut vérifier l'authenticité d'une signature à partir de la clé publique, par contre on ne peut ni déduire une clé privée à partir d'une signature et d'une clé publique, ni générer une signature valide sans connaitre la clé privée correspondant à une clé publique donnée. Est-ce que j'ai bon ?


Title: Re: Lien qui relie la clé privée et la clé publique
Post by: Boussac on October 20, 2013, 10:28:59 AM
Je vois pas trop comment décrire ça
En tout cas ceci (les utilisations permises par les courbes elliptiques) est dû au fait que la multiplication de point n'est pas inversible: calculer 4*P est instantané mais retrouver P à partir de 4*P est impossible

Si je comprends bien, grâce à l'algorithme ECDSA, on peut vérifier l'authenticité d'une signature à partir de la clé publique, par contre on ne peut ni déduire une clé privée à partir d'une signature et d'une clé publique, ni générer une signature valide sans connaitre la clé privée correspondant à une clé publique donnée. Est-ce que j'ai bon ?
C'est bien ça.
Le principe de valider une signature avec une clé publique n'est pas propre à ECDSA: c'est  un principe général de ce qu'on appelle la cryptographie asymétrique, c'est à dire fondée sur l'utilisation de paires de clés (publique/privée).
Par exemple, PGP utilise le même principe.
Ce qui est particulier à ECDSA, c'est qu'on peut calculer la clé publique à partir de la clé privée (évidemment pas l'inverse).
Ce qui est particulier à bitcoin, c'est qu'on calcule une adresse bitcoin à partir d'une clé publique ECDSA (mais pas l'inverse).
On vérifie une signature bitcoin grâce à la clé publique mais ce ne n'est pas possible avec seulement l'adresse bitcoin de l'envoyeur.