‘壹’ MD5加密问题
1.如果是一般的话只有32&16
2.本来在理论上不可破解,但好像被人破解了,你可以看下参考
目前网上的dm5破解都是通过建立数据库进行查询的方法进行破解的
好像还没有直接破解的工具,网上的都属于类似穷举的方法
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中有详细的描述(http://www.ietf.org/rfc/rfc1321.txt),这是一份最权威的文档,由Ronald L. Rivest在1992年8月向IETF提交。
Rivest在1989年开发出MD2算法。在这个算法中,首先对信息进行数据补位,使信息的字节长度是16的倍数。然后,以一个16位的检验和追加到信息末尾。并且根据这个新产生的信息计算出散列值。后来,Rogier和Chauvaud发现如果忽略了检验和将产生MD2冲突。MD2算法的加密后结果是唯一的--即没有重复。
为了加强算法的安全性,Rivest在1990年又开发出MD4算法。MD4算法同样需要填补信息以确保信息的字节长度加上448后能被512整除(信息字节长度mod 512 = 448)。然后,一个以64位二进制表示的信息的最初长度被添加进来。信息被处理成512位damg?rd/merkle迭代结构的区块,而且每个区块要通过三个不同步骤的处理。Den boer和Bosselaers以及其他人很快的发现了攻击MD4版本中第一步和第三步的漏洞。Dobbertin向大家演示了如何利用一部普通的个人电脑在几分钟内找到MD4完整版本中的冲突(这个冲突实际上是一种漏洞,它将导致对不同的内容进行加密却可能得到相同的加密后结果)。毫无疑问,MD4就此被淘汰掉了。
尽管MD4算法在安全上有个这么大的漏洞,但它对在其后才被开发出来的好几种信息安全加密算法的出现却有着不可忽视的引导作用。除了MD5以外,其中比较有名的还有sha-1、RIPEMD以及Haval等。
一年以后,即1991年,Rivest开发出技术上更为趋近成熟的md5算法。它在MD4的基础上增加了"安全-带子"(safety-belts)的概念。虽然MD5比MD4稍微慢一些,但却更为安全。这个算法很明显的由四个和MD4设计有少许不同的步骤组成。在MD5算法中,信息-摘要的大小和填充的必要条件与MD5完全相同。Den boer和Bosselaers曾发现MD5算法中的假冲突(pseudo-collisions),但除此之外就没有其他被发现的加密后结果了。
Van oorschot和Wiener曾经考虑过一个在散列中暴力搜寻冲突的函数(brute-force hash function),而且他们猜测一个被设计专门用来搜索MD5冲突的机器(这台机器在1994年的制造成本大约是一百万美元)可以平均每24天就找到一个冲突。但单从1991年到2001年这10年间,竟没有出现替代MD5算法的MD6或被叫做其他什么名字的新算法这一点,我们就可以看出这个瑕疵并没有太多的影响MD5的安全性。上面所有这些都不足以成为MD5的在实际应用中的问题。并且,由于MD5算法的使用不需要支付任何版权费用的,所以在一般的情况下(非绝密应用领域。但即便是应用在绝密领域内,MD5也不失为一种非常优秀的中间技术),MD5怎么都应该算得上是非常安全的了。
2004年8月17日的美国加州圣巴巴拉的国际密码学会议(Crypto’2004)上,来自中国山东大学的王小云教授做了破译MD5、HAVAL-128、 MD4和RIPEMD算法的报告,公布了MD系列算法的破解结果。宣告了固若金汤的世界通行密码标准MD5的堡垒轰然倒塌,引发了密码学界的轩然大波。
令世界顶尖密码学家想象不到的是,破解MD5之后,2005年2月,王小云教授又破解了另一国际密码SHA-1。因为SHA-1在美国等国际社会有更加广泛的应用,密码被破的消息一出,在国际社会的反响可谓石破天惊。换句话说,王小云的研究成果表明了从理论上讲电子签名可以伪造,必须及时添加限制条件,或者重新选用更为安全的密码标准,以保证电子商务的安全。
MD5破解工程权威网站http://www.md5crk.com/ 是为了公开征集专门针对MD5的攻击而设立的,网站于2004年8月17日宣布:“中国研究人员发现了完整MD5算法的碰撞;Wang, Feng, Lai与Yu公布了MD5、MD4、HAVAL-128、RIPEMD-128几个 Hash函数的碰撞。这是近年来密码学领域最具实质性的研究进展。使用他们的技术,在数个小时内就可以找到MD5碰撞。……由于这个里程碑式的发现,MD5CRK项目将在随后48小时内结束”。
MD5用的是哈希函数,在计算机网络中应用较多的不可逆加密算法有RSA公司发明的MD5算法和由美国国家技术标准研究所建议的安全散列算法SHA.
[编辑本段]算法的应用
MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。比如,在UNIX下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:
MD5 (tanajiya.tar.gz) =
这就是tanajiya.tar.gz文件的数字签名。MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。为了让读者朋友对MD5的应用有个直观的认识,笔者以一个比方和一个实例来简要描述一下其工作过程:
大家都知道,地球上任何人都有自己独一无二的指纹,这常常成为公安机关鉴别罪犯身份最值得信赖的方法;与之类似,MD5就可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”都会发生变化。
我们常常在某些软件下载站点的某软件信息中看到其MD5值,它的作用就在于我们可以在下载该软件后,对下载回来的文件用专门的软件(如Windows MD5 Check等)做一次MD5校验,以确保我们获得的文件与该站点提供的文件为同一文件。利用MD5算法来进行文件校验的方案被大量应用到软件下载站、论坛数据库、系统文件安全等方面。
MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现(两个MD5值不相同)。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。
所以,要遇到了md5密码的问题,比较好的办法是:你可以用这个系统中的md5()函数重新设一个密码,如admin,把生成的一串密码覆盖原来的就行了。
MD5还广泛用于操作系统的登陆认证上,如Unix、各类BSD系统登录密码、数字签名等诸多方。如在UNIX系统中用户的密码是以MD5(或其它类似的算法)经Hash运算后存储在文件系统中。当用户登录的时候,系统把用户输入的密码进行MD5 Hash运算,然后再去和保存在文件系统中的MD5值进行比较,进而确定输入的密码是否正确。通过这样的步骤,系统在并不知道用户密码的明码的情况下就可以确定用户登录系统的合法性。这可以避免用户的密码被具有系统管理员权限的用户知道。MD5将任意长度的“字节串”映射为一个128bit的大整数,并且是通过该128bit反推原始字符串是困难的,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。所以,要遇到了md5密码的问题,比较好的办法是:你可以用这个系统中的md5()函数重新设一个密码,如admin,把生成的一串密码的Hash值覆盖原来的Hash值就行了。
正是因为这个原因,现在被黑客使用最多的一种破译密码的方法就是一种被称为"跑字典"的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用MD5程序计算出这些字典项的MD5值,然后再用目标的MD5值在这个字典中检索。我们假设密码的最大长度为8位字节(8 Bytes),同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是P(62,1)+P(62,2)….+P(62,8),那也已经是一个很天文的数字了,存储这个字典就需要TB级的磁盘阵列,而且这种方法还有一个前提,就是能获得目标账户的密码MD5值的情况下才可以。这种加密技术被广泛的应用于UNIX系统中,这也是为什么UNIX系统比一般操作系统更为坚固一个重要原因。
‘贰’ java现在md5加密不安全了吗
针对md5加密是否不安全的讨论,首先需要明确md5并非加密算法,而是一种摘要算法。它用于将任意长度的数据转换为固定长度的输出,常用于数据完整性校验。然而,md5的安全性在逐渐降低,原因在于其输出的哈希值容易被碰撞,即两个不同的输入可能产生相同的输出哈希值。
md5的不安全性体现在其哈希值的碰撞风险上。理论上,由于输入空间远远大于输出空间,理论上可以找到两个不同的输入产生相同的md5哈希值。虽然找到这种碰撞需要大量计算,但在互联网环境下,已有工具和算法能够实现这一目标,降低了md5的安全性。
例如,在身份验证和密码存储场景中,使用md5加密密码不再安全,因为攻击者可以通过哈希碰撞找到相同的哈希值,进而尝试破解密码。为了增强安全性,推荐使用更强大的哈希算法,如SHA-256。SHA-256具有更大的输出空间和更高的安全级别,使得哈希碰撞难度大幅增加。
此外,尽管存在其他摘要算法如SHA-1和SHA-3等,它们在安全性上优于md5。SHA-3提供了更好的安全性,其设计旨在抵抗已知的哈希碰撞攻击策略,因此在密码学应用中更为推荐。
总之,md5加密的不安全性体现在其较低的抵抗碰撞能力,使得它在现代应用中逐渐被更安全的哈希算法所替代。在需要数据安全性的地方,选择SHA-256或SHA-3等更强大的哈希算法更为合适。
‘叁’ MD5加密和MD5hash的区别
MD5加密和MD5 hash的区别为:摘要不同、攻击强度不同、运行速度不同。
一、摘要不同
1、MD5加密:MD5加密摘要比MD5摘要短32bit,是264 是数量级的操作。
2、MD5 hash:MD5 hash摘要比MD5摘要长32bit,是280 数量级的操作。
二、攻击强度不同
1、MD5加密:MD5加密对于强行攻击,产生任何一个报文的强度更弱。
2、MD5 hash:MD5 hash对于强行攻击,产生任何一个报文的强度更大。
三、运行速度不同
1、MD5加密:MD5加密的循环步骤比MD5 hash少,且要处理的缓存小,导致运行速度比MD5hash快。
2、MD5 hash:MD5 hash的循环步骤比MD5加密多,且要处理的缓存大,导致运行速度比MD5 加密慢。
‘肆’ md5加密多少位
md5加密多少位?
MD5 加密后的位数有两种:16 位与 32 位。默认使用32位。 (16 位实际上是从 32 位字符串中取中间的第 9 位到第 24 位的部分)为提高安全性。根据业务需求,可以对md5 添加偏移量。如对原有字符拼接指定位数的字符串
‘伍’ MD5的加密是什么意思
分类: 电脑/网络 >> 软件
解析:
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值(或类似的其它算法)的方式保存的,用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不"知道"用户的密码是什么。
一些黑客破获这种密码的方法是一种被称为"跑字典"的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用MD5程序计算出这些字典项的MD5值,然后再用目标的MD5值在这个字典中检索。
即使假设密码的最大长度为8,同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是P(62,1)+P(62,2)....+P(62,8),那也已经是一个很天文的数字了,存储这个字典就需要TB级的磁盘组,而且这种方法还有一个前提,就是能获得目标账户的密码MD5值的情况下才可以。
在很多电子商务和社区应用中,管理用户的Account是一种最常用的基本功能,尽管很多Application Server提供了这些基本组件,但很多应用开发者为了管理的更大的灵活性还是喜欢采用关系数据库来管理用户,懒惰的做法是用户的密码往往使用明文或简单的变换后直接保存在数据库中,因此这些用户的密码对软件开发者或系统管理员来说可以说毫无保密可言,本文的目的是介绍MD5的Java Bean的实现,同时给出用MD5来处理用户的Account密码的例子,这种方法使得管理员和程序设计者都无法看到用户的密码,尽管他们可以初始化它们。但重要的一点是对于用户密码设置习惯的保
‘陆’ md5加密算法是什么有哪些破解方法
MD5加密是一种常用的密码加密方式,它可以将任意长度的信息通过一个算法变成一个128位的固定长度的字符串,这个字符串通常被称为MD5值。由于MD5算法的不可逆性,所以可以将密码进行MD5加密后存储在数据库中,以提高密码的安全性。
为什么要破解MD5加密?
尽管MD5加密算法具有不可逆性,但是破解MD5加密也是有必要的。有时候我们忘记了自己的密码,而存储在数据库中的密码是经过MD5加密的,这时候我们就需要破解MD5加密来找回自己的密码。此外,黑客也会通过破解MD5加密来获取密码,因此破解MD5加密也是一项安全工作。
如何破解MD5加密?
破解MD5加密有多种方式,其中一种比较简单的方式就是使用cmd5在线解密工具。cmd5在线解密工具是一款免费的在线解密工具,它可以快速破解MD5加密密码。下面是使用cmd5在线解密工具破解MD5加密的步骤:
1.打开cmd5在线解密网站,输入需要破解的MD5加密密码,然后点击“解密”按钮。
2.等待解密结果出现,如果解密成功,就会显示出原始密码。
3.如果解密失败,可以尝试使用其他破解工具或者使用暴力破解的方式进行破解。
cmd5在线解密的优点
相比于其他破解工具,cmd5在线解密具有以下优点:
1.简单易用:只需要输入需要破解的MD5加密密码,就可以快速破解。
2.免费:cmd5在线解密是一款免费的在线解密工具,不需要支付任何费用。
3.高效:cmd5在线解密使用了先进的破解技术,可以快速破解大部分MD5加密密码。
cmd5在线解密的注意事项
在使用cmd5在线解密工具的时候,需要注意以下事项:
1.保护个人信息:不要使用cmd5在线解密工具破解他人的密码,也不要将自己的密码输入到不可信的网站中。
2.注意安全性:MD5加密虽然可以提高密码的安全性,但并不是绝对安全的,因此在设置密码时需要注意安全性。
‘柒’ MD5加密是怎么实现加密的
MD5加密步骤如下:
搜索站长工具,点击打开。点击导航里的代码转换工具。选择MD5加密。输入欲加密的字符串。选择多少位。点击加密。
MD5即信息摘要算法5,是计算机广泛使用的散列算法之一,诞生于20世纪90年代初。用于确保信息传输完整一致,具有较好的安全性,广泛运用于数字签名、文件完整性验证以及口令加密等领域。
‘捌’ 浠涔堟槸md5锷犲瘑
浠庝簨缃戠粶瀹夊叏杩欎竴琛屼笟镄勪汉閮界煡阆掳纴鎴戜滑锅氭笚阃忔祴璇曟椂缁忓父浼氶亣鍒伴渶瑕佽В瀵嗙殑Md5瀵嗘枃銆备负浜呜兘澶熸彁鍗囨晥鐜囷纴鎴戜滑鍙浠ュ湪缃戜笂镓句竴浜涜兘澶熷湪绾縨d5瑙e瘑镄勭绣绔欍备笅闱㈢粰澶у跺垎浜锲藉唴甯哥敤镄勫嚑涓鍏嶈垂MD5鍦ㄧ嚎瑙e瘑缃戠珯銆
涓銆丮D5鍦ㄧ嚎锷犲瘑瑙e瘑
阍埚筸d5绛夊叏鐞冮氱敤鍏寮镄勫姞瀵嗙畻娉曡繘琛屽弽钖戞煡璇锛屽缓绔嬩简瀵嗘枃瀵瑰簲镆ヨ㈡暟鎹搴掳纴MD5锷犲瘑瑙e瘑骞冲彴鍙镆ヨ㈠緢澶氩嶆潅瀵嗘枃锛屾敮鎸佸氱岖畻娉曪纴瀹炴椂镆ヨ㈣板綍瓒呰繃24涓囦嚎𨱒★纴鍏卞崰鐢160T纭鐩桡纴鎴愬姛鐜95%浠ヤ笂銆傝繖涓缃戠珯锲藉唴寰埚氢汉鍦ㄤ娇鐢锛屽洜涓哄畠鏄鍏嶈垂镄勚傚傛灉鍦╩d5涓婅В瀵嗕笉浜嗙殑瀵嗘枃鍦ㄥ叾浠栬В瀹㈢绣绔欎篃锘烘湰娌℃垙浜嗐