C# Class LSLib.Granny.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
Afficher le fichier Open project: Norbyte/lslib

Méthodes publiques

Méthode Description
Compute ( UInt32 polynomial, UInt32 seed, byte buffer ) : UInt32
Compute ( UInt32 seed, byte buffer ) : UInt32
Compute ( byte buffer ) : UInt32
Crc32 ( ) : System
Crc32 ( UInt32 polynomial, UInt32 seed ) : System
Initialize ( ) : void

Méthodes protégées

Méthode Description
HashCore ( byte buffer, int start, int length ) : void
HashFinal ( ) : byte[]

Private Methods

Méthode Description
CalculateHash ( UInt32 table, UInt32 seed, IList buffer, int start, int size ) : UInt32
InitializeTable ( UInt32 polynomial ) : System.UInt32[]
UInt32ToBigEndianBytes ( UInt32 uint32 ) : byte[]

Method Details

Compute() public static méthode

public static Compute ( UInt32 polynomial, UInt32 seed, byte buffer ) : UInt32
polynomial System.UInt32
seed System.UInt32
buffer byte
Résultat System.UInt32

Compute() public static méthode

public static Compute ( UInt32 seed, byte buffer ) : UInt32
seed System.UInt32
buffer byte
Résultat System.UInt32

Compute() public static méthode

public static Compute ( byte buffer ) : UInt32
buffer byte
Résultat System.UInt32

Crc32() public méthode

public Crc32 ( ) : System
Résultat System

Crc32() public méthode

public Crc32 ( UInt32 polynomial, UInt32 seed ) : System
polynomial System.UInt32
seed System.UInt32
Résultat System

HashCore() protected méthode

protected HashCore ( byte buffer, int start, int length ) : void
buffer byte
start int
length int
Résultat void

HashFinal() protected méthode

protected HashFinal ( ) : byte[]
Résultat byte[]

Initialize() public méthode

public Initialize ( ) : void
Résultat void