FileDocCategorySizeDatePackage
MD5Encoder.javaAPI DocGlassfish v2 API3328Fri May 04 22:32:30 BST 2007org.apache.catalina.util

MD5Encoder

public final class MD5Encoder extends Object
Encode an MD5 digest into a String.

The 128 bit MD5 hash is converted into a 32 character long String. Each character of the String is the hexadecimal representation of 4 bits of the digest.

author
Remy Maucherat
version
$Revision: 1.3 $ $Date: 2007/05/05 05:32:30 $

Fields Summary
private static final char[]
hexadecimal
Constructors Summary
Methods Summary
public java.lang.Stringencode(byte[] binaryData)
Encodes the 128 bit (16 bytes) MD5 into a 32 character String.

param
binaryData Array containing the digest
return
Encoded MD5, or null if encoding failed



    // --------------------------------------------------------- Public Methods


                                   
          

        if (binaryData.length != 16)
            return null;

        char[] buffer = new char[32];

        for (int i=0; i<16; i++) {
            int low = (int) (binaryData[i] & 0x0f);
            int high = (int) ((binaryData[i] & 0xf0) >> 4);
            buffer[i*2] = hexadecimal[high];
            buffer[i*2 + 1] = hexadecimal[low];
        }

        return new String(buffer);