本文目录一览

1,有谁知道MD5加密的原理和过程

文件签名。 MD5在论坛上、软件发布时经常用,是为了保证文件的正确性,防止一些人盗用程序,加些木马或者篡改版权,设计的一套验证系统。每个文件都可以用MD5验证程序算出一个固定的MD5码来。软件作者往往会事先计算出他的程序的MD5码并帖在网上。因此,在网上看到某个程序下载旁注明了MD5码时,可以把它记下来,下载了这个程序后用MD5验证程序计算你所下载的文件的MD5码,和你之前记下MD5码比较,就知道你下的是不是原版了,如果两者相同,那么你所下载的是原版。如果计算出来的和网上注明的不匹配,那么你下载的这个文件不完整,或是被别人动过手脚。 自己写的,不知道讲清楚没有 更详细的资料和WinMD5 V1.1 汉化版(最终版)验证程序下载: http://www1.skycn.com/soft/20348.html 找了点有关的资料: —————————————————— MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。 Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。 MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。 MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现(两个MD5值不相同)。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。 MD5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的, 用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不“知道”用户的密码是什么。

有谁知道MD5加密的原理和过程

2,md5为什么不能解密

MD5的全称是Message-digest Algorithm 5(信息-摘要算法),用于确保信息传输完整一致。在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc,的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是MD2、MD4还是MD5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。虽然这些算法的结构或多或少有些相似,但MD2的设计与MD4和MD5完全不同,那是因为MD2是为8位机器做过设计优化的,而MD4和MD5却是面向32位的电脑。这三个算法的描述和c语言源代码在Internet RFC 1321中有详细的描述(),这是一份最权威的文档,由Ronald L. Rivest在1992年8月向IETF提交。 MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。 所以现在会把一些软件用MD5加密后,你下载下再用MD5工具查看,如果与提供的MD5编码相同就是原来的,如果不同就是此文件已被修改过~~~

md5为什么不能解密

3,MD5的加密原理为什么不可逆

王小云破解的方法不是通过算法,而是通过什么概率那东西来穷举的。把一个本来是2^128 的可能缩短到了2^63可能,所以好穷举了。
md5在论坛上、软件发布时经常用,是为了保证文件的正确性,防止一些人盗用程序,加些木马或者篡改版权,设计的一套验证系统。每个文件都可以用md5验证程序算出一个固定的md5码来。软件作者往往会事先计算出他的程序的md5码并帖在网上。因此,在网上看到某个程序下载旁注明了md5码时,可以把它记下来,下载了这个程序后用md5验证程序计算你所下载的文件的md5码,和你之前记下md5码比较,就知道你下的是不是原版了,如果两者相同,那么你所下载的是原版。如果计算出来的和网上注明的不匹配,那么你下载的这个文件不完整,或是被别人动过手脚。 自己写的,不知道讲清楚没有 更详细的资料和winmd5 v1.1 汉化版(最终版)验证程序下载: <a href="http://wenwen.soso.com/z/urlalertpage.e?sp=shttp%3a%2f%2fwww1.skycn.com%2fsoft%2f20348.html" target="_blank">http://www1.skycn.com/soft/20348.html</a> 找了点有关的资料: md5的全称是message-digest algorithm 5,在90年代初由mit的计算机科学实验室和rsa data security inc发明,经md2、md3和md4发展而来。 message-digest泛指字节串(message)的hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。 md5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个md5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。 md5的典型应用是对一段message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.txt文件中,并对这个readme.txt产生一个md5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算md5时就会发现(两个md5值不相同)。如果再有一个第三方的认证机构,用md5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。 md5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以md5值(或类似的其它算法)的方式保存的, 用户login的时候,系统是把用户输入的密码计算成md5值,然后再去和系统中保存的md5值进行比较,而系统并不“知道”用户的密码是什么。
MD5 是HASH算法。不可能逆的。 说个简单的比方,你就懂了。123456789ABCDEFGHI。。。。。N 很多个1024个字节的数据 算完的MD5值只有16个字节 你说能从16个字节还完成1024个数据吗?一般只是用来进行加密比较结果用的。

MD5的加密原理为什么不可逆

4,加密技术04哈希算法MD5原理

MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个 128 位( 16 字节,被表示为 32 位十六进制数字)的散列值(hash value),用于确保信息传输完整一致。MD5 由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于 1992 年公开,用以取代 MD4 算法。这套算法的程序在 RFC 1321 中被加以规范。 将数据(如一段文字)运算变为另一固定长度值,是散列算法的基础原理。 注意:MD5 对消息的长度没有要求。 字节的排列方式有两个通用规则 比如:存储 16 进制值 0x12345678,需要使用 4 个字节,存储字节在内存地址增长方向分别是 大端序方式存储:0x12 0x34 0x56 0x78 小端序方式存储:0x78 0x56 0x34 0x12 1996 年后被证实存在弱点,可以被加以破解,对于需要高度安全性的资料,专家一般建议改用其他算法,如 SHA-2。2004 年,证实 MD5 算法无法防止碰撞攻击,因此不适用于安全性认证,如 SSL 公开密钥认证或是数字签名等用途。 2009 年,中国科学院的谢涛和冯登国仅用了 2 20.96 的碰撞算法复杂度,破解了 MD5 的碰撞抵抗,该攻击在普通计算机上运行只需要数秒钟。2011 年,RFC 6151 禁止 MD5 用作密钥散列消息认证码。 MD5 哈希后的位数一般为两种,16 位与 32 位。16 位实际上是从 32 位字符串中,取中间的第 9 位到第 24 位的部分。 MD5 32 ("123123") = "4297F44B13955235245B2497399D7A93" MD5 16 ("123123") = "13955235245B2497"

文章TAG:md5加密原理  有谁知道MD5加密的原理和过程  
下一篇