我使用TripleDESCryptoServiceProvider类写了一个3DES加密的方法。在使用16byte全F的密钥时会抛出异常,提示该密钥为弱密钥!
但是这个全F的密钥是上游厂商提供的,不能更改。我本来打算继承TripleDESCryptoServiceProvider,然后重写isWeakKey的方法来阻止它判断是否为弱密钥,结果发现TripleDESCryptoServiceProvider是不能继承的。
我就想问一下,有没有什么方法可以屏蔽掉若密钥检查,或是使用另外的方式来进行3DES加密
你改一下 .net framework 的源码就可以了,自己做一个 TripleDESCryptoServiceProvider。源码网上有的。