为什么不能对md5进行逆向工程?

 辉 发布于 2022-12-22 09:59

我对密码学知之甚少,但当然在很多场合遇到了神奇的md5()黑盒子.现在,经过一番搜索,我找到了许多问题:"为什么不能颠倒?" 答案是"因为输出是非独特的".鉴于密码(或任何值)是根据哈希值(而不是原始值)进行评估的,因此知道原始密码并不重要,所有您真正需要访问用户帐户的任何输入都将提供该哈希值.所以,我的问题:

为什么不能对md5进行逆向工程以从输出生成输入(任何输入,不一定是原始输入)(毕竟,实际功能是公开可用的)?

示例:如果我有一个带字符串的哈希函数,为每个字符分配一个数字值,然后添加这些值,我可以通过获取输出,分解它并将因子重新组织成一个字符串来轻松地反转该函数(它赢了不是原始字符串,但它会给出相同的哈希值.那么为什么md5不能倒退呢?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有