该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
package org.zcq100.Other;
public class MD5 {
static final int S11 = 8;
static final int S12 = 13;
static final int S13 = 18;
static final int S14 = 23;
static final int S21 = 7;
static final int S22 = 11;
static final int S23 = 16;
static final int S24 = 22;
static final int S31 = 5;
static final int S32 = 12;
static final int S33 = 17;
static final int S34 = 24;
static final int S41 = 4;
static final int S42 = 8;
static final int S43 = 13;
static final int S44 = 25;
static final byte[] PADDING = { -128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0 };
private long[] state = new long[4]; // state (ABCD)
private long[] count = new long[2];
// number of bits, modulo 2^64 (lsb first)
private byte[] buffer = new byte[64]; // input buffer
public String digestHexStr;
public String strMD5;
private byte[] digest = new byte[16];
public String getMD5ofStr(String inbuf) {
md5Init();
md5Update(inbuf.getBytes(), inbuf.length());
md5Final();
digestHexStr = "";
for (int i = 0; i
digestHexStr += byteHEX(digest[i]);
}
// digestHexStr=strMD5.substring(0,19);
return digestHexStr.substring(0, 20);
}
public MD5() {
md5Init();
return;
}
private void md5Init() {
count[0] = 0L;
count[1] = 0L;