tipos informatica funciones encrypt ejemplos desencriptar decrypt c# .net cryptography md5 invalidoperationexception

informatica - md5 c# encrypt decrypt



¿Existe un algoritmo de hash alternativo para MD5 para sistemas habilitados para FIPS? (3)

Cuando aplica el cumplimiento de FIPS en la configuración de la política de seguridad de Windows, está afirmando que solo va a utilizar algoritmos de cifrado y hash certificados por FIPS. MD5 no es uno de estos algoritmos hash aprobados, y es por eso que se lanza la excepción.

La solución es simple: elija un algoritmo de hashing diferente. .NET Framework ofrece muchas otras opciones en el espacio de nombres System.Security.Cryptography . Seleccione uno de la familia de algoritmos SHA. No puedo imaginar ninguna razón por la que tendría que usar MD5 en lugar de una de las alternativas.

Cada vez que trato de usar MD5 en una máquina con Windows XP que tiene FIPS habilitado, System.InvalidOperationException una System.InvalidOperationException .

¿Hay algún algoritmo alternativo que deba usar en lugar de MD5 en FIPS?



Puede usar MD5Digest desde Org.BouncyCastle.Crypto.Digests

MD5Digest hash = new MD5Digest(); public byte[] Hash(byte[] input) { hash.BlockUpdate(input, 0, input.Length); byte[] result = new byte[hash.GetDigestSize()]; hash.DoFinal(result, 0); return result; } public string Hash(string input) { var data = System.Text.Encoding.Unicode.GetBytes(input); hash.BlockUpdate(data, 0, data.Length); byte[] result = new byte[hash.GetDigestSize()]; hash.DoFinal(result, 0); return Hex.ToHexString(result).ToUpper(); }