使用带有OAEP的RsaCng的不同标签和MGF1哈希函数

时间:2019-11-07 11:11:23

标签: c# .net hash rsa cng

我们必须解密使用RSA OAEP加密的密文,并且正在尝试使用RsaCng。密文是使用Java生成的,并且Java API允许您为标签和掩码生成函数(MGF1)指定不同的哈希函数。在这种情况下,第一种情况使用SHA-256,第二种情况使用SHA-1(是的,不是一个好主意,但是我们对此没有控制权。)

现在,根据我对RsaCng的了解,我只能指定一个哈希函数(使用RSAEncryptionPadding.OaepXXX),并且该函数将在两个地方都使用。这意味着我将永远无法解密密文。有什么办法可以使用CNG解决此问题?查看低级Win API C函数(BCryptDecrypt),看起来存在相同的限制。我相信BouncyCastle可以提供这种灵活性,但是由于与HSM集成的要求,我们不能使用BC。

谢谢您的帮助,

Dinis

0 个答案:

没有答案