public override HashResult TransformFinal() { HashResult result = ComputeAggregatedBytes(Aggregate()); Initialize(); return(result); }
public HashResult ComputeFile(string a_file_name, long a_from = 0, long a_length = -1) { Initialize(); TransformFile(a_file_name, a_from, a_length); HashResult result = TransformFinal(); Initialize(); return(result); }
public HashResult ComputeStream(Stream a_stream, long a_length = -1) { Initialize(); TransformStream(a_stream, a_length); HashResult result = TransformFinal(); Initialize(); return(result); }
public virtual HashResult ComputeBytes(byte[] a_data) { Initialize(); TransformBytes(a_data); HashResult result = TransformFinal(); Initialize(); return(result); }
public override HashResult TransformFinal() { HashResult h = m_hash.TransformFinal(); m_hash.TransformBytes(m_opad); m_hash.TransformBytes(h.GetBytes()); h = m_hash.TransformFinal(); Initialize(); return(h); }
/// <summary> /// Determines whether a Hash Result is equal to some other Object /// </summary> /// <param name="a_obj"></param> /// <returns></returns> public override bool Equals(Object a_obj) { HashResult hash_result = a_obj as HashResult; if ((HashResult)hash_result == null) { return(false); } return(Equals(hash_result)); }
public HashResult ComputeStream(Stream a_stream, long a_length = -1) { Initialize(); // thread-safety attempt by adding lock -- does it work? var thisLock = new object(); lock (thisLock) { TransformStream(a_stream, a_length); } HashResult result = TransformFinal(); Initialize(); return(result); }
public override HashResult TransformFinal() { if (!m_bTransforming) { UpdatePads(); m_hash.TransformBytes(m_ipad); m_bTransforming = true; } HashResult h = m_hash.TransformFinal(); Initialize(); m_hash.TransformBytes(m_opad); m_hash.TransformBytes(h.GetBytes()); h = m_hash.TransformFinal(); Initialize(); return(h); }
internal bool Equals(HashResult a_hashResult) { return HashResult.SameArrays(a_hashResult.GetBytes(), m_hash); }
/// <summary> /// Determines whether a Hash Result is equal to another Hash Result /// </summary> /// <param name="a_hashResult"></param> /// <returns></returns> public bool Equals(HashResult a_hashResult) { return(HashResult.SameArrays(a_hashResult.GetBytes(), m_hash)); }
public void HashResult() { for (int i = 0; i < 14; i++) { HashResult h1 = new HashResult(m_random.NextBytes(i)); try { uint h2 = h1.GetUInt(); if (i != 4) Assert.Fail(i.ToString()); Assert.IsTrue(Converters.ConvertBytesToUInts(h1.GetBytes())[0] == h2, i.ToString()); } catch { if (i == 4) Assert.Fail(i.ToString()); } try { ulong h3 = h1.GetULong(); if (i != 8) Assert.Fail(i.ToString()); Assert.IsTrue(Converters.ConvertBytesToULongs(h1.GetBytes())[0] == h3, i.ToString()); } catch { if (i == 8) Assert.Fail(i.ToString()); } } }
public bool Equals(HashResult a_hashResult) { return SameArrays(a_hashResult.GetBytes(), m_hash); }