Ejemplo n.º 1
0
 /// <summary>
 /// 将写入对象的数据路由到哈希算法以计算哈希值。
 /// </summary>
 /// <param name="array">要计算其哈希代码的输入。</param>
 /// <param name="ibStart">字节数组中的偏移量,从该位置开始使用数据。</param>
 /// <param name="cbSize">字节数组中用作数据的字节数。</param>
 protected override void HashCore(byte[] array, int ibStart, int cbSize)
 {
     this.Current = CRC32.CalculateHash(this.Current, this.Table, array, ibStart, cbSize);
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 在加密流对象处理完最后的数据后完成哈希计算。
 /// </summary>
 /// <returns>计算所得的哈希代码。</returns>
 protected override byte[] HashFinal()
 {
     byte[] hashValue = CRC32.GetBytesBigEndian(~this.Current);
     this.HashValue = hashValue;
     return(hashValue);
 }