首页 > 代码库 > UUID,加密解密算法的使用

UUID,加密解密算法的使用

注意的地方:

Base64Encoder,Base64Decoder并不属于JDK标准库范畴,但是又包含在了JDK中

解决方法:按照如下方法设置Eclipse导入%JAVA_HOME%\jre\lib目录下的rt.jar包即可,Project->Properties,选择Java Build Path设置项,再选择Libraries标签,Add External Jars添加%JAVA_HOME%\jre\lib\rt.jar就可以使用啦!

如果在使用BASE64Decoder时遇到了这种情况:Access restriction : The type BASE64Decoder is not accessible due to restriction on required library C:\Program 
files\java\jre6\lib\rt.jar ,只需要在project build path中先移除JRE System Library,再添加库JRE System Library就行了

具体代码如下:

package leetcode;import java.io.IOException;import java.math.BigInteger;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.util.UUID;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;public class Test12 {	public static String getId(){		//UUID java中不重复序列		String id = UUID.randomUUID().toString();		//System.out.println(id);		//得到的这个序列号很长,可以用哈希码来表示		int hashCode = Math.abs(id.hashCode());		return hashCode+"";	}		//md5加密算法,单向加密,没有解密的			public static String md5(String str){			byte[] bytes = null;			try {				bytes = MessageDigest.getInstance("md5").digest(str.getBytes());//得到MD5的实例,再将字符串加密			} catch (NoSuchAlgorithmException e) {				e.printStackTrace();			}			return new BigInteger(1,bytes).toString(16);//把字节数组转化为正的bigInteger,然后变成16进制表示		}				//base64算法,解密,加密		public static String base64Encode(String str){			BASE64Encoder baseEncode = new BASE64Encoder();			return baseEncode.encode(str.getBytes());//加密		}		public static String base64Decode(String str){			BASE64Decoder baseDecoder = new BASE64Decoder();			try {				return new String(baseDecoder.decodeBuffer(str));//解密			} catch (IOException e) {				e.printStackTrace();			}			return null;		}		public static void main(String[] args) {		System.out.println(getId());		System.out.println("1234加密后:"+md5("1234"));		String str = base64Encode("1234");		System.out.println("1234加密后:"+str);		System.out.println("解密后:"+base64Decode(str));	}}

 

运行结果如下:

888859973
1234加密后:81dc9bdb52d04dc20036dbd8313ed055
1234加密后:MTIzNA==
解密后:1234

UUID,加密解密算法的使用