本文实例讲述了java实现的MD5摘要算法。分享给大家供大家参考,具体如下:
package com.soufun.com;
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* @author WHD
*/
public class MD5Test {
// MD5 单向加密
public static void main(String[] args) throws NoSuchAlgorithmException,
UnsupportedEncodingException {
String str = "hellomd摘要算法开始";
System.out.println("原始值" + str);
System.out.println("加密后的" + MD5Test.afterMD5(str));
String digest = MD5Test.afterMD5(str);
System.out.println(digest.equals(MD5Test.afterMD5(str)));
}
public static String afterMD5(String str) throws NoSuchAlgorithmException,
UnsupportedEncodingException {
// 获取MD5 加密对象,还可以获取SHA加密对象
MessageDigest md5 = MessageDigest.getInstance("MD5");
// 将输入的信息使用指定的编码方式获取字节
byte[] bytes = str.getBytes("UTF-8");
// 使用md5 类来获取摘要,也就是加密后的字节
md5.update(bytes);
byte[] md5encode = md5.digest();
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < md5encode.length; i++) {
// 使用&0xff 不足24高位,因为只占了8低位
int val = ((int) md5encode[i]) & 0xff;
if (val < 16) {
buffer.append("0");
}
// 以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。
buffer.append(Integer.toHexString(val));
}
return buffer.toString();
}
}
使用org.apache.commons.codec.digest.DigestUtilsorg.apache.commons.codec.digest.DigestUtils来实现md5加密
在maven中的配置:
<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.4</version> </dependency>
这里注意1.2版本和1.4版本的区别很大,因为1.4中扩展了很多方法.
具体代码如下:
public static String afterMd5(String str){
try {
String md5 = DigestUtils.md5Hex(str.getBytes("UTF-8"));
return md5;
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:
密码安全性在线检测:
http://tools./password/my_password_safe
高强度密码生成器:
http://tools./password/CreateStrongPassword
迅雷、快车、旋风URL加密/解密工具:
http://tools./password/urlrethunder
在线散列/哈希算法加密工具:
http://tools./password/hash_encrypt
在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools./password/hash_md5_sha
在线sha1/sha224/sha256/sha384/sha512加密工具:
http://tools./password/sha_encode
希望本文所述对大家java程序设计有所帮助。
# java
# MD5
# 算法
# java获取手机已安装APK的签名摘要
# Java实现MD5消息摘要算法
# 浅析java消息摘要与数字签名
# 还可以
# 加密工具
# 感兴趣
# 给大家
# 占了
# 来实现
# 所述
# 程序设计
# 高强度
# 加密解密
# 讲述了
# byte
# getInstance
# UTF
# getBytes
# bytes
# SHA
# println
# System
# equals
相关文章:
高端网站建设与定制开发一站式解决方案 中企动力
如何在IIS中新建站点并解决端口绑定冲突?
如何制作一个表白网站视频,关于勇敢表白的小标题?
建站之星如何实现PC+手机+微信网站五合一建站?
建站主机数据库如何配置才能提升网站性能?
微信推文制作网站有哪些,怎么做微信推文,急?
如何制作算命网站,怎么注册算命网站?
如何通过WDCP绑定主域名及创建子域名站点?
潮流网站制作头像软件下载,适合母子的网名有哪些?
建站之星伪静态规则如何设置?
南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?
如何用腾讯建站主机快速创建免费网站?
建站主机与服务器功能差异如何区分?
c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】
,sp开头的版面叫什么?
网站制作报价单模板图片,小松挖机官方网站报价?
如何选择PHP开源工具快速搭建网站?
制作营销网站公司,淘特是干什么用的?
油猴 教程,油猴搜脚本为什么会网页无法显示?
如何通过主机屋免费建站教程十分钟搭建网站?
如何用搬瓦工VPS快速搭建个人网站?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
建站之星多图banner生成与模板自定义指南
宝塔建站后网页无法访问如何解决?
实现虚拟支付需哪些建站技术支撑?
沈阳制作网站公司排名,沈阳装饰协会官方网站?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
常州企业建站如何选择最佳模板?
如何通过智能用户系统一键生成高效建站方案?
网站设计制作公司地址,网站建设比较好的公司都有哪些?
如何选择网络建站服务器?高效建站必看指南
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
详解jQuery停止动画——stop()方法的使用
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
如何在IIS7中新建站点?详细步骤解析
如何在云主机上快速搭建多站点网站?
如何解决VPS建站LNMP环境配置常见问题?
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
建站VPS推荐:2025年高性能服务器配置指南
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
如何打造高效商业网站?建站目的决定转化率
如何通过商城自助建站源码实现零基础高效建站?
建站之星免费版是否永久可用?
建站VPS能否同时实现高效与安全翻墙?
如何有效防御Web建站篡改攻击?
高端建站三要素:定制模板、企业官网与响应式设计优化
,石家庄四十八中学官网?
网站制作模板下载什么软件,ppt模板免费下载网站?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。