mate nekdo zkusenosti s implementaci asymetricke kryptografie v c# zalozene treba na RSA?
Ma predstava je vytvorit jendoduchou appku, kde vygeneruji dva klice, verejny a soukromy a dale bude fungovat, ze pujde zasifrovat zprava soukromym a rozsifrovat verejnym klicem a naopak. Funguje takto RSA, nebo je to trochu slozitejsi? Pro jednoduchost predpokladejme, ze distribuci klicu mam vyresenou a certifikacni autority nebudu pouzivat, jen vlastni klice :)
idealne by to melo byt takto jednoduche:
CryptoProvider c = new CryptoProvider(some_settings);
Key k1, k2;
c.CreateKeyPair(out k1, out k2);
string s = "secret message";
string encrypted = k1.Encrypt(s); // idealne aby encrypted byl v base64
string decrypted = k2.Decrypt(encrypted);
if (s == decrypted)
{
// it works!
}