jChatBox.Util
Class MD5

java.lang.Object
  |
  +--jChatBox.Util.MD5

public class MD5
extends java.lang.Object

This class implements MD5 hash algorithm.


Nested Class Summary
(package private)  class MD5.MD5_CTX
           
 
Field Summary
(package private) static char[] HEX
           
(package private) static byte[] PADDING
           
(package private) static int S11
           
(package private) static int S12
           
(package private) static int S13
           
(package private) static int S14
           
(package private) static int S21
           
(package private) static int S22
           
(package private) static int S23
           
(package private) static int S24
           
(package private) static int S31
           
(package private) static int S32
           
(package private) static int S33
           
(package private) static int S34
           
(package private) static int S41
           
(package private) static int S42
           
(package private) static int S43
           
(package private) static int S44
           
 
Constructor Summary
MD5()
           
 
Method Summary
(package private)  int byte2int(byte b)
           
(package private)  void Decode(long[] output, byte[] input, int iidx, int len)
           
 byte[] doDigest(byte[] string)
           
 java.lang.String doDigest(java.lang.String string)
           
(package private)  void Encode(byte[] output, long[] input, int len)
           
(package private)  long F(long x, long y, long z)
           
(package private)  void FF(long[] n, int a, int b, int c, int d, long x, long s, long ac)
           
(package private)  long fix(long l)
           
(package private)  long G(long x, long y, long z)
           
(package private)  void GG(long[] n, int a, int b, int c, int d, long x, long s, long ac)
           
(package private)  long H(long x, long y, long z)
           
(package private)  void HH(long[] n, int a, int b, int c, int d, long x, long s, long ac)
           
(package private)  long I(long x, long y, long z)
           
(package private)  void II(long[] n, int a, int b, int c, int d, long x, long s, long ac)
           
(package private)  void MD5_memcpy(byte[] output, int oidx, byte[] input, int iidx, int len)
           
(package private)  void MD5Final(byte[] digest, MD5.MD5_CTX context)
           
(package private)  void MD5Init(MD5.MD5_CTX context)
           
(package private)  void MD5Transform(long[] state, byte[] block, int idx)
           
(package private)  void MD5Update(MD5.MD5_CTX context, byte[] input, int inputLen)
           
(package private)  long ROTATE_LEFT(long x, long n)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HEX

static final char[] HEX

S11

static final int S11
See Also:
Constant Field Values

S12

static final int S12
See Also:
Constant Field Values

S13

static final int S13
See Also:
Constant Field Values

S14

static final int S14
See Also:
Constant Field Values

S21

static final int S21
See Also:
Constant Field Values

S22

static final int S22
See Also:
Constant Field Values

S23

static final int S23
See Also:
Constant Field Values

S24

static final int S24
See Also:
Constant Field Values

S31

static final int S31
See Also:
Constant Field Values

S32

static final int S32
See Also:
Constant Field Values

S33

static final int S33
See Also:
Constant Field Values

S34

static final int S34
See Also:
Constant Field Values

S41

static final int S41
See Also:
Constant Field Values

S42

static final int S42
See Also:
Constant Field Values

S43

static final int S43
See Also:
Constant Field Values

S44

static final int S44
See Also:
Constant Field Values

PADDING

static final byte[] PADDING
Constructor Detail

MD5

public MD5()
Method Detail

doDigest

public java.lang.String doDigest(java.lang.String string)

doDigest

public byte[] doDigest(byte[] string)

fix

long fix(long l)

F

long F(long x,
       long y,
       long z)

G

long G(long x,
       long y,
       long z)

H

long H(long x,
       long y,
       long z)

I

long I(long x,
       long y,
       long z)

ROTATE_LEFT

long ROTATE_LEFT(long x,
                 long n)

FF

void FF(long[] n,
        int a,
        int b,
        int c,
        int d,
        long x,
        long s,
        long ac)

GG

void GG(long[] n,
        int a,
        int b,
        int c,
        int d,
        long x,
        long s,
        long ac)

HH

void HH(long[] n,
        int a,
        int b,
        int c,
        int d,
        long x,
        long s,
        long ac)

II

void II(long[] n,
        int a,
        int b,
        int c,
        int d,
        long x,
        long s,
        long ac)

MD5Init

void MD5Init(MD5.MD5_CTX context)

MD5Update

void MD5Update(MD5.MD5_CTX context,
               byte[] input,
               int inputLen)

MD5Final

void MD5Final(byte[] digest,
              MD5.MD5_CTX context)

MD5Transform

void MD5Transform(long[] state,
                  byte[] block,
                  int idx)

Encode

void Encode(byte[] output,
            long[] input,
            int len)

Decode

void Decode(long[] output,
            byte[] input,
            int iidx,
            int len)

MD5_memcpy

void MD5_memcpy(byte[] output,
                int oidx,
                byte[] input,
                int iidx,
                int len)

byte2int

int byte2int(byte b)