Bonjour,

Je débute en cryptographie, et doit réaliser une signature correspondant aux paramètres suivants :
- utiliser l'algorithme ECDSA
- la hash doit se faire en SHA 256
- la courbe utilisée doit être la prime 192 r1

J'ai découvert la classe ECDsaCng dans le Framework 3.5, mais je ne sais pas comment lui préciser le type de courbe voulue.

Voilà ce que j'ai fait pour le moment :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
RNGCryptoServiceProvider RNGCSP = new RNGCryptoServiceProvider();
 
Byte[] data = new Byte[48];
 
RNGCSP.GetBytes(data);
 
SHA256Managed sha = new SHA256Managed();
 Byte[] hash = sha.ComputeHash(data);
 
Array.Resize(ref hash, 24);
 
ECDsaCng ecdSa = new ECDsaCng();
// pas de p192
ecdSa.HashAlgorithm = CngAlgorithm.ECDsaP256;
 
Byte[] signHash = ecdSa.SignHash(hash);
 
Console.WriteLine(ecdSa.VerifyHash(hash, signHash));

Quelqu'un saurait-il comment faire ?

Merci !