自己利用java类库中MessageDigest类写的2种简单加密,另外一个是利用apache中插件写用Base64加密,Base64加密还可以利用sun公司提供给内部人员用的sun.misc.BASE64Encoder来写.
1.MD5和SHA加密
package com.service;
import java.math.BigInteger;
import java.security.MessageDigest;
public class MD5AndSHA
{
public static void main(String[] args)
{
String str="123";
System.out.println("原密码:"+str);
String str2 = encode(str,"MD5");
System.out.println("MD5加密:"+str2);
String str3= encode(str,"SHA");
System.out.println("SHA加密:"+str3);
}
public static String encode(String input,String digest)
{
MessageDigest md= null;
String output=null;
try
{
md=MessageDigest.getInstance(digest);
md.update(input.getBytes());
output = new BigInteger(1,md.digest()).toString(16).toUpperCase();
} catch (Exception e)
{
e.printStackTrace();
}
return output;
}
}
结果:
原密码:123
MD5加密:202CB962AC59075B964B07152D234B70
SHA加密:40BD001563085FC35165329EA1FF5C5ECBDBBEEF
2.Base64加密
package com.service;
import org.apache.commons.codec.binary.Base64;
public class Base64Text
{
public static void main(String[] args)
{
String str="123";
Base64 base =new Base64();
String output= base.encode(str.getBytes()).toString();
System.out.println(output);
String input =base.decode(str.getBytes()).toString();
System.out.println(input);
}
}
结果:
[B@1d95492
[B@13f7281