美文网首页
消息摘要算法之MD5

消息摘要算法之MD5

作者: junjun2018 | 来源:发表于2018-08-20 16:46 被阅读0次

有没有发现MD5 加密之后的长度是一样的,不管原本的信息有多长。这是因为 MD5 是摘要算法,有点类似于从你要加密的信息中选取一部分信息出来加密,所以即使你得到了 MD5 加密之后的结果,也很难从一部分信息中反推出原本的完整信息。另外,MD5 也是存在被破解的情况,那就是最传统的破解方法,从一堆数据中一个个去试。所以, MD5 可以设置一个盐值,类似于干扰信息,可以降低被破解的概率。

jdk提供的MD5加密

package com.jun.MD;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class JDKmd5 {
    private  static String src="ysj";

    public static void main(String[] args) throws NoSuchAlgorithmException {
        jdkMD5();

    }

    public static void jdkMD5() throws NoSuchAlgorithmException {
        //获取实例,执行准换
        MessageDigest md= MessageDigest.getInstance("MD5");
        byte[] digest = md.digest(src.getBytes());

        //将byte[] 转换成16进制输出
        System.out.println(bytes2hex(digest));

    }
  
    //将字节数组转换成16进制方法
    public static String bytes2hex(byte[] bytes)
    {
        final String HEX = "0123456789abcdef";
        StringBuilder sb = new StringBuilder(bytes.length * 2);
        for (byte b : bytes)
        {
            // 取出这个字节的高4位,然后与0x0f与运算,得到一个0-15之间的数据,通过HEX.charAt(0-15)即为16进制数
            sb.append(HEX.charAt((b >> 4) & 0x0f));
            // 取出这个字节的低位,与0x0f与运算,得到一个0-15之间的数据,通过HEX.charAt(0-15)即为16进制数
            sb.append(HEX.charAt(b & 0x0f));
        }

        return sb.toString();
    }

}
//结果
805309b2a84c9550d62718f314d7b2ff

常见情况将密码进行加密存储到数据库,来保证密码安全。

相关文章

  • MD5(MD5 消息摘要算法)

    MD5(MD5 消息摘要算法) MD5 简介 MD5 消息摘要算法(MD5 Message-Digest Algo...

  • hashlib hmac模块

    一、hashlib md5和sha算法通过消息摘要算法生成定长的消息摘要,消息摘要算法是不可逆的。但同一段消息通过...

  • MD5/DES/RSA/SHA/BASE64

    MD5:全称是Message Digest Algorithm(消息摘要算法)。MD5是一种摘要算法,作用是让大容...

  • 笔记-MD5加密

    MD5:全称Message Digest Algorithm MD5(消息摘要算法5)   每个文件的MD5值都是...

  • 加密解密的学习与理解

    数字摘要 MD5 Message Digest Algorithm MD5(消息摘要算法第五版),用于确保信息的完...

  • iOS - 简单了解MD5加密

    MD5 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码...

  • Android字符串MD5加密

    MD5概述 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的...

  • dailyLearning -- 移动端常用的加解密方式

    一、MD5 MD5加密, 全称是Message Digest Algorithm 5, 译为“消息摘要算法第5版”...

  • MD5网络使用

    1. MD5 1.1 什么是MD5 全称是Message Digest Algorithm 5,译为“消息摘要算法...

  • 消息摘要算法

    消息摘要算法的主要特点有: 1、无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。例如应用MD5算法摘要的...

网友评论

      本文标题:消息摘要算法之MD5

      本文链接:https://www.haomeiwen.com/subject/dnpliftx.html