2013-08-30 47 views
-1

当我们有原始消息和加密消息时,它的可能性或确实是否可以找到加密方法的工具?使用orignal消息和加密消息找到加密类型

举例:加密后的消息:ZHVoYW1lbA :原消息:杜哈明

例2:加密后的消息:ZmV5 :原消息:妖精

+2

一般情况下,没有办法。在某些情况下,人们可能会做出有根据的猜测,但它更多地基于上下文而不是数据本身。 –

+0

实际上,这不是加密,而是编码,正如Andrew所言。这简直是​​简 - [Base64](http://www.motobit.com/util/base64-decoder-encoder.asp)。 –

回答

0

所有你能做的就是用确定消息的长度是块还是流密码(如果是块密码,它们将是某个固定大小的倍数)。即使这需要小心,因为您需要猜测是否使用了IV和HMAC或类似(例如,在CTR模式下,(所谓的)IV是半块)。

如果您的示例是真实的,那么这不是分组密码,因为加密的消息太短。而且我不太了解编码是什么 - 通常加密的消息是二进制的,而不是字符,所以写成十六进制字符串或类似的字符。但是你的例子似乎是字符串。

因此,您的示例要么是组成的,要么是一些不寻常的东西 - 更可能是“自制”的代码,而不是软件库中使用的标准算法。

[编辑:]我对https://stackoverflow.com/questions/18560948/encrypted-string-by-unknown-method#comment27312634_18560948

工作上面谈论加密后更新这个答案。然而,有时候,人们实际询问的是编码。这就是(可能是加密的,但可能不是)消息中的字节被转换为通过互联网显示或发送的东西的方式,或者其他任何东西。这可能是十六进制,或基本64,或像PEM更复杂的东西。经常你可以猜测这个,因为不同的编码往往看起来不一样。例如,基础64通常以“=”结尾。有时候,这可以给你一个关于使用的加密的线索。例如,PEM具有与众不同的标题行,这使得识别变得容易,并且OpenSSL中的PEM的默认密码是三重DES,所以如果文件是PEM编码的,则它很可能是三重DES加密的。

因此,在我的原始答案中,应该包括编码也有助于猜测密码类型的评论。在你的例子中,奇怪的是两个加密字符串都以“Z”开头。但我不知道这样做的编码。

[见https://stackoverflow.com/a/20217208/181772也相关评论]

+1

的确,简单的Base64编码。 –

+0

@HotLicks哈!发现得好。这解释了长度。我应该已经意识到了。 –