C# Class Hugula.Update.Crc32

Implements a 32-bit CRC hash algorithm compatible with Zip etc.
Crc32 should only be used for backward compatibility with older file formats and algorithms. It is not secure enough for new applications. If you need to call multiple times for the same data either use the HashAlgorithm interface or remember that the result of one Compute call needs to be ~ (XOR) before being passed in as the seed for the next Compute call.
Inheritance: System.Security.Cryptography.HashAlgorithm
显示文件 Open project: tenvick/hugula

Public Methods

Method Description
Compute ( byte buffer ) : uint
Compute ( uint seed, byte buffer ) : uint
Compute ( uint polynomial, uint seed, byte buffer ) : uint
Crc32 ( ) : System
Crc32 ( uint polynomial, uint seed ) : System
GetHashResult ( ) : uint
Initialize ( ) : void

Protected Methods

Method Description
HashCore ( byte buffer, int start, int length ) : void
HashFinal ( ) : byte[]

Private Methods

Method Description
CalculateHash ( uint table, uint seed, byte buffer, int start, int size ) : uint
InitializeTable ( uint polynomial ) : uint[]
UintToBigEndianBytes ( uint uint32 ) : byte[]

Method Details

Compute() public static method

public static Compute ( byte buffer ) : uint
buffer byte
return uint

Compute() public static method

public static Compute ( uint seed, byte buffer ) : uint
seed uint
buffer byte
return uint

Compute() public static method

public static Compute ( uint polynomial, uint seed, byte buffer ) : uint
polynomial uint
seed uint
buffer byte
return uint

Crc32() public method

public Crc32 ( ) : System
return System

Crc32() public method

public Crc32 ( uint polynomial, uint seed ) : System
polynomial uint
seed uint
return System

GetHashResult() public method

public GetHashResult ( ) : uint
return uint

HashCore() protected method

protected HashCore ( byte buffer, int start, int length ) : void
buffer byte
start int
length int
return void

HashFinal() protected method

protected HashFinal ( ) : byte[]
return byte[]

Initialize() public method

public Initialize ( ) : void
return void