飘天文学 > 科幻小说 > 编程之战 > 正文卷 第五十章 哈希加密
    不会游泳的杨成,被临时地传送回了任务调度中心。

    “打死我也不要听这样的解说!”

    杨成嚷嚷道。

    “息怒啊,成成...”

    “我们正在进行用户密码安全评估,希望你能帮我们测试下”。

    系统妹子端的好脾气。

    “哦?”

    杨成一听顿时来了兴致。

    “我们游戏对用户密码做了加密,采用的是国际通用的sha-256哈希加密。”

    “对于一般长度的密码,安全肯定是有保证的,不过呢”。

    系统妹子话锋一转。

    “对于8位以下的短密码,无法确定安全性,所以想听听你的意见”。

    对于喜欢接触各类编程知识的杨成来说,他自然是有所了解。

    “哈希类加密,主要是为了防止逆向破解。”

    “但攻击者可以先通过社会工程学,分析出用户密码的大致组合,然后根据这个组合,做暴力破解”。

    “对于8位以下的短密码,哈希加密是很脆弱的”。

    说着,杨成调出了编辑器面板。

    “假如我们得到了一段哈希加密后的密文”。

    “5694d08a2e53ffcae0c3103e5ad6f6076abd960eb1f8a56577040bc1028f702b”

    “这段密文以我们现在的手段,很难逆向破解”。

    “但是如果攻击者分析出了一段预测的值,比如说”。

    “cdeo”。

    “他可以根据这段值,穷举出所有的排列。”

    “对每一个排列,做哈希加密,只要这个加密结果和密文匹配,只要能匹配得上,那就说明这个组合是用户密码”。

    “而这个过程是很高效的”。

    “全排列算法的时间复杂度是n的阶乘”。

    “这里n等于4,也就是字符串的长度”。

    “最多只需要4!=24次匹配”。

    “这对于机器几乎是瞬间可以完成的事情”。

    说着,杨成开始编写代码,然后一运行。

    cdeo

    cdoe

    cedo

    ceod

    code

    实际上只用了5次匹配,就得出了用户的密码:

    “code”。

    “由此可见,哈希函数对于短密码是多么的苍白无力”。

    杨成收起编辑器。

    “嗯,成成很不错,继续努力吧,你的付出一定会有回报的”。

    系统妹子给予鼓舞。

    “叮!恭喜您完成了哈希加密的相关任务!”

    “当前积分113分,击败了全球38%的玩家,请您再接再厉!”飘天文学_www.piaotiange.com