如何破解密碼:識別加密哈希算法
問:是否有可能從密碼位序列中識別加密算法?
答:假設你想要查看從外部源來的數據包(可能已用幾個方法加密),并且想用正確的解密工具來解密數據包。***種答案是“可以”,第二種答案是“這可能是一個非法的活動。”在許多國家,逆向工程保護機制(如加密)是非法的。
盡管如此,如果你還想繼續,你可以在十六進制編輯器里查看二進制文件(DLL, EXE等),它可能會顯示一個字符串,表示一個特定的加密哈希算法。你還可能發現一個字符串,指示特定的第三方加密庫。
另外還要檢查DLL的名稱。如果存在ssleay.dll或libeay.dll,那么很容易知道該數據包是用SSL加密的。如果加密使用一個第三方庫,那么就可以查找該庫導出的功能,看它們采用的是什么參數,以及它們是如何使用的。然后,你可以捕獲你感興趣的調用:例如,用LIBeay或SSLeay,你可以看ssl_read和ssl_write。這樣你就可以訪問純文本,然后就可以開始轉存整個會話,審查原始協議。
如果加密看起來是內置于可執行文件,或加密作家使用他或她自己的代碼,那么你需要用調試器來探測,查明在socket read后,數據去哪了。這應該可以幫助您找到解密例程。記住,這些活動要求你有相當廣泛的調試工具和可執行編輯的經驗,所以如果你不熟悉這些,那么我***的答案是“不能”。
【編輯推薦】