andybest
V2EX  ›  问与答

加密方式 md5(md5($pass).$salt) 在不知道 salt 是什么的情况下如何查出的密码?

  •  1
     
  •   andybest · May 15, 2014 · 11194 views
    This topic created in 4394 days ago, the information mentioned may be changed or developed.
    比如这个网站: http://www.cmd5.com/
    其中可以选择类型:md5(md5($pass).$salt);Vbulletin;IceBB;Discuz

    如果网站 salt 值不同,相同的密码算出的 md5 是不一样的啊,那他存这个 md5 结果反查有什么意义?能查到吗?
    5 replies    2015-11-12 23:10:10 +08:00
    yibin001
        1
    yibin001  
       May 15, 2014
    彩虹表过于庞大+弱密码太多,被碰撞到了吧。猜的。
    andybest
        2
    andybest  
    OP
       May 15, 2014
    @yibin001 如果 salt 不同根本是无法用彩虹表来储存的啊,
    比如密码123456,站点A salt:AAA 站点B salt:BBB
    分别使用:md5(md5('123456').'AAA') 与 md5(md5('123456').'BBB') 来加密,结果是完全不同的两个MD5值,如何做到存入彩虹表,然后在 http://www.cmd5.com/ 里查询?
    wzxjohn
        3
    wzxjohn  
       May 15, 2014
    @andybest 请注意cmd5提供的格式样例。
    md5(md5($pass).$salt);
    VB;DZ

    30e23a848506770eca92faed1bd9f3ec:gM5
    30e23a848506770eca92faed1bd9f3ec gM5
    cd1a0b2de38cc1d7d796b1d2ba6a954f:dc2bce
    ad5f538296c0e05c26b85451fef9ea95:To!@35B%QS@)]U.DTy%fDm;SLwW58w

    用于dz,vB等论坛程序,discuz的salt长度是6位,vBulletin的salt长度是3位或30位。
    请仔细看好了,每一个Hash最后都是有:或者空格分割的,这分割出来的余下几位就是salt,并不是你想象的那样没有salt。如果你仔细观察了小米的泄漏密码的话,你就会发现,那个md5并不是32位,而是在末尾加上了盐。
    Mutoo
        4
    Mutoo  
       May 15, 2014   ❤️ 1
    cmd5 本身提供一个非常大的彩虹表,38位(数字+小写字母)基本覆盖了。

    > cd1a0b2de38cc1d7d796b1d2ba6a954f:dc2bce

    先对 cd1a0b2de38cc1d7d796b1d2ba6a954f 逆出 38 位原文,然后去掉后6位salt(dc2bce)得到md5' 最后再查 md5' 的原文,就中了,你 salt 是什么根本无关紧要
    aloves
        5
    aloves  
       Nov 12, 2015
    您好 请问 cd1a0b2de38cc1d7d796b1d2ba6a954f 逆出 38 位原文 如何进行逆出?需要使用的工具是什么?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3514 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 10:40 · PVG 18:40 · LAX 03:40 · JFK 06:40
    ♥ Do have faith in what you're doing.