對於使用舊系統的公司,我試圖對其使用的舊加密方法進行反向工程。這個軟件的源代碼丟失了,所以我被告知。 (或者他們不希望我看到系統的完整工作)。反向工程簡單加密算法
無論如何,系統使用UNIQUE標識符和一些其他信息來創建密鑰。 此密鑰用於加密一些數據。
我需要逆向工程這個算法。 (我可能會在我的頭上,但我會嘗試)。
我使用了用於創建密鑰的信息,以及加密的和未加密的數據。 所以我最好的選擇是使用「知道明文攻擊」。但我正在尋找一些提示或網站,提供更多關於如何進行的信息。
我知道這可能是一項不可能完成的任務,但嘿,這很好,嘗試吧?
您是否有權訪問目標代碼?某個實現正在運行嗎? – sarnold 2011-03-31 11:37:35
如果它是「一些舊的」加密方法,那麼很可能是一種衆所周知的算法,例如DES或TEA。只有傻瓜和天才寫他們自己的加密算法。因此,你可能首先要做的事情之一是谷歌這些算法。所有這些都使用一些衆所周知的常量用於S盒等。如果您使用十六進制編輯器搜索可執行文件,並且找到所述常量,則您知道它是什麼算法。這比基於已知明文的密碼分析快了十億倍。例如,如果您在程序中發現0x9e3779b9,那麼很可能是TEA。 – Damon 2011-03-31 15:14:35