TripleDES 16字节不起作用

Ndy*_*Ndy 5 .net c# cryptography tripledes .net-core

我正在尝试将一些项目迁移.net framework 4.5.net core.尝试迁移旧crypting/decrypting方法时会出现问题.该方法是一个TripleDES带有MD5哈希的密钥.MD5哈希总是返回16个字节.这个效果很好.net framework 4.5,但.net coreSystem.Security.Cryptography.Algorithms TripleDES只接受24个字节的密钥长度.在4.5中它接受16个字节或24个字节.有没有我可以尝试的变通方法?

后来编辑:初始化的时候到了TripleDes类调用新TripleDesImplementation这是这个.在此声明CNG不支持128位密钥.

Dam*_*ver 8

不幸的是,Framework 4.5没有使用TripleDes实现的开源版本.

但是,假设它遵循Triple DES的正常约定,当它提供两个密钥时它重用第一个密钥作为第三个密钥,您应该能够获取现有的16字节密钥并重复前8个字节以形成24个字节键,它应该产生与之前获得的相同的结果.