public abstract class InitializedMessageDigest extends MessageDigest
InitializedMessageDigestclass is a subclass of the base class
MessageDigest. This class is used to generate a hash representing a specified message but with the additional capability to initialize the starting hash value corresponding to a previously hashed part of the message. Implementations of
InitializedMessageDigestalgorithms must extend this class and implement all the abstract methods.
A tear or card reset event resets a
InitializedMessageDigest object to the initial state (state upon construction).
Even if a transaction is in progress, update of intermediate result state in the implementation instance shall not participate in the transaction.
|Modifier||Constructor and Description|
|Modifier and Type||Method and Description|
This method initializes the starting hash value in place of the default value used by the
doFinal, getAlgorithm, getInitializedMessageDigestInstance, getInstance, getLength, reset, update
public abstract void setInitialDigest(byte initialDigestBuf, short initialDigestOffset, short initialDigestLength, byte digestedMsgLenBuf, short digestedMsgLenOffset, short digestedMsgLenLength) throws CryptoException
MessageDigestsuperclass. The starting hash value represents the previously computed hash (using the same algorithm) of the first part of the message. The remaining bytes of the message must be presented to this
InitializedMessageDigestobject via the
doFinalmethods to generate the final message digest.
initialDigestBuf- input buffer containing the starting hash value representing the previously computed hash (using the same algorithm) of first part of the message
initialDigestOffset- offset into
initialDigestBufarray where initial digest value data begins
initialDigestLength- the length of data in
digestedMsgLenBuf- the byte array containing the number of bytes in the first part of the message that has previously been hashed to obtain the specified initial digest value value
digestedMsgLenOffset- the offset within
digestedMsgLenBufwhere the digested length begins(the bytes starting at this offset for
digestedMsgLenLengthbytes are concatenated to form the actual digested message length value)
digestedMsgLenLength- byte length of the digested length
CryptoException- with the following reason codes:
CryptoException.ILLEGAL_VALUEif the parameter
initialDigestLengthis not equal to the length of message digest of the algorithm (see LENGTH_* constants
MessageDigest.LENGTH_SHA) or if the number of bytes in the first part of the message that has previously been hashed is 0 or not a multiple of the algorithm's block size or greater than the maximum length supported by the algorithm (see ALG_* algorithm descriptions