【发布时间】:2018-03-12 12:05:55
【问题描述】:
有没有办法使用 RSACryptoServiceProvider 和自定义指数生成 2048 RSA 密钥对?
new RSACryptoServiceProvider(2048); // = 65537 always
例如,我想将指数设置为65535,但硬编码的值似乎是65537。
我环顾四周,但找不到任何信息。
我正在尝试使用RSACryptoServiceProvider 生成新密钥对,而不是导入现有密钥。
我知道导入一个已经存在的键,我可以定义模数、指数和其他因素。
如果不可能,我有什么选择?
【问题讨论】:
-
NIST 需要 65537:nvlpubs.nist.gov/nistpubs/SpecialPublications/… 良好的背景资料is here
-
@HansPassant 我正在将客户端/服务器从 c++ 移植到 c#,客户端当前仅使用 65535 来接收我不确定何时会更新所有客户端变体的公钥。跨度>
-
嗯,ImportParameters() 是关键。请注意,答案中的代码可能对 Reverse() 帮助太大。
-
@HansPassant 抱歉。我不明白,不会改变已经生成的密钥对的指数简单地杀死它吗?
标签: c# rsacryptoserviceprovider