Salve, sto cercando di creare un sistema che mi encripti una certa stringa, una password ad esempio, e che in un secondo momento la decripti per utilizzarla.

Ho trovato questo esempio:

codice:
System.Security.Cryptography.RSACryptoServiceProvider Provider = new System.Security.Cryptography.RSACryptoServiceProvider();

byte[] encrypted = Provider.Encrypt(System.Text.Encoding.UTF8.GetBytes("Hello World!"), true);
string decrypted = System.Text.Encoding.UTF8.GetString(Provider.Decrypt(encrypted, true));
L'esempio trasforma la stringa in un array di byte e poi lo ritrasforma correttamente in stringa.

Il problema è che se io encripto e salvo l'array da qualche parte, in un secondo momento riprendendolo e cercando di descriptarlo mi risponde picche, questo perché i parametri RSA cambiano ad ogni esecuzione.

La mia idea è crearmi dei parametri RSA fissi che valgono per sempre all'interno del mio applicativo, ma provando a modificare gli array di byte delle varie proprietà dei parametri al momento dell'utilizzo mi dice Firma non valida.

Avete qualche suggerimento su come creare dei parametri fissi a mano?

Grazie!