bee-san/Ciphey

⚡ Automatically decrypt encryptions without knowing the key or cipher, decode encodings, and crack hashes ⚡

解決的問題

ciphey 是一款旨在自動識別與解密編碼或加密文本的解碼工具。它解決了手動猜測用於隱藏訊息的編碼或密碼(如 Base64、Caesar 或 Rot13)的問題,實現了嘗試多種解碼器與路徑以尋找明文的過程自動化。

工作原理

該工具使用 A* 搜尋演算法來探索潛在的解碼路徑,根據啟發式演算法、歷史成功統計數據與流行的編碼對來確定解碼器的優先順序。它採用了多種技術,包括:

  • 明文檢測: 它結合了 quadgram/trigram 分析、英語詞典檢查以及包含 500 個以上用於 API 金鑰與 MAC 位址的正規表達式模式資料庫,以識別文本是否已成功解碼。
  • AI 增強: 可以選擇使用來自 gibberish-or-not crate 的基於 BERT 的模型,將明文檢測準確率提高約 40%。
  • 效能: 使用 Rust 編寫,透過 Rayon 函式庫利用多執行緒,並使用名為 LemmeKnow 的快速 Rust 基礎識別器來快速確定字串類型(例如 IP 位址)。
  • 搜尋優化: 修剪搜尋樹並快取結果以避免重複計算。

適用對象

主要面向 CTF (Capture The Flag) 參賽者、資安研究人員以及任何需要快速解碼神秘文本字串的人。

亮點

  • 自動化解碼: 支援 16 種以上的解碼器,並可以處理多級解密(例如:Rot13 → Base64 → Rot13)。
  • AI 驅動的檢測: 可選的基於 BERT 的模型,可顯著提高亂碼檢測的準確性。
  • 高速: 基於 Rust 建構,實現高效能多執行緒解碼。
  • 基於 CTF 的測試: 透過超過 15,000 個 CTF 挑戰及其解題報告(writeups)的資料集進行測試,以確保實際效果。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案