使用步驟
- 選擇「加密」,再選擇文字或檔案。
- 輸入內容,並輸入兩次密碼。
- 點選「加密」,複製密文或儲存 .enc 檔案。
- 需要檢視時選擇「解密」,貼上密文或選擇檔案,輸入同一個密碼。
引數說明
- 演算法
- AES-256 GCM 模式,每次使用隨機鹽值和隨機數。金鑰由密碼經 PBKDF2-SHA256 迭代 60 萬次派生,可以大幅減慢暴力猜測。
- 檔案
- 原檔名會一起加密儲存,解密後恢復原名。加密後的檔案以 .enc 結尾。
加密後的資料裡有什麼
輸出是一個佈局固定的短二進位制結構:
| 部分 | 大小 | 作用 |
|---|---|---|
| 版本 | 1 位元組 | 目前是 1 |
| 鹽(Salt) | 16 位元組 | 隨機生成,讓每次的金鑰都不一樣 |
| Nonce | 12 位元組 | 隨機生成,絕不會與同一個金鑰重複使用 |
| 密文 | 與輸入相同 | 加密後的內容 |
| 認證標籤 | 16 位元組 | 用來發現密碼錯誤或任何改動 |
這樣額外增加 45 位元組。文字以 Base64 顯示,所以像 “hello” 這樣 5 位元組的訊息會產生 50 位元組,也就是 68 個字元。檔案則按位元組原樣儲存,檔名先存放在加密部分的最前面(2 位元組的長度,後面跟著 UTF-8 編碼的名稱),所以 .enc 檔案會比原檔案稍大一點。
由於鹽和 Nonce 是隨機的,用同一個密碼對同一段文字加密兩次,得到的結果不同,但兩者都能正確解密。金鑰由 PBKDF2 配合 HMAC-SHA256 派生,迭代 600,000 次,這是 OWASP 密碼儲存指南給這個函式的數值。
常見問題
忘記密碼怎麼辦?
無法恢復。沒有後門,任何人都無法重置密碼。
密碼要多強?
長度最重要。四個以上隨機詞語組成的口令,或 12 位以上隨機字元,都很難被猜中,而且每次猜測都要經過緩慢的金鑰派生。
能用其他軟體解密嗎?
使用的是標準的 AES-GCM 與 PBKDF2,但資料排列(版本、鹽值、隨機數、密文)是本工具自訂的,最方便的是在這裡解密。
會上傳到伺服器嗎?
不會。加密使用瀏覽器內建的 Web Crypto,文字和密碼都不會離開你的裝置。
隱私說明
本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。