Obtengo ObjectDisposedException: el identificador de seguridad se ha cerrado.ObjectDisposedException Al usar MD5 ComputeHash
Este es mi código:
Estoy tratando de crear una interfaz y la implementación de clase que me permitirá obtener una cadena, aplicables a la misma clave conocida, calcular hash MD5 para esta cadena y la llave, y devolver el hash calculado:
public interface ISignService
{
string GetSignature(string str);
}
public class SignService : ISignService
{
private readonly ISignSettings _signSettings;
private readonly HashAlgorithm _hashAlgo;
public SignService(ISignSettings signSettings)
{
_signSettings = signSettings;
_hashAlgo = MD5.Create();
}
public string GetSignature(string str)
{
var strWithKey = str + _signSettings.EncryptionKey;
var hashed = _hashAlgo.ComputeHash(Encoding.UTF8.GetBytes(strWithKey));
return hashed.ToHexString();
}
}
Gracias
¿Qué línea de código arroja la excepción? – ken2k
¿'Hashed.ToHexString()' es un método de extensión? Pegué su código y el método no existe ... – Laoujin
Hola, es un método de extensión. la línea que arroja es: var hashed = _hashAlgo.ComputeHash (Encoding.UTF8.GetBytes (strWithKey)); – user1625867