1. import java.security.MessageDigest;
  2. import java.util.Locale;
  3. public class MD5Util {
  4. public static String encode(String content) {
  5. try {
  6. MessageDigest digest = MessageDigest.getInstance("MD5");
  7. digest.update(content.getBytes());
  8. return getEncode16(digest);
  9. //return getEncode32(digest);
  10. } catch (Exception e) {
  11. }
  12. return null;
  13. }
  14. /**
  15. * 32位加密
  16. * @param digest
  17. * @return
  18. */
  19. private static String getEncode32(MessageDigest digest) {
  20. StringBuilder builder = new StringBuilder();
  21. for (byte b : digest.digest()) {
  22. builder.append(Integer.toHexString((b >> 4) & 0xf));
  23. builder.append(Integer.toHexString(b & 0xf));
  24. }
  25. //return builder.toString().toLowerCase(); // 小写
  26. //return builder.toString().toUpperCase(); // 大写
  27. // java.lang.String.toUpperCase(Locale locale) 方法将在此字符串中的所有字符为大写的规则给定的Locale.
  28. //return builder.toString().toUpperCase(Locale.getDefault()); // 大写
  29. return builder.toString();
  30. }
  31. /**
  32. * 16位加密
  33. * @param digest
  34. * @return
  35. */
  36. private static String getEncode16(MessageDigest digest) {
  37. StringBuilder builder = new StringBuilder();
  38. for (byte b : digest.digest()) {
  39. builder.append(Integer.toHexString((b >> 4) & 0xf));
  40. builder.append(Integer.toHexString(b & 0xf));
  41. }
  42. // 16位加密,从第9位到25位
  43. //return builder.substring(8, 24).toString().toUpperCase();
  44. return builder.substring(8, 24).toString();
  45. }
  46. }
  47. 参考:http://jiewushanshan.lofter.com/post/cf538_1d903d
  48. http://blog.csdn.net/lincyang/article/details/5709189

字符串的MD5的32位加密和16位加密的更多相关文章

  1. MD5、SHA1加密java 16位32位

    MD5.SHA1加密java 16位32位 import java.math.BigInteger; import java.security.MessageDigest; public class ...

  2. 图解单片机8位PWM、16位PWM中“位”的含义!

    今天 发现很多同学 搞不懂单片机的pwm中的位表示什么意思,如很多同学会问“8位pwm.16位pwm是什么意思啊,它们有什么区别啊,其中的‘位’表示什么意思啊”.对于这些问题,今天就给大家解释下,由于 ...

  3. 阿里云虚拟主机MYSQL加密长度16位变61位

    将网站迁移到阿里云虚拟主机后, 用户登录都提供密码错误, 一查询才发现MYSQL PASSWORD加密结果不致, 只有16位, 解决办法,在执行PASSWORD查询前,执行set old_passwo ...

  4. angular 输入框自动绑定值最长为16位,超过16位则会报错

    最近发现angular在使用input输入框的ng-model绑定scope变量的时候,发现,输入长串的数字将会出错.代码如下: <html> <head> <meta ...

  5. 16位的MD5加密和32位MD5加密的区别

    16位的MD5加密和32位MD5加密的区别 MD5加密后所得到的通常是32位的编码,而在不少地方会用到16位的编码它们有什么区别呢?16位加密就是从32位MD5散列中把中间16位提取出来!其实破解16 ...

  6. 整理常用加密 iOS 与 Android 加密 MD5-SHA1

    1.MD5算法 不可逆 128位或者64位串,byte数字长度就是16和8,一般表示是使用16进制来表示的话,1个byte转换成2个16bit,分别表示高地位,所以生成的字符串是16位或者是32位的, ...

  7. AM335X用RGB888连接LCD如何以16位色彩模式显示图片

    在AM335x中,在连接显示屏的时候,存在一个问题.这个在am335x Sillicon Errata已经提到过 在RGB888模式中   而对于RGB565模式的硬件连接 不难看出,这个RGB是反的 ...

  8. 24位PCM采样数据转成16位算法,已实现PCM转WAV在线工具源码支持24bits、16bits、8bits

    目录 算法来源 js版24位PCM转8位.16位代码 js版8位.16位PCM转成24位 附:浏览器控制台下载数据文件代码 相关实现 最近收到几个24位的PCM录音源文件,Recoder库原有的PCM ...

  9. 16位结构的CPU,8086给出物理地址的方法

    .16位结构的CPU 概括地讲,16位结构(16位机,字长为16位等常见说法,与16位结构的含义相同)描述了一个CPU具有下面几方面结构特性: 1.运算器一次最多可以处理16位的数据结构 2.寄存器的 ...

随机推荐

  1. php实现两分法查找

    两分法查找的前提:顺序方式存储,而且必须是排好序 直接上代码: function search($array, $target, $low = 0, $high = 0){ $len = count( ...

  2. javascript 中字符串之比较

    <script type="text/javascript"> var string1="apple"; var string2="Ban ...

  3. zend framework安装中出现的问题与总结

    1.按照官方的教程来做http://framework.zend.com/manual/current/en/user-guide/skeleton-application.html 但其中有些步骤没 ...

  4. 对web应用中单一入口模式的理解及php实现

    在我们web应用的开发中,经常会听见或看见单一入口模式,在我开始学习tp框架的时候也不理解为什么要运用一个单一入口模式,只是会使用,最近自己在搞一个小东西的时候才明白为什么在web开发中要运用单一入口 ...

  5. centos 6.7 perl 版本 This is perl 5, version 22 安装DBI DBD

    <pre name="code" class="cpp">centos 6.7 perl 版本 This is perl 5, version 22 ...

  6. spring bean之间的关系:继承;依赖

    概要: ' 继承Bean配置 Spring同意继承bean的配置,被继承的bean称为父bean,继承这个父Bean的Bean称为子Bean 子Bean从父Bean中继承配置,包含Bean的属性配置 ...

  7. WebStorm 7.0 注冊码

    经測试 WebStorm 6 7均能够使用例如以下注冊码,简直就是神key啊! WebStorm 6.0 7.0 注冊码 User Name: EMBRACE   License Key: ===== ...

  8. How To Set Dark Theme in Visual Studio 2010

    Want to use the visual studio color theme editor to set the dark theme or other themes? Below shows ...

  9. 将图片文件以byte的形式从导数据库中

    byte[] FileByteArray = new byte[FileLength];  //图象文件临时储存Byte数组                 //Stream StreamObject ...

  10. Android学习笔记_点九绘图与软键盘和事件传递

    最近项目里遇到的几个小问题,以前只是用吗没有深入看过,现在总结到一起,防止以后这种小问题占用太多时间.还是通过网上别人总结的很多博客学习了,挑选出最易懂明了的. 还有leader很小的问题都不放过,亲 ...