Class LongDigest
- Namespace
- Org.BouncyCastle.Crypto.Digests
- Assembly
- BouncyCastle.Cryptography.dll
public abstract class LongDigest : IDigest, IMemoable
- Inheritance
-
LongDigest
- Implements
- Derived
- Inherited Members
Properties
AlgorithmName
The algorithm name.
public abstract string AlgorithmName { get; }
Property Value
Methods
BlockUpdate(byte[], int, int)
Update the message digest with a block of bytes.
public void BlockUpdate(byte[] input, int inOff, int length)
Parameters
inputbyte[]The byte array containing the data.
inOffintThe offset into the byte array where the data starts.
lengthint
BlockUpdate(ReadOnlySpan<byte>)
Update the message digest with a span of bytes.
public void BlockUpdate(ReadOnlySpan<byte> input)
Parameters
inputReadOnlySpan<byte>The span containing the data.
Copy()
Produce a copy of this object with its configuration and in its current state.
public abstract IMemoable Copy()
Returns
Remarks
The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.
CopyIn(LongDigest)
protected void CopyIn(LongDigest t)
Parameters
DoFinal(byte[], int)
Close the digest, producing the final digest value.
public abstract int DoFinal(byte[] output, int outOff)
Parameters
outputbyte[]The byte array the digest is to be copied into.
outOffintThe offset into the byte array the digest is to start at.
Returns
- int
The number of bytes written.
Remarks
This call leaves the digest reset.
DoFinal(Span<byte>)
Close the digest, producing the final digest value.
public abstract int DoFinal(Span<byte> output)
Parameters
Returns
- int
The number of bytes written.
Remarks
This call leaves the digest reset.
Finish()
public void Finish()
GetByteLength()
Return the size, in bytes, of the internal buffer used by this digest.
public int GetByteLength()
Returns
- int
The size, in bytes, of the internal buffer used by this digest.
GetDigestSize()
Return the size, in bytes, of the digest produced by this message digest.
public abstract int GetDigestSize()
Returns
- int
The size, in bytes, of the digest produced by this message digest.
Reset()
Reset the digest back to its initial state.
public virtual void Reset()
Reset(IMemoable)
Restore a copied object state into this object.
public abstract void Reset(IMemoable t)
Parameters
Remarks
Implementations of this method should try to avoid or minimise memory allocation to perform the reset.
Exceptions
- InvalidCastException
if the provided object is not of the correct type.
- MemoableResetException
if the other parameter is in some other way invalid.
Update(byte)
Update the message digest with a single byte.
public void Update(byte input)
Parameters
inputbyteThe input byte to be entered.