免費工具

用密碼加密檔案

透過聊天軟體或郵件發出去的檔案,會以明文躺在他們的伺服器上。不如在這裡把它加密:密碼變成金鑰,檔案變成一串沒有密碼就讀不出來的位元組。加密和解密都在你的瀏覽器裡進行,檔案不會上傳到任何地方。

用瀏覽器內建的功能做 AES-256。密碼請和檔案分開交給對方。

把檔案拖到這裡 或者

全部在瀏覽器裡計算:檔案既不會傳到我們這裡,也不會傳到別處。密碼不會儲存在任何地方,忘了密碼,就等於丟了檔案。

加密後的檔案裡裝著什麼

得到的是一個副檔名為 .404enc的檔案。它的開頭是格式標記、金鑰拉伸的輪數、一段隨機鹽和初始化向量,這些都不是秘密,而且必須有它們,才能用同一個密碼解開檔案。再往後是 AES-256-GCM 密文,原始檔名就藏在裡面:像“護照掃描件.pdf”這樣的名字,不用解密也知道里面是什麼,所以檔名同樣被藏起來。

GCM 模式會校驗完整性:檔案裡哪怕改動一個位元組,解密也不會吐出一個壞掉的結果,而是老老實實地拒絕。密碼不對時它的表現一模一樣,兩者無法區分,這樣才對。

一點限制

整個檔案都要進到標籤頁的記憶體裡:幾百兆瀏覽器扛得住,幾十 GB 就不行了。大的壓縮包還是用桌面程式更好。另外請記住,加密檔案保護的是內容,不是“傳送”這件事本身:你給某人發過東西,這一點依然看得見。

相關工具: 密碼生成器, 清除照片後設資料404 Send,如果檔案要直接傳過去,繞開別人的伺服器。

內容遮住了,路還露著

就算看不到內容,你在什麼時候把檔案發給了誰,依然看得見。404 VPN 遮住的正是這一部分,而訪問日誌我們不儲存。

原理 →

常見問題

guest@404vpn:~$ cat file-crypt-faq.md
[01] $ 這比帶密碼的壓縮包好在哪?
> 好在什麼都不用裝,也好在這裡用的演算法確定是現代的。老式 ZIP 壓縮包的加密幾分鐘就能破,而某個壓縮包裡究竟用的是哪種加密,從檔案本身看不出來。這裡永遠是 GCM 模式的 AES-256:它不僅藏住內容,還能發現檔案在路上有沒有被掉包或損壞。
[02] $ 密碼該往哪兒發?
> 走任何一條和檔案不同的渠道。要點在於分開:萬一通訊記錄被人讀到,裡面不能同時有檔案和密碼。檔案是用郵件發的,密碼就用語音說,或者用聊天軟體發;反過來也一樣。
[03] $ 要是我忘了密碼會怎樣?
> 檔案將永遠無法讀取。我們不儲存密碼、金鑰,也不儲存檔案副本,沒有東西可以恢復,也沒有人能恢復。這不是小字條款,而是設計本身:一個能幫你恢復檔案的服務,也就能讀你的檔案。
[04] $ 五個字母的密碼夠安全嗎?
> 不夠。金鑰是從密碼經過拉伸推匯出來的,一百萬輪 PBKDF2,為的是讓窮舉變貴,但這救不了一個短的字典密碼。取三四個互不相干的詞,或者用我們的密碼生成器:在這裡長度位元殊符號更重要。
[05] $ 檔案真的不會發到你們那裡嗎?
> 真的。全部由 WebCrypto 計算,就是瀏覽器用來加密你的連線的那一套,而且是在標籤頁裡算的。加密和解密時,頁面一個網路請求都不發;在開發者工具的“網路”標籤裡就能看到。