Создание пары открытого/закрытого ключей RSA с помощью Bouncy Castle или .Net RSACryptoServiceProviderC#

Место общения программистов C#
Anonymous
Создание пары открытого/закрытого ключей RSA с помощью Bouncy Castle или .Net RSACryptoServiceProvider

Сообщение Anonymous »

Поэтому я немного повозился с .Net RSACryptoServiceProvider и Bouncy Castle, чтобы иметь возможность создавать пары ключей RSA, а затем и сертификаты X509.

Мне просто любопытно, знает ли кто-нибудь, есть ли какая-либо разница между этими двумя кодовыми блоками, которые, я думаю, делают то же самое, но чистая версия Bouncy Castle занимает гораздо больше времени.

.Net с надувным замком:

private const int RsaKeySize = 4096;
public static AsymmetricCipherKeyPair GetKeyPairWithDotNet()
{
using (RSACryptoServiceProvider rsaProvider = new RSACryptoServiceProvider(RsaKeySize))
{
RSAParameters rsaKeyInfo = rsaProvider.ExportParameters(true);
return DotNetUtilities.GetRsaKeyPair(rsaKeyInfo);
}
}


Надувной замок:

private const int RsaKeySize = 4096;
public static AsymmetricCipherKeyPair GetKeyPair()
{
CryptoApiRandomGenerator randomGenerator = new CryptoApiRandomGenerator();
SecureRandom secureRandom = new SecureRandom(randomGenerator);
var keyGenerationParameters = new KeyGenerationParameters(secureRandom, RsaKeySize);

var keyPairGenerator = new RsaKeyPairGenerator();
keyPairGenerator.Init(keyGenerationParameters);
return keyPairGenerator.GenerateKeyPair();
}

Вернуться в «C#»