Bouncy Castle Cryptography Library 1.81

org.bouncycastle.crypto.digests
Class MD5Digest

java.lang.Object
  extended byorg.bouncycastle.crypto.digests.GeneralDigest
      extended byorg.bouncycastle.crypto.digests.MD5Digest
All Implemented Interfaces:
Digest, EncodableDigest, ExtendedDigest, Memoable

public class MD5Digest
extends GeneralDigest
implements EncodableDigest

implementation of MD5 as outlined in "Handbook of Applied Cryptography", pages 346 - 347.


Field Summary
 
Fields inherited from class org.bouncycastle.crypto.digests.GeneralDigest
purpose
 
Constructor Summary
MD5Digest()
          Standard constructor
MD5Digest(byte[] encodedState)
           
MD5Digest(CryptoServicePurpose purpose)
           
MD5Digest(MD5Digest t)
          Copy constructor.
 
Method Summary
 Memoable copy()
          Produce a copy of this object with its configuration and in its current state.
protected  CryptoServiceProperties cryptoServiceProperties()
           
 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.
 byte[] getEncodedState()
          Return an encoded byte array for the digest's internal state
protected  void processBlock()
           
protected  void processLength(long bitLength)
           
protected  void processWord(byte[] in, int inOff)
           
 void reset()
          reset the chaining variables to the IV values.
 void reset(Memoable other)
          Restore a copied object state into this object.
 
Methods inherited from class org.bouncycastle.crypto.digests.GeneralDigest
copyIn, finish, getByteLength, populateState, update, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MD5Digest

public MD5Digest()
Standard constructor


MD5Digest

public MD5Digest(CryptoServicePurpose purpose)

MD5Digest

public MD5Digest(byte[] encodedState)

MD5Digest

public MD5Digest(MD5Digest t)
Copy constructor. This will copy the state of the provided message digest.

Method Detail

getAlgorithmName

public java.lang.String getAlgorithmName()
Description copied from interface: Digest
return the algorithm name

Specified by:
getAlgorithmName in interface Digest
Returns:
the algorithm name

getDigestSize

public int getDigestSize()
Description copied from interface: Digest
return the size, in bytes, of the digest produced by this message digest.

Specified by:
getDigestSize in interface Digest
Returns:
the size, in bytes, of the digest produced by this message digest.

processWord

protected void processWord(byte[] in,
                           int inOff)
Specified by:
processWord in class GeneralDigest

processLength

protected void processLength(long bitLength)
Specified by:
processLength in class GeneralDigest

doFinal

public int doFinal(byte[] out,
                   int outOff)
Description copied from interface: Digest
close the digest, producing the final digest value. The doFinal call leaves the digest reset.

Specified by:
doFinal in interface Digest
Parameters:
out - the array the digest is to be copied into.
outOff - the offset into the out array the digest is to start at.

reset

public void reset()
reset the chaining variables to the IV values.

Specified by:
reset in interface Digest
Overrides:
reset in class GeneralDigest

processBlock

protected void processBlock()
Specified by:
processBlock in class GeneralDigest

copy

public Memoable copy()
Description copied from interface: Memoable
Produce a copy of this object with its configuration and in its current state.

The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.

Specified by:
copy in interface Memoable

reset

public void reset(Memoable other)
Description copied from interface: Memoable
Restore a copied object state into this object.

Implementations of this method should try to avoid or minimise memory allocation to perform the reset.

Specified by:
reset in interface Memoable
Parameters:
other - an object originally copied from an object of the same type as this instance.

getEncodedState

public byte[] getEncodedState()
Description copied from interface: EncodableDigest
Return an encoded byte array for the digest's internal state

Specified by:
getEncodedState in interface EncodableDigest
Returns:
an encoding of the digests internal state.

cryptoServiceProperties

protected CryptoServiceProperties cryptoServiceProperties()
Specified by:
cryptoServiceProperties in class GeneralDigest

Bouncy Castle Cryptography Library 1.81