iaik.security.md
Class RipeMd128

java.lang.Object
  |
  +--java.security.MessageDigestSpi
        |
        +--java.security.MessageDigest
              |
              +--iaik.security.md.AbstractMessageDigest
                    |
                    +--iaik.security.md.RipeMd128
All Implemented Interfaces:
Cloneable

public class RipeMd128
extends iaik.security.md.AbstractMessageDigest

This class implements the RipeMd128 message digest algorithm. It produces a 128 bit digest (hence the name) and can be considered a good alternative to MD5 when a 128 bit seed is desired. It does not have the recently discovered weaknesses of MD5, however, it is about 40% slower than MD5 but still a lot faster than SHA-1 or RIPEMD160. The name of the algorithm to use with getInstance() is RIPEMD128.

For a specification of the algorithm see Fast Software Encryption, LCS 1039, Springer Verlag, 1996, pp. 71-82. Also available online from http://www.esat.kuleuven.ac.be/cosic/cosic.html.

Version:
File Revision 21
See Also:
MessageDigest

Constructor Summary
RipeMd128()
          Creates a new RipeMd128 message digest object.
 
Method Summary
 Object clone()
          Returns a clone of this RipeMd128 Object.
protected  byte[] engineDigest()
          b>SPI: Completes the hash computation by performing final operations such as padding.
 int engineGetDigestLength()
          SPI: Returns the length of the digest in bytes.
protected  void engineReset()
          SPI: Resets this RipeMd128 message digest object for being supplied with new data.
protected  void engineUpdate(byte input)
          SPI: Updates the data to be hashed with the specified byte.
protected  void engineUpdate(byte[] input, int offset, int len)
          SPI: Updates the data to be hashed with the specified number of bytes, beginning at the specified offset within the given byte array.
 
Methods inherited from class java.security.MessageDigest
digest, digest, digest, getAlgorithm, getDigestLength, getInstance, getInstance, getProvider, isEqual, reset, toString, update, update, update
 
Methods inherited from class java.security.MessageDigestSpi
engineDigest
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RipeMd128

public RipeMd128()
Creates a new RipeMd128 message digest object. Applications do not use this constructor. They shall use
 MessageDigest.getInstance("RIPEMD128");
for creating a MesssageDigest object.
See Also:
MessageDigest.getInstance(java.lang.String)
Method Detail

clone

public Object clone()
Returns a clone of this RipeMd128 Object.
Overrides:
clone in class iaik.security.md.AbstractMessageDigest
Returns:
a clone of this RipeMd128 Object

engineReset

protected void engineReset()
SPI: Resets this RipeMd128 message digest object for being supplied with new data.

This method is called by engineDigest after the actual hash computation has been finished to automatically reset the message digest object for being supplied with new data for starting a new hash computation.

Overrides:
engineReset in class iaik.security.md.AbstractMessageDigest
See Also:
AbstractMessageDigest.engineDigest()

engineUpdate

protected final void engineUpdate(byte input)
SPI: Updates the data to be hashed with the specified byte.
Overrides:
engineUpdate in class MessageDigestSpi
Parameters:
input - the byte to be used for updating.

engineUpdate

protected final void engineUpdate(byte[] input,
                                  int offset,
                                  int len)
SPI: Updates the data to be hashed with the specified number of bytes, beginning at the specified offset within the given byte array.
Overrides:
engineUpdate in class MessageDigestSpi
Parameters:
input - the byte array holding the data to be used for this update operation.
offset - the offset, indicating the start position within the given byte array.
len - the number of bytes to be obtained from the given byte array, starting at the given position.

engineDigest

protected byte[] engineDigest()
b>SPI: Completes the hash computation by performing final operations such as padding. Once engineDigest has been called, the engine should be reset. Resetting is the responsibility of the engine implementor.
Overrides:
engineDigest in class MessageDigestSpi
Returns:
The computed hash value.
See Also:
AbstractMessageDigest.engineReset()

engineGetDigestLength

public int engineGetDigestLength()
SPI: Returns the length of the digest in bytes.

May not be available for applications before JDK versions >= 1.2.x.

Overrides:
engineGetDigestLength in class MessageDigestSpi
Returns:
the length of the digest in bytes.

This Javadoc may contain text parts from Internet Standard specifications (RFC 2459, 3280, 3039, 2560, 1521, 821, 822, 2253, 1319, 1321, ,2630, 2631, 2268, 3058, 2984, 2104, 2144, 2040, 2311, 2279, see copyright note) and RSA Data Security Public-Key Cryptography Standards (PKCS#1,3,5,7,8,9,10,12, see copyright note).

IAIK-JCE 3.1 with IAIK-JCE CC Core 3.1, (c) 1997-2004 IAIK