- 浏览: 439367 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
CmdSmith:
这么构建出来的应该都是完全二叉树吧。。
java实现二叉树的构建以及3种遍历方法 -
haoyuan2012:
非常好,很受益
java实现二叉树的构建以及3种遍历方法 -
haizhiguang:
请问楼主是如何想到 nodeList.get(parent ...
java实现二叉树的构建以及3种遍历方法 -
Angry_Icarus:
赞赞赞
java实现二叉树的构建以及3种遍历方法 -
lilin9043:
刚刚用这个 不会用
UrlRewrite时需要注意的问题:action以及正则表达式
package com.cdl.test; import java.security.MessageDigest; import java.util.Arrays; /** * 功能:测试MessageDigest的MD5<BR> * 参考:http://apps.hi.baidu.com/share/detail/20189800<BR> * http://zhidao.baidu.com/question/163063912.html<BR> * @author ocaicai@yeah.net<BR> * @date 2011-12-7<BR> * @version 1.0 <BR> * */ public class TestMD5 { /** * @param args */ public static void main(String[] args) throws Exception { String md5 = getMD5Mask("cdl"); System.out.println(md5); /** * 输出结果:<BR> * [11, 29, -82, -22, -37, -62, 17, 60, -93, 96, 38, 93, -58, 0, -91,14]<BR> * 0b 1d ae ea db c2 11 3c a3 60 26 5d c6 00 a5 0e * */ } /** * 1. byte(8位有符号)的取值范围是 -128-127, char(16位无符号)的取值范围是0-65535;<BR> * 2.如果一个byte对应的十六进制数只有一位前面要用0填充,因为MD5是32位的,达到统一的格式<BR> * 3.0x是十六进制的标示,比如:0xFF表示8位的二进制1111 1111;0x00FF表示16位的二进制0000 0000 1111 1111 * */ public static String getMD5Mask(String str) throws Exception { MessageDigest messageDigest = null; // 获得一个肚子 messageDigest = MessageDigest.getInstance("MD5"); // 把肚子清空 messageDigest.reset(); // 在肚子里放入东西 messageDigest.update(str.getBytes("UTF-8")); // 消化放入的东西得到目标营养 byte[] byteArray = messageDigest.digest(); System.out.println(Arrays.toString(byteArray)); StringBuffer md5StrBuff = new StringBuffer(); for (int i = 0; i < byteArray.length; i++) { if (Integer.toHexString(0xFF & byteArray[i]).length() == 1) md5StrBuff.append("0").append( Integer.toHexString(0xFF & byteArray[i])); else md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i])); } return md5StrBuff.toString(); } }
添加一个查看byte二进制位的功能
package com.cdl.test; import java.security.MessageDigest; import java.util.Arrays; /** * 功能:测试MessageDigest的MD5<BR> * 参考:http://apps.hi.baidu.com/share/detail/20189800 * * @author ocaicai@yeah.net<BR> * @date 2011-12-7<BR> * @version 1.0 <BR> * */ public class TestMD5 { /** * @param args */ public static void main(String[] args) throws Exception { String md5 = getMD5Mask("cdl"); System.out.println(md5); /** * 输出结果:<BR> * [11, 29, -82, -22, -37, -62, 17, 60, -93, 96, 38, 93, -58, 0, -91,14]<BR> * 0b 1d ae ea db c2 11 3c a3 60 26 5d c6 00 a5 0e * */ } /** * 参考:http://zhidao.baidu.com/question/163063912.html<BR> * 1. byte(8位有符号)的取值范围是 -128-127, char(16位无符号)的取值范围是0-65535,<BR> * 所以需要& 0xFF 使得byte原来的负值变成正的;<BR> * 2.如果一个byte对应的十六进制数只有一位前面要用0填充,因为MD5是32位的,达到统一的格式<BR> * 3.0x是十六进制的标示,比如:0xFF表示8位的二进制1111 1111;0x00FF表示16位的二进制0000 0000 1111 1111 * */ public static String getMD5Mask(String str) throws Exception { MessageDigest messageDigest = null; // 获得一个肚子 messageDigest = MessageDigest.getInstance("MD5"); // 把肚子清空 messageDigest.reset(); // 在肚子里放入东西 messageDigest.update(str.getBytes("UTF-8")); // 消化放入的东西得到目标营养 byte[] byteArray = messageDigest.digest(); System.out.println(Arrays.toString(byteArray)); StringBuffer md5StrBuff = new StringBuffer(); String bitArray = null; for (int i = 0; i < byteArray.length; i++) { bitArray = Integer.toBinaryString(byteArray[i]); if (bitArray.length() > 8) { System.out.println(bitArray.substring(24)); } else System.out.println(bitArray); if (Integer.toHexString(0xFF & byteArray[i]).length() == 1) md5StrBuff.append("0").append( Integer.toHexString(0xFF & byteArray[i])); else md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i])); } return md5StrBuff.toString(); } }
输出:
[11, 29, -82, -22, -37, -62, 17, 60, -93, 96, 38, 93, -58, 0, -91, 14] 1011 11101 10101110 11101010 11011011 11000010 10001 111100 10100011 1100000 100110 1011101 11000110 0 10100101 1110 0b1daeeadbc2113ca360265dc600a50e
.
发表评论
-
采用Client/Server模型理解回调callback
2012-04-22 11:38 4459关于回调早就听说过,但是不曾理解过,周日的上午外面阳光灿烂,我 ... -
java源文件夹打包
2012-04-01 12:49 1218有时候我们可能需要修改源文件来适应自己的需求 案 ... -
使用命令行的方式启动Mina
2012-02-29 09:50 0/** * 使用命令行的方式启动Mina ... -
二进制基础(负数转二进制)
2011-10-30 14:49 2219比如,假设有一 int 类型的数,值为5,那么,我们知道它在计 ... -
java.util包的集合框架应用
2011-10-27 23:19 1336package mix.test; import j ... -
对Entity的未用字段进行借鸡下蛋
2011-09-20 15:00 1247. 1.实体 public class Image ... -
不要再困扰在String与StringBuffer(StringBuilder)的区别上鸟
2011-06-29 16:44 1176无论是初学者还是在java ... -
在myeclipse8.5中导出uml类图
2011-06-21 19:59 1502百度一下:myeclipse类图 . http://wenk ... -
用一下UML建模工具Rational Rose以及类图的基本关系
2011-06-09 14:24 10768. 基本的类图关系: 编码实现: packa ... -
统计某一数组中重复数字的次数
2011-04-28 18:15 5707. 今天上谯老师软件项目管理方法与实践课时给出了一个他曾经留 ... -
模仿String.indexOf,判断一个字符串是否包含另一个字符串
2011-04-26 15:42 4320. 目录: 一.方法介绍 二.图示意 三.源代码 一.方法 ... -
在MyEclipse中添加Java、Struts...源码
2011-03-09 15:14 1154三种方法: 第一种: “window”-> " ... -
使用接口的核心原因:为了向上转型为多个基类型,以及由此带来的灵活。
2010-12-01 13:45 1174package thinkingInJava.interf ... -
后台打印在参看程序执行流程中的重要作用
2010-11-15 13:19 1007附注:在每个方法里打印”进入这个方法、方法的名称”,这样 ... -
自定义类中2个元素的比较升级到3个元素的比较
2010-10-28 23:26 1241可以先参考一下前面的一篇文章:为了比较,让自己的类实现Comp ... -
给你一个字符串,包含了空格等标点符号,要你计算出出现次数最多的字母和该字母出现的次数。
2010-10-26 23:59 2822关于Map.Entry可以参看在容器中使用增强的for循环, ... -
在容器中使用增强的for循环,简洁大气,结构清晰
2010-10-26 21:44 1505除了增强的for循环使代 ... -
求模( Modulus )与求余(Remainder) (转)
2010-10-26 17:37 2466import java.math.BigInteger; ... -
今天非常高兴,解决了一个由来已久的单词出现频率统计问题。以及容器浅总结
2010-10-26 16:33 2693总述:人与动物的最大 ... -
为了比较,让自己的类实现Comparable接口,重写compareTo
2010-10-26 14:56 20806首先需要实现带泛型的Comparable接口,按照自己想要 ...
相关推荐
在Java编程中,MD5工具类(如提供的`Md5Util.java`)是用于简化MD5加密过程的实用程序。以下是一些关于MD5工具类的关键知识点: 1. **MD5原理**:MD5算法基于信息摘要理论,它通过特定的数学运算对输入数据进行处理...
MD5转换小工具的使用方法通常非常简单。用户只需选择要检查的文件,工具就会自动计算并显示该文件的MD5哈希值。对于文本,可以直接在工具的输入框内输入,点击计算即可得到MD5值。这些工具通常还支持其他散列算法,...
JavaScript中的MD5加密工具类是用于对数据进行安全哈希的一种方法,广泛应用于密码存储、数据完整性校验等场景。MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它能将任意长度的输入转化为固定长度的...
以下是一个简单的Java MD5加密工具类示例: ```java import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Util { private static final String MD5 = "MD5"; ...
1. **内置命令行工具**:在终端(Terminal)中,用户可以使用`md5`命令来计算文件的MD5值。例如,输入`md5 /path/to/your/file`,然后按回车,终端会显示该文件的MD5摘要。 2. **第三方应用**:`MD5.app`这样的应用...
总之,MD5加密工具源码提供了一种便捷的方式来实现MD5哈希运算,无论是为了验证数据完整性还是进行其他用途,了解其工作原理和使用方法都是十分重要的。通过阅读和理解源代码,开发者可以自定义功能,更好地满足项目...
在实际应用中,如果一个工具能修改文件的MD5值,那么可能需要谨慎使用,因为这可能被用于恶意目的,比如伪造文件的完整性。 "文件MD5碰撞工具"的版本为2.0.1.1,这表明它是经过多次迭代和更新的产品,可能包含了...
Java工具类,它不仅实现了MD5加密,更创新性地接纳String... inputStrs,让你能一次性加密多个字符串。 1. 一键加密,多值无忧 告别繁杂,拥抱简洁。我们的Java MD5加密工具类以String... inputStrs为武器,打破了...
md5生成及校验工具,md5生成及校验工具,md5生成及校验工具
2. **比较MD5值**:用户获取到文件的官方MD5值(通常在文件发布者提供的文本文件中),然后使用MD5工具计算下载的文件的MD5值。如果两个值完全相同,说明文件是完整的;如果有任何差异,那就意味着文件可能已经改变...
例如,在下载大型文件后,用户可以使用MD5生成工具计算下载的文件与原始源文件的MD5值,如果两者相同,说明下载过程中文件没有被篡改或损坏。 MD5生成工具通常具有以下功能: 1. 文件MD5计算:用户可以选择本地...
在实际使用中,MD5工具不仅可以用于文件完整性校验,还可以用于密码存储(尽管由于MD5的安全性问题,现在较少使用)、数据签名验证以及作为数据库中存储数据的唯一标识。然而,需要注意的是,由于MD5碰撞攻击的发现...
1. 下载文件后,使用MD5验证工具打开该文件。 2. 工具会自动计算文件的MD5值,并显示在界面上。 3. 检查此计算出的MD5值是否与官方提供的MD5校验值一致。 4. 如果两者匹配,说明文件完整无误;如果不符,则可能存在...
总的来说,MD5修改工具是一个技术性的辅助工具,它揭示了MD5哈希算法的局限性,同时也提供了一种改变哈希值的方法。在理解其工作原理和应用场景的基础上,我们可以合理利用它来满足特定需求,同时也要意识到潜在的...
5. **使用方法**:用户通常只需将文件拖放到工具界面或者通过菜单选择文件,然后工具会自动计算并显示MD5值。对于收费的查询,用户可能需要注册账户并充值,才能访问更多的MD5数据库资源。 6. **安全性**:尽管MD5...
通过了解MD5的基本原理和使用方法,用户可以有效地检测文件的完整性和一致性,防止数据被篡改。同时,对于MD5比较工具的使用,理解配置文件和可执行文件的作用也是至关重要的,这有助于用户更好地管理和优化工具的...
1. **文件校验**:下载大文件后,可以使用MD5检测工具比对下载的文件与源文件的MD5值,确保文件在传输过程中没有损坏或被恶意修改。 2. **软件安装**:许多软件发布者会在下载页面提供软件的MD5值,用户可以在安装...
4. **MD5工具的使用**:MD5加解密工具通常是一个图形化界面的应用程序,用户可以直接在工具中输入文本或者选择文件,点击计算按钮,工具会显示对应的MD5哈希值。此外,也有一些在线服务提供MD5计算,方便用户快速...
MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它能够将任意长度的信息映射为固定长度的输出,通常是一个128位的二进制数,以32位十六进制数的形式表示。在信息技术领域,MD5常常用于数据校验和密码...