Я много искал в Интернете, но сомневался в криптографии с открытым и закрытым ключом RSA.
Когда я проверил сайт MSDN, я попробовал это
RSACryptoServiceProvider rsaEncryptDecrypt = new RSACryptoServiceProvider();
byte[] privateKeyByte = rsaEncryptDecrypt.ExportParameters(true).Modulus;
byte[] publicKeyByte = rsaEncryptDecrypt.ExportParameters(false).Modulus;
string privateKey = Convert.ToBase64String(privateKeyByte);
string publicKey = Convert.ToBase64String(publicKeyByte);
Открытый ключ строки и закрытый ключ одинаковы !!! Это правильно? Я имею в виду, как струны могут быть одинаковыми? Разве не должно быть двух разных ключей?
Пожалуйста, поправьте меня, если я ошибаюсь. Я смущен !
Заранее спасибо!
ОБНОВЛЕНИЕ
Я ошиблась по параметрам,
Но потом: когда я увидел
Как я могу получить строковое значение? потому что мне нужно сохранить его в App.config и получить к нему доступ, когда захочу. Я имею в виду, что мне нужно хранить открытый и закрытый ключи как в App.config.
ОБНОВЛЕНИЕ2
Извините, я только что использовал свойство ToXmlString экземпляра RSACryptoServiceProvider. Получил закрытый ключ и открытый ключ.