SHOW Signed

net.rim.device.api.crypto
Class MD4Digest

java.lang.Object
  |
  +--net.rim.device.api.crypto.AbstractDigest
        |
        +--net.rim.device.api.crypto.MD4Digest
All Implemented Interfaces:
Digest

public final class MD4Digest
extends AbstractDigest
implements Digest

The MD4Digest class implements the MD4 hashing algorithm.

Note: the MD4 digest is considered weak, and should not be considered for new applications. It is provided for backwards compatibility.

MD4 is defined in RFC 1320.

For a code sample using the MD4 digest, click here.

Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

Since:
JDE 3.6.0
See Also:
MD5Digest, MD2Digest

Field Summary
 Category: Signed static int BLOCK_LENGTH
          A static definition stating the block length of 64 bytes.
 Category: Signed static int DIGEST_LENGTH
          Specifies the size of the digest in terms of the number of bytes returned by the getDigest function, namely 16 bytes.
 
Constructor Summary
 Category: Signed MD4Digest()
          Constructs and initializes an MD4Digest object.
 
Method Summary
 Category: Signed  String getAlgorithm()
          Returns the name of this digest ("MD4").
 Category: Signed  int getBlockLength()
           
 Category: Signed  int getDigest(byte[] buffer, int offset, boolean resetDigest)
           
 Category: Signed  int getDigestLength()
           
 Category: Signed  void reset()
           
 Category: Signed  void update(byte[] data, int offset, int length)
           
 Category: Signed  void update(int data)
           
 
Methods inherited from class net.rim.device.api.crypto.AbstractDigest
getDigest, getDigest, getDigest, update
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.rim.device.api.crypto.Digest
getDigest, getDigest, getDigest, update
 

Field Detail

DIGEST_LENGTH

public static final int DIGEST_LENGTH
Specifies the size of the digest in terms of the number of bytes returned by the getDigest function, namely 16 bytes.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

BLOCK_LENGTH

public static final int BLOCK_LENGTH
A static definition stating the block length of 64 bytes.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
Constructor Detail

MD4Digest

public MD4Digest()
Constructs and initializes an MD4Digest object.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
Method Detail

getAlgorithm

public String getAlgorithm()
Returns the name of this digest ("MD4").

This method will always return the String "MD4".

Specified by:
getAlgorithm in interface Digest
Overrides:
getAlgorithm in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

reset

public void reset()
Description copied from interface: Digest
Reinitializes the digest.
Specified by:
reset in interface Digest
Overrides:
reset in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

update

public void update(int data)
Description copied from interface: Digest
Passes a single byte into the hash algorithm.

Specified by:
update in interface Digest
Overrides:
update in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

update

public void update(byte[] data,
                   int offset,
                   int length)
Description copied from interface: Digest
Passes a byte array of data, specified by the length and offset, into the hash algorithm.

Specified by:
update in interface Digest
Overrides:
update in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

getDigestLength

public int getDigestLength()
Description copied from interface: Digest
Returns the length of the digest in bytes.

Specified by:
getDigestLength in interface Digest
Overrides:
getDigestLength in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

getBlockLength

public int getBlockLength()
Description copied from interface: Digest
Returns the block length of the digest in bytes.

Most digest algorithms are iterated hash functions, and thus process the input data in blocks. Some primitives, like HMAC are sensitive to this block length.

Specified by:
getBlockLength in interface Digest
Overrides:
getBlockLength in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.

getDigest

public int getDigest(byte[] buffer,
                     int offset,
                     boolean resetDigest)
Description copied from interface: Digest
Inserts the digest of all the input data since the last reset into the specified buffer at the given offset.

Specified by:
getDigest in interface Digest
Overrides:
getDigest in class AbstractDigest
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.


Copyright 1999-2004 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.