`
songqing
  • 浏览: 34394 次
  • 性别: Icon_minigender_1
  • 来自: 济南
最近访客 更多访客>>
社区版块
存档分类
最新评论

MD5密码似乎不再安全

阅读更多

之前我了解了MD5算法加密的原理后,一直把它当作最安全的密码算法。的确,它不存储明文,只保留了一串不知所云的密文,每次验证密码的时候把用户输入的明文再次翻译成密文与存储的密文作比较,然后得出相应的结论。这样真的给人一种坚若磐石的感觉。

可是,这种方式安全的前提是从明文转换成密文的算法是不可逆的,也就是说密文不能随随便便的被转换成明文。而问题恰恰就出现在这里。

今天我在看电脑报时读到一篇文章,上面说了Discuz!论坛程序的一个漏洞,其中提到了得到密码的密文后可以用http://www.cmd5.com/网站提供的工具还原成明文密码。当时我的感觉是不可思议——什么时候MD5算法也出了这种问题了。而山东大学的教授王小云女士破解MD5算法的论文也似乎是建立在多台高性能计算机集群运算的基础上。而一个网站竟然能随随便便的破解它,让人无法相信。

于是我回家后立刻上网一试,果然找到了相应的功能。把我一直使用的十位密码输入,得到了32位的MD5密文,然后把密文贴到输入框中,点击运算按钮,不用几秒钟我就看到了我的明文密码。当时我就不寒而栗,一向被我认为是不可破解的密码算法竟然在瞬间变成了废物。

我赶紧看网站上的说明。似乎它有一个很大的数据库,里面记录了每个MD5密文与它相对应的明文。原来它是用了暴力破解的方法,不过有了这么多的用例,几乎不可能的逆运算就变成了一件相对容易的查找匹配运算。

这种方式的不足就是数据库的存储总是有限的。例如我接着输入了我在TrueCrypt商用的“究极”36位密码,得到的结果便为Not Found了。

因此,我们在注册社区、申请自愿时填写密码的一刻,是不是要考虑一下密码的安全性呢?虽然不会有人这么无聊会来盗取我们这种小人物的密码,但时代是发展的,没准哪一天你的密码被盗会对世界造成……的影响呢^-^。

分享到:
评论

相关推荐

    java生成md5密码加盐

    然而,由于MD5的碰撞攻击弱点,直接使用MD5来存储密码已经不够安全。为了增强安全性,我们引入了“加盐”(Salting)的概念。本文将详细介绍Java和SpringBoot如何实现加盐的MD5密码生成。 首先,MD5是一种单向哈希...

    MD5收费密码

    由于MD5的碰撞易发性(即两个不同的输入可以产生相同的输出),它不再适用于安全敏感的应用,如密码存储。现在的攻击者可以通过预计算的彩虹表,或者利用彩虹表生成算法,快速查找或生成与给定MD5哈希值匹配的可能...

    MD5转换小工具

    这意味着MD5不再适用于安全性要求高的场景,例如数字证书的签名或密码存储。尽管如此,在某些不涉及安全性的应用中,如文件校验,MD5仍然是一个快速且有效的工具。 总结一下,MD5转换小工具是用于计算和验证数据MD5...

    MD5密码加密文档

    为了增强MD5的密码安全性,通常会添加盐值(salt),即在密码前面或后面附加一个随机字符串再进行哈希运算,这样即使相同的密码经过MD5处理也会得到不同的结果,增加了彩虹表攻击的难度。 总的来说,"MD5密码加密...

    易语言MD5解密

    6. **安全性与应用**:尽管MD5在密码学上已不再安全,但在某些场景下仍被用作快速校验数据完整性的工具。了解MD5解密可以帮助我们理解网络安全的挑战,并提醒我们在设计安全系统时避免依赖弱哈希函数。 7. **优化与...

    常用的md5密码转换器

    这个过程是单向的,也就是说,从一个MD5哈希值恢复原始数据几乎是不可能的,因此它在信息安全领域中有着重要的应用,比如存储密码、校验文件完整性和防止数据篡改。 标题“常用的md5密码转换器”指出我们要讨论的是...

    MD5密码生成器

    这使得MD5不再适用于安全敏感的应用,如数字签名或证书验证。尽管如此,MD5仍然在某些场景下使用,比如作为快速的文件比较工具。 "MD5密码生成器"是一个工具,允许用户输入任意字符串,如密码,然后计算出该字符串...

    jsp网页中用户登陆密码的MD5加密

    MD5加密是一种常用的密码学哈希函数,用于确保数据的完整性和_authentication。MD5算法是RSA Data Security公司在1992年发布的,用于生成一个128位的哈希值。MD5加密广泛应用于各种领域,包括数据存储、网络传输和...

    MD5密码生成工具(支持16位和32位)

    然而,由于MD5的碰撞问题(两个不同的输入可能产生相同的MD5值),它不再适合用于密码学安全目的,因为攻击者可以使用预计算的哈希表或彩虹表来快速破解MD5哈希。 3. **文件校验**:MD5也可以用来验证文件的完整性...

    java中关于Springboot加密 md5加密,注册密码加密到数据库中的关键语句,md5加密语句.pdf

    为了增加安全性,通常会结合加盐(Salt)策略,即在密码前或后添加一个随机字符串再进行MD5加密,这样即使两个用户使用相同的密码,其加密结果也会不同,从而降低彩虹表攻击的风险。此外,还可以使用多次迭代的哈希...

    Md5密码破解CUDA源码

    由于MD5的碰撞概率较高,即可能存在两个不同的输入产生相同的哈希值,因此在安全性要求高的场景下,MD5已不再适用于密码存储。然而,在特定的逆向工程和密码破解领域,MD5的破解仍然是一个重要的课题。 CUDA...

    利用JAVASCRIPT HMAC-MD5算法增强用户的密码安全

    JavaScript中的HMAC-MD5算法是一种用于增强用户密码安全性的技术。MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,可以将任意长度的输入转化为固定长度的输出,通常为128位。而HMAC(Hash-based ...

    MD5密码加密技术……

    MD5(Message-Digest Algorithm 5)是一种广泛使用的...尽管MD5已不再适合用于密码存储,但它在数据校验、文件完整性检查等方面仍有其应用价值。学习和掌握加密技术,可以帮助开发者更好地保护系统和用户的数据安全。

    MD5密码转换器 V0.84

    对于开发者和IT专业人士,了解并掌握MD5算法及其应用是非常有益的,特别是在数据校验、密码安全和文件完整性验证方面。同时,如果包含的源码支持与Access数据库的交互,那么对于数据库管理和安全性的提升也是个不小...

    MD5密码算法

    MD5的碰撞问题意味着两个不同的输入可能产生相同的哈希值,这对于密码存储来说是不安全的,因为攻击者可以利用碰撞生成看似随机但实际上可预测的密码哈希,从而尝试破解。 总之,MD5是一种历史悠久的哈希算法,尽管...

    MD5加密字符串生成密码

    然而,需要注意的是,MD5的碰撞抵抗性已被证实存在弱点,因此在现代密码学中,MD5不再被视为安全的密码存储方法。 MD5的过程大致分为以下几个步骤: 1. **初始化**: 使用预定义的常量初始化四个32位的中间变量A、B...

    MD5密码转换器 V0.85.rar

    MD5在网络安全、文件校验和数据库密码存储等领域有广泛应用。 在标题提到的"MD5密码转换器 V0.85.rar"中,我们推测这是一款能够对输入的字符串进行MD5加密和可能的字典解密的工具。在ASP(Active Server Pages)...

    MD5Win-MD5文本密码生成.rar_md5_md5 生成_md5w_密码生成

    MD5Win是一款用于MD5文本密码生成的工具,它在信息安全领域中有着广泛的应用。MD5,全称为Message-Digest Algorithm 5,是由美国计算机科学家Rivest在1991年设计的一种加密散列函数。它将任意长度的数据转换为一个...

    (Java密码加密)MD5方式

    这个`encryptMD5`方法接受一个字符串(如用户密码),通过`MessageDigest.getInstance("MD5")`获取MD5实例,然后使用`digest`方法计算哈希值。最终,将得到的字节数组转换为16进制字符串。 测试代码`Test1.java`...

    32位MD5密码校验

    然而,需要注意的是,尽管MD5曾经被视为非常安全,但因为碰撞攻击的可能性(即不同的输入可以生成相同的MD5值),在安全性要求较高的场景下,如密码存储,MD5已经不再被推荐使用,更安全的哈希函数如SHA-256被广泛...

Global site tag (gtag.js) - Google Analytics