我正在爲lua中的Wireshark定製解剖器。在lua解剖器中解密數據包
協議中的某些PDU使用AES加密,我想解密這些以便我可以在Wireshark中顯示清晰的內容。這可能與一個Lua解剖器和我可以使用什麼API來進行解密?
或者我需要製作一個c/C++解析器來製作解密數據的解剖器嗎?
我正在爲lua中的Wireshark定製解剖器。在lua解剖器中解密數據包
協議中的某些PDU使用AES加密,我想解密這些以便我可以在Wireshark中顯示清晰的內容。這可能與一個Lua解剖器和我可以使用什麼API來進行解密?
或者我需要製作一個c/C++解析器來製作解密數據的解剖器嗎?
我個人使用lua-crypto但它需要OpenSSL。 您可以檢查lua-wiki。 最近,我爲this AES實現創建了一個名爲bgcrypto的包裝。 它沒有外部依賴關係,但我真的不在實際工作中使用它。
目前Wireshark(2.0)沒有向LUA解剖器公開密碼API,所以你必須在Lua解剖器中實現它。
對於純粹的Lua解決方案,您可以使用lua-lockbox(如Lua wiki中所述)。如果您需要性能,則不推薦這樣做,但可能對原型設計有用。
更快的AES加密技術實現通常使用本地庫,例如:
由於沒有這些庫的滿足我的需求,我開發了基於Libgcrypt這些原因一個新問題:
結果是luagcrypt,它適用於Wireshark(Linux,OS X,Windows)支持的平臺。它被用在KDNET解剖器中,這個commit顯示了從lua-lockbox到luagcrypt的轉換。
有趣的是,lua-crypto能在OSX,Windows和Linux上運行嗎? –
我在Windows上使用它。我在Linux Mint和Travis上運行測試。 – moteus