文章目录

    • 1. 加密方式
    • 2. 加密后的格式
  • 代码收录

1. 加密方式

MD5一般的加密方式是下面这种方式

    public String Md5(String str) {if (str.equals("")) {return null;}try {byte[] btInput = str.getBytes();// 获得MD5摘要算法的 MessageDigest 对象MessageDigest digest = MessageDigest.getInstance("MD5");// 使用指定的字节更新摘要digest.update(btInput);// 获得密文byte[] md = digest.digest();return ByteUtil.byte2HexStr(md, 16);} catch (NoSuchAlgorithmException e) {e.printStackTrace();}return null;}

测试加密结果如下

原文:123456
md5 16位:965EB72C92A549DD
md5 32位:96E79218965EB72C92A549DD5A330112

为了加密的强度需要我们一般使用两次md5

如下所示

  public String Md5Twice(String str) {if (str.equals("")) {return null;}try {byte[] btInput = str.getBytes();// 获得MD5摘要算法的 MessageDigest 对象MessageDigest digest = MessageDigest.getInstance("MD5");// 使用指定的字节更新摘要digest.update(btInput);// 获得密文byte[] md = digest.digest();// 两次md5digest.update(md);byte[] md2 = digest.digest();return ByteUtil.byte2HexStr(md2, 16);} catch (NoSuchAlgorithmException e) {e.printStackTrace();}return null;}

测试结果如下

![md5](D:\github\csdn\加解密\md5.png)原文:123456
md5 twice 16位:5A03F812751F504C
md5 twice 32位:4280D89A5A03F812751F504CC10EE8A5

2. 加密后的格式

MD5 加密后的位数一般为两种,16 位与 32 位。16 位实际上是从 32 位字符串中,取中间的第 9 位到第 24 位的部分,用 Java 语言来说,即:

str.substring(8, 24);

MD5 加密后的字符串又分为大写与小写两种。

所以一个 “123456” 字符串,MD5 加密后的结果类型有这些:

代码收录

https://github.com/ddsbear/AnyTool_Android

MD5加密方式和MD5加密后的类型(16位和32位)相关推荐

  1. python2 md5加密_Python的加密方式:MD5加密

    Python的加密方式:MD5加密 1.MD5加密 MD5加密是常用的一种加密方式,不可逆,在日常的字符串加密,请求报文加密中经常用到. Python使用MD5加密使用的是Python自带的模块has ...

  2. 写给小白的常见三种加密方式:MD5,对称非对称加密

    我们在做数据类传输产品或测试的过程中,总会听到开发说数据要加密,然后使用各种加密方式,那么希望通过本文,能够让大家对一些常见的加密方式有一些更加深入的了解,理解其中的底层逻辑. 今天介绍三种常见的加密 ...

  3. php中常用的几种加密方式以及md5加密漏洞以及解决方案

    一.md5(php中的最常用的加密方式) 在用md5进行加密时,至少要将md5加密两次以上(包含两次),或者再加上盐进行加密 二.password_hash(php5.5以上版本才可以使用) 官方说明 ...

  4. MD5算法加密~16位、32位、64位

    MD5的全称是Message-Digest Algorithm 5(信息-摘要算法). MD5算法加密~16位.32位.64位. 1991年,由Ronald L. Rivest开发出来,经MD2.MD ...

  5. python post请求rsa加密_Python的加密方式:RSA加密

    Python的加密方式:RSA加密 RSA加密是一种非对称加密,通常使用公钥加密,私钥解密,私钥签名,公钥验签. 在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)S ...

  6. admin密码对应的MD5值,16位和32位,admin解密自己留着方便.

    admin密码对应的MD5值,16位和32位,自己留着方便.admin的md5值是多少,常用密码加密md5值,123456,admin,admin888 如果遇到MD5加密文件(一般都是这个),而又不 ...

  7. qemu+linux+x86+64,qemu以64位跟32位的方式跑busybox

    qemu以64位和32位的方式跑busybox 两种方式x86_64 和32位的i386方式 -----------x86_64------------------------------------ ...

  8. admin及admin888 经过 md5加密后16位和32位代码

    下面是 admin 的加密代码: 16位加密:7a57a5a743894a0e 32位加密:21232f297a57a5a743894a0e4a801fc3 admin888的MD5加密码 16位:4 ...

  9. Java代码加密,Java加密方式,Java加密使用说明

    概述 Java2C针对DEX文件进行加密保护,将DEX文件中标记的Java代码翻译为C代码,编译成加固后的SO文件.默认情况只加密activity中的onCreate函数,如果开发者想加密其它类和方法 ...

最新文章

  1. 电脑学习方法_怎样快速学习和熟悉电脑知识?|从小白到大神的快捷方法
  2. 【Qt】Qt登录对话框(纯代码实现)
  3. Terrafugia希望在今年夏天带来真正可飞的Airplane
  4. Java SimpleTimeZone setEndRule()方法与示例
  5. Token Based Authentication using ASP.NET Web API 2, Owin, and Identity
  6. Mac上crontab与/etc/crontab定时任务
  7. 【渝粤题库】国家开放大学2021春2605经济法律基础题目
  8. (译)cocos2d精灵教程:第三部分
  9. linux启动 mongo 不了问题
  10. 有关csdn博客账号注销说明
  11. 编写java判断闰年_Java 判断闰年代码实例
  12. YarnAllocator:Container killed by YARN for exceeding memory limits. spark.yarn.executor.memoryOverhe
  13. 群晖挂载玩客云网络磁盘
  14. 人为什么要学数学 ——数学意义的哲学思考
  15. 嵌入式Web项目(二)——CGI的引入
  16. 《编外知识》之“幸存者偏差”
  17. 企业打造顶级研究院的最优路径是什么?
  18. 让我们一起开发【菜谱系统】吧,滚雪球学 Python 第三轮项目计划
  19. 太空飞行计划问题 网络流24题(2/24)
  20. part 8: comparison between OOL and FL

热门文章

  1. cad调了比例因子没反应_如何在CAD中引用外部图片
  2. 戴尔笔记本如何查看HTML代码,戴尔笔记本win7系统如何查看电脑型号
  3. 2019.12.05【ABAP随笔】 分组循环(LOOP AT Group) / REDUCE
  4. php+只能继承一次,php继承相关的一个问题
  5. 90后平均负债12万,剩下的房子谁来接盘?
  6. linux系统取消休眠,Linux关闭休眠和屏保模式
  7. 几个免费下载原版图书的网站收藏
  8. PPT转换成PDF文件的方法
  9. 第三、四章(顾客满意度分析)
  10. RevitAPI入门指南