工具用的順手嗎?
你的回饋能幫助我們做得更好
使用 Blowfish 的 ECB、CBC、CFB 或 OFB 模式進行文字加解密,適合舊系統相容與測試。
請輸入內容並點選加密/解密按鈕
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
Blowfish 是對稱式分組密碼,加密和解密使用同一把金鑰。本頁可用文字輸入加密,並以 Base64 或 Hex 密文格式解密;輸出會同時提供 Base64 與 Hex,解密時另顯示文字結果。適合已有明確演算法與參數的舊資料相容檢查、程式互通測試或密碼學教學,不應據此替新系統選擇加密設計。
Blowfish 每個分組為 64 位元(8 位元組)。本頁提供 128、192、256、448 位元金鑰長度選項,預設 256 位元;這是本頁的可選項目,不代表演算法只接受這些長度。Bruce Schneier 的演算法說明列出 32 至 448 位元的可變金鑰範圍,並提醒使用者考量 64 位元分組的限制。64 位元分組在長時間、大量資料環境中有碰撞風險,Sweet32 研究提供了此類情境的案例。
可選 ECB、CBC、CFB、OFB;預設為 CBC。ECB 不使用初始向量(IV),其他三種模式需要 IV。Blowfish 的分組長度是 8 位元組,因此相容資料的 IV 也須依來源規格準備。加密與解密必須使用相同模式、金鑰、IV 和填充方式,否則結果可能無法還原。
填充用來處理輸入長度與區塊需求之間的差異。本頁選項為 PKCS7、Zero Padding、No Padding、ISO 10126、ANSI X.923。來源系統採用哪一種,就應選相同方式;No Padding 尤其需要確認資料長度及位元組格式符合來源規格。Base64 和 Hex 只是呈現位元組的文字編碼,不是加密方式。RFC 2451 描述的 ESP CBC 格式有其封包與填充規則,不宜直接當成所有 Blowfish 程式庫的預設。
指南
依步驟完成操作,並透過範例核對輸入與結果。
向資料來源確認 Blowfish 模式、金鑰位元組與表示格式、填充、IV,以及明文原本的字元編碼。若只有密文而不知道這些參數,無法只靠切換選項保證還原。
選擇金鑰長度、模式和填充,將測試金鑰設為文字、Hex 或 Base64 格式;需要時可產生隨機金鑰。輸入測試文字並執行加密,記下輸出的 Base64 或 Hex。CBC、CFB、OFB 會用到 IV;自動產生時,每次加密使用的 IV 會另行顯示,不會包進輸出的密文,需與該密文一併記錄。
貼上完整密文,選擇正確的 Base64 或 Hex 輸入格式,填回相同金鑰及其格式、模式、填充和 IV,再執行解密。核對文字是否符合預期;若原文並非 UTF-8,文字欄可能無法正確顯示,請以來源編碼和位元組資料另行比對。
情境
查看這項工具在不同工作與生活流程中的用法。
維護人員已取得來源系統的 Blowfish 參數時,可用不含個資的樣本比較密文與解密結果,逐一找出金鑰格式、IV 或填充差異,再將確認過的測試案例交給移轉流程。
學習者以固定測試文字和金鑰,比較 ECB、CBC、CFB、OFB 的設定需求,並觀察 IV 與填充如何影響互通條件。這類示範用於理解概念,不構成安全協定範例。
開發者可保存非敏感明文、完整參數與預期密文字節,作為舊程式替換前後的相容檢查。只保存一段密文不足以重現測試。
問答
集中解答常見疑問與容易混淆的問題。
先核對金鑰內容及格式,再確認模式、填充、IV 與密文是 Base64 還是 Hex。若位元組解密正確但文字不可讀,也可能是來源明文使用了不同字元編碼;不要只憑文字外觀判定解密成功。
不行。它們只是密文字節的文字表示,仍須有相同金鑰及來源使用的模式、填充;CBC、CFB、OFB 還須提供對應 IV。缺少必要參數時,無法從編碼格式推回原設定。
不會。IV 會另外顯示,解密時需要手動提供同一個值,並依原格式選 Hex 或 Base64。請將測試密文與其 IV、模式及填充一併記錄。
不可以。此頁是依已知設定進行加密或解密,不會猜測、破解金鑰,也無法從密文本身確定原始參數。
須知
使用前了解適用範圍、結果限制與必要提醒。
Blowfish 的 64 位元分組較小,長時間或大量資料使用時存在已研究的碰撞風險;此頁提供的 ECB、CBC、CFB、OFB 也沒有附帶訊息驗證標籤。能解密出文字不表示密文未遭修改,也不證明金鑰或來源可信。請勿輸入正式金鑰、帳密、個人資料或機密內容,測試時使用虛構資料。新系統應採用經審查的現代認證加密設計,並按其規格管理金鑰、nonce/IV 與驗證標籤。
推薦
查找相關工具、專題與可用的 API 能力。