java 内置base64+md5加密运用代码
package org.rui.base64;
import java.io.IOException;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class Base64 {
/**
* @param args
*/
public static void main(String[] args) {
Base64 base=new Base64();
String pass="123";
String en=base.encode(pass);
System.out.println(en);
String de=base.decode(en);
System.out.println(de);
}
//译成密码
public String encode(String pass){
BASE64Encoder base=new BASE64Encoder();
pass=base.encode(pass.getBytes());
return pass;
}
//
public String encode(byte [] b){
return encode(new String(b));
}
//解密
public String decode(String pass) {
BASE64Decoder base=new BASE64Decoder();
byte[] b = null;
try {
b = base.decodeBuffer(pass);
} catch (IOException e) {
e.printStackTrace();
}
return new String(b);
}
}
package org.rui.base64;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Md5 {
/**
* @param args
*/
public static void main(String[] args) {
String pass="1234";
byte[] b=getDigest(pass.getBytes());
//System.out.println("md5"+new String(b));
Base64 b64= new Base64();
pass=b64.encode(b);
//System.out.println("md5加密后再base64:"+pass);
//db 假如数据库密码为
String dbpass="gdyb21LQTT8229gxPtBV";
System.out.println(pass);
System.out.println(dbpass);
System.out.println("密码是否一致:"+pass.equals(dbpass));
}
//MD5加密
public static byte[] getDigest(byte[] b){
try {
MessageDigest md=MessageDigest.getInstance("MD5");
md.update(b);
return md.digest();
} catch (NoSuchAlgorithmException e) {
//FIXME:DDD
e.printStackTrace();
}
return null;
}
}
package snail.su.rui.util;
import java.security.MessageDigest;
public class Md5 {
public final static String MD5(String s){
char hexDigits[]={‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘9‘,‘7‘,‘8‘,‘6‘,
‘l‘,‘i‘,‘a‘,‘n‘,‘g‘,‘r‘};
// char hexDigits[]={‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘,
// ‘h‘,‘e‘,‘g‘,‘k‘,‘e‘,‘f‘};
//e10hkg3949eh59heee56e057f20f883e
try {
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);
} catch (Exception e) {
return null;
}
}
public static void main(String [] args){
String addmd5=Md5.MD5("123456");
System.out.println("123="+addmd5);
if(addmd5.equals("e10adc3949ba59abbe56e057f20f883e")){
System.out.println("Md5.main()");
}
}
}
java 内置base64+md5加密运用代码,及指定字符md5加密代码
原文:http://blog.csdn.net/liangrui1988/article/details/19011713