我一直致力于使我们的 .NET 应用程序符合 FIPS,并且发现Managed
Cryptography 类(例如AESManaged
)不符合 FIPS。我已经阅读了其他几篇关于哪些类符合要求的文章和问题,例如C# AES 算法何时符合 FIPS?和http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/e0b4493f-6e20-4b75-a118-6b6e5d26a2a6。看起来 CryptoServiceProvider 类符合 FIPS,但托管类不符合。
我只是想知道是否有人可以解释CryptoServiceProvider
类和Managed
类之间的区别?如果有人可以解释为什么这些CryptoServiceProvider
类符合 FIPS,但托管类不符合,那么我可以向我的老板解释为什么我必须重写我们的加密方法。它们在底层有根本不同吗?还是 MS 只是没有对托管课程进行 NIST 认证?如果Managed
类只是包装CryptoServiceProvider
类,那么为什么这些Managed
类不自动符合 FIPS 标准?如果我编写一个类来将符合 FIPS 的类包装成我自己的更易于使用的类,我的软件是否不再符合 FIPS?
谢谢。