<PackageReference Include="BouncyCastle.Cryptography" Version="2.1.1" />

SkeinEngine

public class SkeinEngine : IMemoable
Implementation of the Skein family of parameterised hash functions in 256, 512 and 1024 bit block sizes, based on the ThreefishEngineThreefish tweakable block cipher.
public class Parameter

public const int SKEIN_1024 = 1024

1024 bit block size - Skein-1024

public const int SKEIN_256 = 256

256 bit block size - Skein-256

public const int SKEIN_512 = 512

512 bit block size - Skein-512

public int BlockSize { get; }

public int OutputSize { get; }

public SkeinEngine(int blockSizeBits, int outputSizeBits)

Constructs a Skein digest with an internal state size and output size.

public SkeinEngine(SkeinEngine engine)

Creates a SkeinEngine as an exact copy of an existing instance.

public void BlockUpdate(byte[] inBytes, int inOff, int len)

public IMemoable Copy()

public int DoFinal(byte[] outBytes, int outOff)

public void Init(SkeinParameters parameters)

Initialises the Skein engine with the provided parameters. See SkeinParameters for details on the parameterisation of the Skein hash function.

public void Reset(IMemoable other)

public void Reset()

Reset the engine to the initial state (with the key and any pre-message parameters , ready to accept message input.

public void Update(byte inByte)