I used Rijndael algorithm to encrypt/decrypt my data. But it is not FIPS compatible. I want to change it to another one. Could you please give me a suggestion that which one is better? Better means:
- FIPS compatible
- High security level
- This algorithm should came from dotnet 2.0 framework which provided by Microsoft.
Thanks
-Jamebo
You can use AES 256, many vendors use it and got their FIPS certification.
The thing is that is not enough to use the ‘proper’ encryption algorithm in order to be FIPS compliant, you need to subject your system for testing by the NIST.
Edit: someone already did a test on all .NET 2.0 & 3.5 providers to see if they are FIPS compliant.
long story short:
Under .NET 2.0 the following are supported:
DESCryptoServiceProvider
DSACryptoServiceProvider
RSACryptoServiceProvider
TripleDESCryptoServiceProvider