public class SM3Digest extends GeneralDigest
The specification says "process a bit stream", but this is written to process bytes in blocks of 4, meaning this will process 32-bit word groups. But so do also most other digest specifications, including the SHA-256 which was a origin for this specification.
| Constructor and Description |
|---|
SM3Digest()
Standard constructor
|
SM3Digest(SM3Digest t)
Copy constructor.
|
| Modifier and Type | Method and Description |
|---|---|
Memoable |
copy()
Produce a copy of this object with its configuration and in its current state.
|
int |
doFinal(byte[] out,
int outOff)
close the digest, producing the final digest value.
|
java.lang.String |
getAlgorithmName()
return the algorithm name
|
int |
getDigestSize()
return the size, in bytes, of the digest produced by this message digest.
|
protected void |
processBlock() |
protected void |
processLength(long bitLength) |
protected void |
processWord(byte[] in,
int inOff) |
void |
reset()
reset the chaining variables
|
void |
reset(Memoable other)
Restore a copied object state into this object.
|
copyIn, finish, getByteLength, populateState, update, updatepublic SM3Digest()
public SM3Digest(SM3Digest t)
public java.lang.String getAlgorithmName()
Digestpublic int getDigestSize()
Digestpublic Memoable copy()
MemoableThe returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.
public void reset(Memoable other)
MemoableImplementations of this method should try to avoid or minimise memory allocation to perform the reset.
other - an object originally copied from an object of the same type as this instance.public void reset()
reset in interface Digestreset in class GeneralDigestpublic int doFinal(byte[] out,
int outOff)
Digestout - the array the digest is to be copied into.outOff - the offset into the out array the digest is to start at.protected void processWord(byte[] in,
int inOff)
processWord in class GeneralDigestprotected void processLength(long bitLength)
processLength in class GeneralDigestprotected void processBlock()
processBlock in class GeneralDigest