我需要创建一个RSACryptoServiceProvider及其参数来解密/解密数据。
但我明天需要使用相同的密钥再次/解密数据 将它们导出并存储在文件中会很棒但是......没有机会写文件(他们不希望我这样做)。所以我想我会通过自己从系统中检索的键和参数创建自己的RSACryptoServiceProvider。我有像processorID,Mac和东西这样的数据。
所以这是我的问题。
我可以使用一些自定义字符串来创建RSACryptoServiceProvider并在明天重复获取相同的密钥吗?
AFAIK,RSACryptoServiceProvider参数的值为p,d,n和stuff。但我也听说他们需要特定的素数 我将不胜感激任何帮助。
感谢名单
答案 0 :(得分:0)
不确定您是否在c#中执行此操作,但如果您有pfx文件,则可以执行此操作:
var certBytes = System.IO.File.ReadAllBytes(@"path\to\certificate.pfx");
var privateAndPublicKeyCert = new System.Security.Cryptography.X509Certificates.X509Certificate2(certBytes, "password");
// pfx files that have a private key should be protected by a password
var privateKeyCSP = (System.Security.Cryptography.RSACryptoServiceProvider)privateAndPublicKeyCert.PrivateKey;
很明显,你必须要照顾安全方面。喜欢不要硬编码密码。
您将使用存储在文件中的值初始化两个ChryptoServiceProvider ...