Signature électronique ou double RSA

Résolu
cs_mikevkb Messages postés 24 Date d'inscription samedi 8 décembre 2007 Statut Membre Dernière intervention 16 mars 2010 - 14 mars 2010 à 19:58
cs_mikevkb Messages postés 24 Date d'inscription samedi 8 décembre 2007 Statut Membre Dernière intervention 16 mars 2010 - 16 mars 2010 à 08:19
Bonjour,
pour mes cours je dois réaliser un prog. qui permet à deux personnes (X & Y) de s'échanger des messages cryptés et authentifiés par RSA...
Pour crypter le message on emploi la clé secrète de X, et pour l'authentifier on emploi la clé publique de Y.
Y applique au message sa clé secrète, puis la clé publique de X.
Exemple:
X:
clé publique (e=107, n=4453);
clé privé (d=323);
Y:
clé publique (e=5, n=247);
clé privé (d=173);
M (message):
M = 88 (code ascii de X)

X1:
M'=(88^323)%4453= 1932
X2:
M''=(1932^5)%247= 242
X envoi M'' à Y
Y1:
M'''=(242^173)%247=203
Y2:
M''''=(203^107)%4453=2596

Pour savoir si le message est authentique M'' & M'''' devraient être identique?
Je ne comprends pas comment utiliser l'authentification par RSA!

Un peu d'aide siouplé?

Merci!

2 réponses

cs_47 Messages postés 197 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 20 février 2013 1
14 mars 2010 à 22:05
Bonjour,

une idée


Pour X on a PuX sa clé public, PrX sa clé privée et nX (=p*q)
Pour Y on a PuY, PrY et nY

on va prendre le cas
X code son message (88 pour reprendre tes données) puis l'envoi à Y
X envoi l'authentification à Y

Pour l'authentification, X va faire un hash du message envoyé, hash(88) 7 (c'est un exemple), il va coder son hash avec sa clé privé d'ou signature 7^323 [4453] = 3921, X envoi 3921 à Y

Y a recu 88 (le message une fois décodé) et 3921 la signature, en utilisant la clé public de X, il va retrouver la valeur 7 (3921^107 [4453] = 7) ce qui permet de savoir que c'est bien X qui a envoyé le message
la démonstration du fonctionnement de la signature se trouve sur internet (utilise le théoréme du reste chinois si mes souvenirs sont bons)

on peut se passer du hash du message (pour faire plus simple) en codant la clé public de X avec sa clé privée
107^323 [4453] = 1256
1256^107 [4453] = 107

en espérant que l'exemple est suffisamment bien expliqué

bonne soirée
3
cs_mikevkb Messages postés 24 Date d'inscription samedi 8 décembre 2007 Statut Membre Dernière intervention 16 mars 2010
16 mars 2010 à 08:19
Merci bcp,
j'ai utilisé la méthode où on crypte la clé public...
0