我的任务是想出一种方法将我们公司的数据库更改为符合FIPS 140-2标准。我们主要是微软商店,目前有一个加密库,利用RijndealManaged来执行我们的加密/解密。涉及到多种环境,所以无论我想出什么解决方案,都需要在独立机器上对同一个消息进行加密/解密(所以我不认为我可以使用依赖OS的AESCryptoProvider等.net库)C#FIPS 140-2加密
我对加密技术没有深入的理解或背景,但是我已经完成了对这一点的研究,但我知道AES仍然是符合FIPS 140-2的算法。我的问题是:是否有更新的.NET AES Managed模块,我可以在这些环境中使用FIPS 140-2兼容? AESManaged模块是否只需要我以特定方式(即256个密钥大小和128个块大小)对其进行配置,以符合FIPS标准?
我不能使用第三方库。
不要浪费时间与FIPS-140。这是太复杂和太昂贵的“事情”。 – i486
问题是使用符合NIST认证的FIPS兼容算法。微软只有NIST认证OS内置的算法(因为认证是一个昂贵/漫长的过程)。任何不使用操作系统算法的框架(.Net或其他)都不符合NIST认证的FIPS标准。因此,本质上,RijndealManaged符合FIPS(与OS中的算法完全相同),但它不是NIST认证的。 – Kevin
请参阅http://stackoverflow.com/a/939106/613130 – xanatos