org.bouncycastle.crypto.digests

## Class MD5Digest

- java.lang.Object
- - org.bouncycastle.crypto.digests.GeneralDigest
  - - org.bouncycastle.crypto.digests.MD5Digest

All Implemented Interfaces:
  Digest, ExtendedDigest

    public class MD5Digest
    extends GeneralDigest

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

### Constructor Summary

Constructors
Constructor and Description
`MD5Digest()` Standard constructor
`MD5Digest(MD5Digest t)` Copy constructor.

### Method Summary

Methods
`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 to the IV values.

### Methods inherited from class org.bouncycastle.crypto.digests.GeneralDigest

`finish, getByteLength, 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(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

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.

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.

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`