2013-08-30 108 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哈!發現得好。這解釋了長度。我應該已經意識到了。 –