1. java中如何对中文字符串进行加密

|//MD5 加密,不可逆

public final static String getMD5(String s) throws Exception {
if (null == s || 0 >= s.length()) {
return null;
}
char hexDigits[] = MD5_KEY.toCharArray();
byte[] strTemp = s.getBytes();
MessageDigest mdTemp = MessageDigest.getInstance("MD5");
mdTemp.update(strTemp);
byte[] md = mdTemp.digest();
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}

return (new String(str)).toUpperCase();
}

2. java的md5的加密算法代码

1、为了更可靠与安全,一般都会产生一个key俗称密钥串来加密

2、准备好待加密的数据字符串text

3、将key与待加密字符串拼接处理,产生一个新的字符串str

4、将str按照一定编码处理成字节数组byte[]

5、利用md5的update方法处理字节数组获取加密后的值

用apache的实现示例:

/**
*签名字符串
*@paramtext需要签名的字符串
*@paramkey密钥
*@paraminput_charset编码格式
*@return签名结果
*/
publicstaticStringsign(Stringtext,Stringkey,Stringinput_charset){
text=text+key;
returnDigestUtils.md5Hex(getContentBytes(text,input_charset));
}
/**
*@paramcontent
*@paramcharset
*@return
*@throwsSignatureException
*@
*/
privatestaticbyte[]getContentBytes(Stringcontent,Stringcharset){
if(charset==null||"".equals(charset)){
returncontent.getBytes();
}
try{
returncontent.getBytes(charset);
}catch(UnsupportedEncodingExceptione){
thrownewRuntimeException("MD5签名过程中出现错误,指定的编码集不对,您目前指定的编码集是:"+charset);
}
}

3. java中md5加密

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class md5 {
public String str;

public void md5s(String plainText) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(plainText.getBytes());
byte b[] = md.digest();

int i;

StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
str = buf.toString();
System.out.println("result: " + buf.toString());// 32位的加密
System.out.println("result: " + buf.toString().substring(8, 24));// 16位的加密
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();

}
}

public static void main(String agrs[]) {
md5 md51 = new md5();
md51.md5s("4");//加密4
}

}

4. 求Java的MD5加密解密实现类。 要实现对用户的密码进行加密! 然后验证用户的密码!

import java.security.*;
import java.util.logging.Level;
import java.util.logging.Logger;
public class md5{
public String md5(String str) {
String s=str;
(s==null){
return "";
}else{
String value = null;
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
}catch (NoSuchAlgorithmException ex) {
Logger.getLogger(md5.class.getName()).log(Level.SEVERE, null, ex);
}
sun.misc.BASE64Encoder baseEncoder = new sun.misc.BASE64Encoder();
try {
value = baseEncoder.encode(md5.digest(s.getBytes("utf-8")));
} catch (Exception ex) {
}
return value;
}
}
}

5. java 怎样实现 64位的md5加密算法

直接引入“commons-codec-1.10.jar”这个java包,然后调用相应方法即可

比如我们可以写一个方法类,把常用的方法都写进去:

publicclassEncryptionUtil{
/**
*Base64encode
**/
(Stringdata){
returnBase64.encodeBase64String(data.getBytes());
}

/**
*Base64decode
*@
**/
(Stringdata){
returnnewString(Base64.decodeBase64(data.getBytes()),"utf-8");
}

/**
*md5
**/
publicstaticStringmd5Hex(Stringdata){
returnDigestUtils.md5Hex(data);
}

/**
*sha1
**/
publicstaticStringsha1Hex(Stringdata){
returnDigestUtils.sha1Hex(data);
}

/**
*sha256
**/
publicstaticStringsha256Hex(Stringdata){
returnDigestUtils.sha256Hex(data);
}

}


(PS:纯手打,望点赞)