几天来,我一直试图在 C++ 中获得与此 C# 代码等效的代码,但没有成功。
这是我的 C# 代码:
RSAParameters rsaParams = new RSAParameters();
rsaParams.Modulus = someByteArray;
rsaParams.Exponent = someByteArray1;
rsaParams.D = someByteArray2;
rsaParams.DP = someByteArray3;
rsaParams.DQ = someByteArray4;
rsaParams.P = someByteArray5;
rsaParams.Q = someByteArray6;
rsaParams.InverseQ = someByteArray7;
using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider())
{
rsa.ImportParameters(rsaParams);
byte[] encryptedData = rsa.Encrypt(toEncrypt, false);
}
我只想获得相同的确切结果,但使用 C++(跨平台)。我查看了许多库/类,但它们似乎并不合理。首先,Crypto++ 非常棒,但我想要的只是 RSA,所以在我看来,拥有他们所有的散列/加密/其他算法只是一种浪费。我找到了这个类,我认为它很好,因为它只是 RSA,而且非常小。问题是,参数的名称与 C# 的名称不同,或者它不支持它。我觉得我不应该仅仅为了实现它就必须了解每个参数在 RSA 中的含义,因为我只想在这里完成一个简单的任务。谢谢。