MD5算法:尽管已经被破解,但任然广泛应用于各个领域中

如文件校验:当我们下载文件时为了保证文件的安全性,我们能够在其站点上找到相应的md5值进行校验,假设md5值不一致,也就是说文件被人动过(一般都是挂马了),所以文件校验领域应用十分广泛。

如数字签名证书,当我们訪问12306时,常常会出现该站点证书已过期,问你是否继续訪问。在普通情况下是自己的电脑时间设置不对。但除开这样的情况也就是你訪问的站点不是同一个站点。

还有就是当作密钥,这个在我们生活中还算比較的经常使用,由于md5算法开源。我们能够免费使用。并且在没有密钥的情况下破解成本较高,在普通情况下我们都还是採用md5算法

package com.jack.md5;import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;public class MD5Util {public static final String MD5(String src) {//char[] hexDigits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };byte[] input = src.getBytes();try {MessageDigest digest = MessageDigest.getInstance("MD5");//官方说法更新摘要//个人理解:就是找到要加密的字符串,放置到update()中等待digest()方法进行产出//就像是在机器的两头:一头的将原材料放进去,一头是产品的输出//获取输入digest.update(input);//获得产出input = digest.digest();//以下就是进行十六进制的转换int length = input.length;StringBuffer strBuff = new StringBuffer();for(int i = 0;i<length;i++){//将字符转变成相应的ASSIC值int val = ((int)input[i])&0xff;//转变成相应的值后小于4位if(val<16){strBuff.append("0");}strBuff.append(Integer.toHexString(val));
//              strBuff.append(hexDigits[val%16]);}return strBuff.toString();} catch (NoSuchAlgorithmException e) {e.printStackTrace();}return src;}
}

MD5算法了解(JAVA实现)相关推荐

  1. 【建议收藏】MD5 算法的Java Bean

    MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输 ...

  2. MD5算法的Java实现

    文章目录 一.算法原理概述 MD5 即Message-Digest Algorithm 5 (信息-摘要算法5) 基本流程 填充padding 分块 初始化 压缩函数 二.总体结构 三.模块分解 填充 ...

  3. java md5包_JAVA中有没有提供MD5算法的包啊?

    拉莫斯之舞 有,在java.security包的MessageDigest类.例子:import java.security.MessageDigest;public class Test2 {pub ...

  4. java md5 算法实现_Java 实现Md5算法

    package other; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /* ...

  5. md5解密算法 java_MD5算法解密java

    参见英文答案 > Is it possible to recover message from MD5 and Java? [closed]                            ...

  6. Java的MessageDigest类、MD5算法

    什么是MD5算法 MD5讯息摘要演算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码杂凑函数,可以产生出一个128位元(16位元组)的散列值(hash val ...

  7. 基于Java实现的MD5算法实现

    MD5 算法实现 一.算法原理概述 MD5 即 MD5 Message-Digest Algorithm(MD5 消息摘要算法). MD4 (1990).MD5(1992, RFC 1321) 由 R ...

  8. 基于java注册登录MD5算法加盐加密颁发 Token身份令牌使用各种邮箱发送验证码详解雪花算法

    目的作用 == 在项目中,为了防止别人窥视我们的密码通常我们会采取一些加密方式.这里简单介绍一下MD5 加盐加密方法,MD5叫做信息-摘要算法,严格来说不是加密方式,而是信息摘要. 对于可以接触到数据 ...

  9. java 生成md5 8位_Java生成MD5算法

    MD5即Message-Digest Algorithm 5(信息-摘要算法5),是一种用于产生数字签名的单项散列算法. MD5算法的作用是让大容量信息在用数字签名软件签私人密匙前被"压缩& ...

最新文章

  1. 水稻微生物组时间序列分析精讲1-模式图与主坐标轴分析
  2. 让Vagrant在Windwos下支持使用NFS/SMB共享文件夹从而解决目录共享IO缓慢的问题
  3. python opencv 旋转图片
  4. 使用商业模式的九大模块去分析京东的商业模式_商业模式—筑基篇(1)
  5. HTTPS和HTTPS证书
  6. 修改hosts立刻生效不必重启
  7. 编程判断元素归类_如何使用jquery判断一个元素是否含有一个指定的类(class)...
  8. VS2010与.NET4系列 16.ASP.NET 4 Web Forms 更加干净的HTML标记
  9. php 框架效率测试,2017 非标准 PHP 框架性能测试比较
  10. java 注解object_JPA之常用 基本注解
  11. 软件评测-信息安全-应用安全-资源控制-用户登录限制(上)
  12. 再探结构体字节对齐问题
  13. Firebird学习(02):数据库的中文参考资料
  14. Required request body is missing 报错解决
  15. 从IP138上获取数据,查询多个IP的归宿地
  16. 解决跳转ICP备案网页报400的问题
  17. MR-GMMapping:基于高斯混合模型的通信高效多机器人映射系统
  18. Vue2组件间通信——父传子值props
  19. webRTC(二十四):web远程多台android的实现
  20. 书到用时方恨少的Android

热门文章

  1. JSP page指令
  2. python数据结构之二叉树的实现
  3. 域客户端如何定位并登录域控制器
  4. 基于小型GIS的配电设备运行监控系统
  5. SSM-Spring-19:Spring中JdbcTemplate
  6. python3.6安装版本选择
  7. 寄存器位查看小工具.exe
  8. SQLServer 扫盲
  9. 多台linux无密码访问之方法二
  10. linux的一些机制Signal, Fork,