码迷,mamicode.com
首页 > 编程语言 > 详细

MD5加密算法(信息摘要算法)、Base64算法

时间:2017-06-04 12:57:54      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:str   防止乱码   div   throw   ring   ace   put   tom   md5加密   

 

1 什么是MD5

  信息摘要算法,可以将字符进行加密,每个加密对象在进行加密后都是等长的

  应用场景:将用户密码经过MD5加密后再存储到数据库中,这样即使是超级管理员也没有能力知道用户的具体密码是多少;因为MD5加密后的数据时不能够被解密的

  步骤:

    》获取MessageDigest对象

      MessageDigest md5 = MessageDigest.getInstance("MD5");

      注意:import java.security.MessageDigest;

    》通过MessageDigest对象的方法对字符数组进行加密

      byte [] output = md5.digest(str.getBytes());

      注意:digest方法的参数和返回值都是字符数组类型

    》问题:通过加MD5加密后的数据时乱码,怎么让他变成不是乱码

    》解决:通过Base64算法

 

2 什么是Base64

  对字符串进行显示处理,即:用常见的64个字符来对字符进行显示,从而有效地避免了乱码问题

  应用场景:防止乱码的产生

  步骤:

    》直接使用Base64类中的静态方法

      str_output = Base64.encodeBase64String(output);

      注意:encodeBase64String方法的参数是字符数组,返回值是字符串

      注意:import org.apache.tomcat.util.codec.binary.Base64;

 

3 MD5 和 Base64 综合应用简例

技术分享
 1 package cn.xiangxu.testNote.test;
 2 
 3 import java.security.MessageDigest;
 4 
 5 import org.apache.tomcat.util.codec.binary.Base64;
 6 
 7 public class Test {
 8     public static String md5(String str) throws Exception {
 9         try {
10             MessageDigest md5 = MessageDigest.getInstance("MD5");
11             System.out.println("md5对象:" + md5);
12             System.out.println("原始数据:" + str);
13             
14             byte [] output = md5.digest(str.getBytes());
15             String str_output = new String(output);
16             System.out.println("加密后数据:" + str_output);
17             
18             str_output = Base64.encodeBase64String(output);
19             System.out.println("处理后的加密数:" + str_output);
20         } catch (Exception e) {
21             e.printStackTrace();
22             throw new Exception(e);
23         }
24         return null;
25     }
26     
27     public static void main(String[] args) throws Exception {
28         Test.md5("dd");
29     }
30     
31     
32 }
View Code

 

MD5加密算法(信息摘要算法)、Base64算法

标签:str   防止乱码   div   throw   ring   ace   put   tom   md5加密   

原文地址:http://www.cnblogs.com/NeverCtrl-C/p/6939891.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!