SQLiteCodeFirst
SQLiteCodeFirst copied to clipboard
Make SQLiteCodeFirst FIPS compliant
This PR makes SQLiteCodeFirst FIPS compliant, needed to operate on US federal or many state government systems as it is a requirement for software vendors.
SHA512.Create() will return a new SHA512Managed instance by default. But, if FIPS restriction is enabled, it will return an FIPS-compliant instance.
What is FIPS compliance? FIPS stands for Federal Information Processing Standards and are US Government standards that provide a benchmark for implementing cryptographic software
SHA512CryptoServiceProvider uses the FIPS 140-2 validated (FIPS = Federal Information Processing Standards) Crypto Service Provider (CSP) while SHA256Managed does not.