我是 RSA 加密方法的新手...我需要验证来自设备的传入签名。问题是,我必须使用 delphi IDE,而 delhi 没有实现一些 RSA 库。我在网站上找到了 FGInt 包:http://submanifold.be/ 。我下载了它(RSA.zip),但我一无所知 - 我不知道如何将我的公钥模数和指数放入此代码中。
情况如下: 我有来自设备的签名,我需要将其与计算的消息(挑战)进行比较(验证)。我还有一个带有嵌入式公钥的 X509 证书。我可以从这些证书中提取这个公钥。我还可以从公钥中提取模数和指数。我的问题是,我不知道如何将获得的模数和指数放入 FGInt 包的 RSAVerify 过程中。模数为 128 字节(我将其作为十六进制数字的数组)长,指数值为 65537。
有人可以帮助解决我的问题吗,如何将模数和指数值插入到 FGint 包中的 RSAVerify 过程中?
最佳答案
如果您需要 RSA 函数并且在 Windows 上运行,请使用 MSCRYPTO API。信息在这里:http://en.wikipedia.org/wiki/Microsoft_CryptoAPI在这里:http://msdn.microsoft.com/en-us/library/windows/desktop/aa380255(v=vs.85).aspx
如果您打算在美国境外使用您的应用程序,则将自定义或第三方加密逻辑合并到您的应用程序中将使您的应用程序落入美国导出限制的“软件弹药”类别。您必须申请导出许可证,让美国政府代表等审查您的代码,否则将面临巨额罚款,甚至可能因导出违规而受到刑事指控。
如果您的应用程序链接到 MSCRYPTO 库,则您无需执行任何操作。 Microsoft 负责为 Windows 附带的 MSCRYPTO 库获取导出许可。
关于delphi - 如何将RSA公钥的模数和指数插入FGInt包中(http ://submanifold. be/),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12934580/