簡體   English   中英

c#如何從使用PRNG生成的隨機數生成RSA密鑰對

[英]c# How to generate RSA Key pair from Random Numbers generated using PRNG

我已經使用RNGCryptoServiceProvider生成了隨機數,下一個要求是生成可以用於加密/解密目的的私有,公共RSA密鑰對。

如何使用該隨機數構造RSAParameters對象,因為可以導入RSA參數以創建RSACryptoServiceProvider對象,該對象最終將用於加密原始數據。

這就是我使用BouncyCastlelink將隨機數轉換為私鑰/公鑰對的方式

byte[] btRandomNumber = new byte[1000000];
        using (RNGCryptoServiceProvider r = new RNGCryptoServiceProvider())
        {
            r.GetBytes(btRandomNumber);
        }

int RsaKeySize = 1024;

        Org.BouncyCastle.Security.SecureRandom secureRandom = new Org.BouncyCastle.Security.SecureRandom(btRandomNumber);
        var keyGenerationParameters = new Org.BouncyCastle.Crypto.KeyGenerationParameters(secureRandom, RsaKeySize);
        var keyPairGenerator = new Org.BouncyCastle.Crypto.Generators.RsaKeyPairGenerator();
        keyPairGenerator.Init(keyGenerationParameters);
        Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair keyPair = keyPairGenerator.GenerateKeyPair(); 

歡迎進行任何更正或其他方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM