For the latest news and information visit The GNU Crypto project

## gnu.crypto.hash
Class MD2

    java.lang.Object
      |
      +--gnu.crypto.hash.BaseHash
            |
            +--gnu.crypto.hash.MD2

All Implemented Interfaces:
  java.lang.Cloneable, IMessageDigest

public class MD2
extends BaseHash

An implementation of the MD2 message digest algorithm.

MD2 is not widely used. Unless it is needed for compatibility with existing systems, it is not recommended for use in new applications.

References:

1. The MD2 Message-Digest Algorithm.
   B. Kaliski.
2. The RFC ERRATA PAGE under section RFC 1319.

Field Summary

Fields inherited from class gnu.crypto.hash.BaseHash
`blockSize, buffer, count, hashSize, name`

Constructor Summary
`MD2()` Creates a new MD2 digest ready for use.

Method Summary
`java.lang.Object` `clone()` Returns a clone copy of this instance.
`protected byte[]` `getResult()` Constructs the result from the contents of the current context.
`protected byte[]` `padBuffer()` Generates an array of padding bytes.
`protected void` `resetContext()` Resets the instance for future re-use.
`boolean` `selfTest()` A basic test.
`protected void` `transform(byte[] in, int off)` Adds `BLOCK_LENGTH` bytes to the running digest.

Methods inherited from class gnu.crypto.hash.BaseHash
`blockSize, digest, hashSize, name, reset, update, update`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MD2

    public MD2()

  Creates a new MD2 digest ready for use.

Method Detail

### clone

    public java.lang.Object clone()

  Description copied from interface: `IMessageDigest`

  Returns a clone copy of this instance.

  Specified by:
    `clone` in interface `IMessageDigest`
  Specified by:
    `clone` in class `BaseHash`
  Returns:
    a clone copy of this instance.

### getResult

    protected byte[] getResult()

  Description copied from class: `BaseHash`

  Constructs the result from the contents of the current context.

  Specified by:
    `getResult` in class `BaseHash`
  Returns:
    the output of the completed hash operation.

### resetContext

    protected void resetContext()

  Description copied from class: `BaseHash`
  Resets the instance for future re-use.

  Specified by:
    `resetContext` in class `BaseHash`

### selfTest

    public boolean selfTest()

  Description copied from interface: `IMessageDigest`

  A basic test. Ensures that the digest of a pre-determined message is equal to a known pre-computed value.

  Specified by:
    `selfTest` in interface `IMessageDigest`
  Specified by:
    `selfTest` in class `BaseHash`
  Returns:
    `true` if the implementation passes a basic self-test. Returns `false` otherwise.

### padBuffer

    protected byte[] padBuffer()

  Generates an array of padding bytes. The padding is defined as `i` bytes of value `i`, where `i` is the number of bytes to fill the last block of the message to `BLOCK_LENGTH` bytes (or `BLOCK_LENGTH` bytes when the last block was completely full).

  Specified by:
    `padBuffer` in class `BaseHash`
  Returns:
    the bytes to pad the remaining bytes in the buffer before completing a hash operation.

### transform

    protected void transform(byte[] in,
                             int off)

  Adds `BLOCK_LENGTH` bytes to the running digest.

  Specified by:
    `transform` in class `BaseHash`
  Parameters:
    `in` - the byte array to take the `BLOCK_LENGTH` bytes from.
    `off` - the offset to start from in the given byte array.

For the latest news and information visit The GNU Crypto project

Copyright © 2001, 2002, 2003, 2004 Free Software Foundation, Inc.