博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
加密解密算法
阅读量:6566 次
发布时间:2019-06-24

本文共 2223 字,大约阅读时间需要 7 分钟。

hot3.png

1.MD5

package com.ninemax.utils.tools;import java.math.BigInteger;import java.security.MessageDigest;/** * Created by AckMan on 2016/9/6. * * 源数据MD5加密比较,不可解密 * * MD5是一种不可逆的摘要算法 */public class MD5Utils {    public static String md5Encode(String str){        byte [] result = null;        if(str.isEmpty()){            return  null;        }        try {            System.out.println("加密前:" + str);            result = MessageDigest.getInstance("md5").digest(str.getBytes("utf-8"));            System.out.println("加密后:" + new BigInteger(1, result).toString(16));        } catch (Exception e) {            e.printStackTrace();        }        return new BigInteger(1, result).toString(16);    }    public static void main(String args[]){       md5Encode("darker");    }}

MD5运行结果

加密前:darker加密后:ea225ae75583177eba676db77e3af75d

2.Base64

package com.ninemax.utils.tools;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;import java.io.IOException;import java.io.UnsupportedEncodingException;/** * Created by AckMan on 2016/9/6. * * Base64是一种编码方式 */public class Base64Utils {    public static String encode(String str){        if(str.isEmpty()){            return  null;        }        BASE64Encoder encoder = new BASE64Encoder();        try {            System.out.println("加密前:" + str);            String result =  encoder.encode(str.getBytes("utf-8"));            System.out.println("加密后:" + result);            return encoder.encode(str.getBytes("utf-8"));        } catch (UnsupportedEncodingException e) {            e.printStackTrace();        }        return null;    }    public static String decode(String str){        if(str.isEmpty()){            return null;        }        BASE64Decoder decoder = new BASE64Decoder();        try {            System.out.println("解密前:" + str);            byte[] result =   decoder.decodeBuffer(str);            System.out.println("解密后:" + new String(result));        } catch (IOException e) {            e.printStackTrace();        }        return null;    }    public static void main(String args[]){        //encode("darker");        decode(encode("darker"));    }}

Base64运行结果

加密前:darker加密后:ZGFya2Vy解密前:ZGFya2Vy解密后:darker

 

转载于:https://my.oschina.net/Tsher2015/blog/743277

你可能感兴趣的文章
c语言中的位移位操作
查看>>
趋势型指标——MACD
查看>>
object-c语言的nonatomic,assign,copy,retain的区别
查看>>
Ubuntu12.04版本安装arm-linux-gcc 4.3.3
查看>>
js 正则之检测素数
查看>>
linux-多线程
查看>>
中国版 Ubuntu Kylin 14.04 LTS 麒麟操作系统中文版发布下载 (Ubuntu天朝定制版)
查看>>
hdu-----(4514)湫湫系列故事——设计风景线(树形DP+并查集)
查看>>
第40周二
查看>>
用户注册
查看>>
使用虚拟机运行Ubuntu时,主机与宿主机共享文件的方法。
查看>>
做一个略调皮的个人主页--相册与随笔篇
查看>>
EJB究竟是什么,真的那么神奇吗??
查看>>
Python 转义符
查看>>
海茶3 らぶデス3 入门经典教程
查看>>
pstree命令
查看>>
css选择器顺序的小技巧
查看>>
C#之自己定义的implicit和explicit转换
查看>>
dojo 学习笔记之dojo.query - query(id) 与query(class)的差别
查看>>
Java基础加强总结(三)——代理(Proxy)
查看>>