照片保險箱 App 安全嗎?信任之前要檢查的七件事
只要在裝置上以具名的加密演算法加密檔案、把密鑰存放在無法複製的地方,而且沒有能重設保險箱的帳號,照片保險箱 App 就是安全的。只在照片前面放一個 PIN 碼畫面的 App,在 App Store 上看起來也一模一樣。以下七項檢查,幾分鐘內就能分辨兩者。
為什麼「照片保險箱 App 安全嗎」有兩種答案
什麼都不加密的保險箱,和全部都加密的保險箱,在 App Store 上看起來很像:都顯示一把鎖,都說「私密」,都要求 PIN 碼。所以照片保險箱 App 安不安全,只能一款一款判斷。任何認真的保險箱都會清楚說明以下七件事;一件都沒說明的 App,已經給了你答案。
七項檢查
1. 有寫明加密演算法嗎?
安全的照片保險箱 App 會寫明它的加密演算法和參數,例如以區塊進行 AES-256-GCM 加密,每個檔案一把密鑰。「軍規等級」、「銀行等級」和「100% 安全」什麼都沒說明。如果 App Store 頁面、網站和支援頁面從未寫明任何演算法,在開發者說明之前,請把照片視為未加密。
2. 密鑰在哪裡?能被複製嗎?
只由 PIN 碼衍生的密鑰,可以在另一台電腦上被猜出:複製檔案,然後嘗試每一組四位數 PIN 碼。由 Secure Enclave 包裝的密鑰無法離開 iPhone,因此每一次猜測都必須在那支 iPhone 上執行,而 iPhone 可以減緩猜測的速度。請留意「Secure Enclave」這個詞,以及附有迭代次數的密鑰衍生函式。
3. 有帳號嗎?
可重設密碼的帳號很方便,但它也是另一個入口。如果 App 透過電子郵件重設 PIN 碼,任何掌控該電子郵件地址的人都能進入;如果 App 能在網站上顯示你的照片,那麼至少在那個時候,照片是在它的伺服器上解密的。沒有帳號的 App,就沒有人能重設任何東西,所以復原短語就由你自己保管。
4. 隱私權標籤怎麼寫?
App Store 的標籤是由開發者填寫的,但它仍能區分含有廣告和分析程式碼的 App 與不含的 App。「用來追蹤你的資料」代表存放你照片的 App 內執行著追蹤程式碼。「與你連結的資料」代表收集的資料與你的身分相關聯。「未收集資料」則是開發者聲明 App 完全不收集任何資料。
5. 忘記密碼時會怎樣?
請閱讀支援頁面。「我們會替你重設」會讓你回到第 3 項檢查。「使用你的復原短語」代表沒有其他人能打開保險箱。「無能為力」而且沒有復原短語,雖然誠實,卻不留餘地。
6. App 中有廣告嗎?
有廣告的免費保險箱,是靠讓廣告聯播網進入 App 來賺取收入。廣告聯播網看不到你的照片,但會知道你在使用保險箱,以及使用的頻率。
7. 加密可以查證嗎?
公開的程式碼或已發布的格式規格,讓任何人都能拿 App 與其說明比對。很少有保險箱 App 提供其中任何一項。退而求其次,是附有真實參數的技術頁面:寫明 nonce 機制的開發者,就得對它負責。
七項檢查一覽表
| 檢查項目 | 薄弱的答案 | 可靠的答案 |
|---|---|---|
| 加密演算法 | 未指明,「軍規等級」 | 有寫明,並附參數 |
| 密鑰 | 只由 PIN 碼衍生 | 由 Secure Enclave 包裝,並以註明迭代次數的慢速密鑰衍生函式產生 |
| 帳號 | 電子郵件帳號、網頁存取 | 無 |
| 隱私權標籤 | 用來追蹤你的資料 | 未收集資料 |
| 忘記密碼 | 透過電子郵件重設 | 復原短語 |
| 廣告 | 有 | 無 |
| 能否查證 | 未公開任何內容 | 公開的程式碼或完整的技術頁面 |
Mirage Vault 對這七項的回答
Mirage Vault 是我們開發的,所以答案都寫在它的安全性頁面上,可以查證:以 1 MiB 區塊進行 AES-256-GCM 加密,每個檔案一把密鑰;PBKDF2-HMAC-SHA256 至少 600,000 次迭代,再透過 ECIES 以 Secure Enclave 中的 P-256 密鑰包裝;沒有帳號,也沒有伺服器;沒有分析、廣告或當機回報程式碼,App Store 標籤標示「未收集資料」;以 8 個單字的復原短語取代重設。比較頁面只根據其他 App 自己的說明,以相同的檢查項目評估它們,並註明各自的讀取日期。