知道明文 密文 能推导出加密方式?

2020 年 5 月 18 日
 jzjjzj
12496 次点击
所在节点    程序员
64 条回复
vvtoo
2020 年 5 月 18 日
想到一个无关但有趣的话题: https://study.congcong.us/t/303036
msg7086
2020 年 5 月 18 日
@legiorange 兄弟可以先了解下非对称加密是什么。
yidinghe
2020 年 5 月 18 日
如果使用了多次加密,猜都很难猜,你不但要知道用了哪些加密方法,还要知道它们的顺序。
yidinghe
2020 年 5 月 18 日
@janda 那是摘要算法(hash function),不是加密,加密(encryption)是可以解密(decryption)的,任何加密手段(cipher)都有对应的解密手段(decipher)。

https://en.wikipedia.org/wiki/Encryption
https://en.wikipedia.org/wiki/Hash_function
lvybupt
2020 年 5 月 18 日
不能。
ormand1bd
2020 年 5 月 18 日
不能
rb6221
2020 年 5 月 18 日
理论上是不能,但是有一套方法论可以提高概率,在场景固定和熟悉的情况下,靠猜的方式还是有比较高的概率猜对的
Still4
2020 年 5 月 18 日
任何不可逆算法加点盐你就没法

比如 明文=abc 密文=md5(sub(md5('abc'),4,8)+'test')
你怎么能通过密文和明文知道这个算法,而且还知道盐=test
Jooooooooo
2020 年 5 月 18 日
不能, 已知把 1 到 1w 的数字都映射成 a 了

你猜猜我的加密方法是什么?

(答案是我把 10001 映射成了 b, 其他数字都是 a
tsui
2020 年 5 月 18 日
@Still4 你这个不是加密而是 hash,从密文是无法解密(还原)出明文的。
ajaxfunction
2020 年 5 月 18 日
扔个骰子,如何推导出是几?
当然无法推导出来,但是可以猜出来
julyclyde
2020 年 5 月 18 日
如果能的话说明这个算法的特征过于明显了
slanternsw
2020 年 5 月 18 日
这..这不就是“存在一个黑箱函数,已知部分给定的输入和相应的输出,问能不能推导出这个黑箱函数”

结论上面已经有了,不存在通用的方法,部分情况下可以猜.
akira
2020 年 5 月 18 日
有些可以
Johnny168
2020 年 5 月 19 日
你想推导出来不过就是为了解密,电脑配置好点的直接跑字典算了
legiorange
2020 年 5 月 19 日
@otakustay 那具体是神马。。。
legiorange
2020 年 5 月 19 日
@msg7086 啊这,才疏学浅也没搜到什么还是比较模糊,那么 MD5 和非对称算法究竟有什么区别? MD5 本身是不可逆的,那么他也不算是对称也不算是非对称的话他究竟是……?
Cmdhelp
2020 年 5 月 19 日
这个不好说,有的还真可以。。。 刚遇到过, 组合的明文,密文 32 位,,,试了一下 md5,,果然是,节省了继续逆向挖掘的时间
qwertyegg
2020 年 5 月 19 日
@legiorange MD5 sha-n 算 hash,跟加密解密不是一回事.更不用说对称非对称加密.
co2fe
2020 年 5 月 19 日
个人觉得
只要样本数量足够的多,比如说无穷大
理论上应该是可以推倒出加密的方式的
实际上估计不可能
只要有点复杂度的加密方式在现实中就很难有人会去花时间去推导,但是理论上是可以的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/672740

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX