裝置端加密

安全與架構

Revault 如何保護你的檔案,以及保護的界線在哪裡。

Revault 以原生 iOS 與 Android App 為核心打造。保險庫在你的手機上加密,預設保留在本機,不需要 Revault 帳號。同步與分享是各自獨立的選擇,不是使用保險庫的必要條件。

安全模型
你的裝置免帳號的行動應用程式
在本機加密AES-256-GCM
選用的私人雲端同步iOS 使用 iCloud,Android 使用 Google Drive

免帳號的行動應用程式

原生應用程式不需要 Revault 帳號、電子郵件地址、密碼或網頁登入。保險庫在裝置上建立並加密。僅在本機使用保險庫時,不會將你的檔案上傳到 Revault 的伺服器。

原生 App 不需要 Revault 帳號。選用的雲端同步使用你的 Apple 或 Google 帳號;商店購買則使用該平台的帳務帳號。

無需帳號的私人保險庫

保險庫解鎖圖形

每個保險庫都有隨機的 256 位元主金鑰。你的 5 × 5 裝置圖形會與隨機的 256 位元本機密語結合;使用 600,000 次迭代的 PBKDF2-HMAC-SHA-256 與全新的 128 位元鹽值,衍生出以 AES-256-GCM 包裝該主金鑰的金鑰。

在 5 × 5 的格線上畫出你的圖形,即可開啟對應的保險庫。其他保險庫及其名稱都不會顯示。同一台裝置上登錄的各保險庫,圖形必須互不相同;選擇圖形不會透露還有哪些其他保險庫存在。

這個解鎖圖形只能解鎖這台裝置。請保留復原金鑰,以便設定另一台裝置。

僅限裝置的金鑰保護

在 iOS 上,本機解鎖密語儲存在不同步的鑰匙圈 (Keychain) 項目中,且只有在裝置解鎖時才能存取。在 Android 上,裝置解鎖資料以不可匯出的 Android Keystore 金鑰加密,且需要裝置處於解鎖狀態。

本機解鎖密語不包含在原生雲端同步或可攜式備份中。iOS 的密語不是 Secure Enclave 金鑰,Android 的硬體支援則取決於裝置。一旦本機密語遭到洩漏,裝置保護並不能讓可預測的圖形變得安全。

上傳前先加密

檔案內容、檔名、預覽、保險庫名稱與資料夾結構都在裝置上加密。AES-256-GCM 會驗證中繼資料與金鑰包裝;檔案使用 AES-GCM-HKDF 串流格式,因此加密時可以分段處理大型檔案。

本機保險庫將加密檔案存放在 App 的私人儲存空間中。在保險庫內拍攝照片或影片,會在加密前使用私人暫存,而不是自動儲存一份到相簿。匯入現有檔案不會從「照片」或其他服務供應商移除原始檔案。

私密的相機與檔案匯入

選用的私人雲端同步

iOS 使用 iCloud 中的私人 CloudKit 資料庫,Android 則使用 Google Drive 的私人 App 儲存空間。檔案、名稱與預覽都會在傳輸前加密。你的雲端服務供應商仍可看到大小、識別碼與時間戳記等營運資訊。

同步預設為關閉,並針對每台裝置上的每個保險庫分別選擇。關閉同步會停止該裝置後續的傳輸,但不會刪除已存在的加密雲端副本。要連接同一平台上的另一台裝置,需使用相同的原生雲端帳號與該保險庫的復原金鑰。

iCloud 與 Google Drive 同步僅限於各自的平台內。若要在 iOS 與 Android 之間即時同步,請選擇 Revault Cloud,或使用加密的手機轉移功能。

適用於 iOS 與 Android 加密保險庫的 Pro 儲存空間。Revault 只會收到密文,絕不會收到你的保險庫金鑰或復原詞組。更換服務供應商後,先前的雲端副本仍會保留。

選用的私人雲端同步

自動鎖定保險庫

預設逾時為 60 秒。你可以在該保險庫的設定中選擇 30 秒、1 分鐘、2 分鐘、5 分鐘或 10 分鐘。分享的保險庫使用 60 秒的預設值;不論選擇哪個逾時時間,背景鎖定都會生效。

行動版 App 在切換到背景時會立即鎖定。鎖定會取消保險庫作業、清除已解密的檔案資訊與搜尋狀態、清理暫時預覽,並抹除所擁有的金鑰緩衝區。iOS 也會遮蓋 App 切換器快照;Android 則使用作業系統的安全視窗旗標。

受管理的記憶體與裝置儲存空間,無法保證立即以鑑識等級抹除每一份副本。自動鎖定也無法收回你已明確匯出到其他 App 的檔案。

自動鎖定保險庫

加密備份與復原

復原金鑰用來解鎖加密的保險庫金鑰資料,其中不含你的檔案。備份包含加密的檔案,但不能取代復原金鑰的保管。請分開存放,並防止兩者遺失。

請在設定時儲存你的復原詞組。Revault 會產生 18 個隨機單字,你也可以自行選擇並確認詞組。有了它,你就能在沒有本機圖形的情況下加入另一台裝置或還原備份。你可以在保險庫設定中更換;較舊的備份可能仍需要原本的金鑰。既有的十六進位金鑰仍然有效。Revault 不會保留副本,也無法為你重設。

手機轉移會建立全新的加密副本與獨立的轉移金鑰,包括在 iPhone 與 Android 之間。原始保險庫仍留在舊手機上。在移除舊檔案之前,請先驗證接收端的保險庫,並保留獨立的備份,因為同步可能會傳播刪除動作。

在 iPhone 與 Android 之間安全轉移

安全分享

你的保險庫圖形、復原金鑰與保險庫主金鑰絕不會包含在分享內容中。服務只會收到加密後的檔案資料,以及大小、檢查碼、時間戳記和存取工作階段次數等營運中繼資料。另外的解密密語不會上傳。

受控分享使用由伺服器強制執行的到期時間,以及選用的存取工作階段限制、匯出限制與首次存取後的計時器。iOS 也支援私人的 CloudKit 邀請,但這類邀請不會強制執行那些伺服器控制。收件人使用另外提供的密語開啟隔離的分享保險庫,無需你的個人圖形。

到期與撤銷只能停止日後透過 Revault 取得內容,無法抹除收件人保留的螢幕截圖、匯出的檔案或副本。即使停用匯出,也請選擇你信任的對象。

安全分享

選用的保險庫安全控制

開啟指定的保險庫時,安全退出會移除其他保險庫的本機存取權與資料。雲端副本會保留,而僅存在離線的保險庫若沒有另外備份,可能會遺失。它不保證能以鑑識等級抹除。

活動歷程與入侵照片警示可依保險庫個別選用。裝置上的歷程與照片會留在本機並加密;受控分享則可能另外記錄存取工作階段的時間戳記。入侵拍攝需要相機權限和一般的系統指示。鎖定狀態下的拍攝使用公開的加密金鑰;檢視照片仍需要解鎖保險庫。

安全退出

關於安全性的說明

使用本機保險庫不會將檔案上傳到 Revault。選用的原生同步會讓 Apple 或 Google 取得營運中繼資料。受控分享會將加密副本與存取中繼資料傳送給 Revault,但不會上傳另外的解密密語。

惡意軟體、遭入侵的作業系統或 App,以及有人看著已解鎖的螢幕,都可能洩漏明文。更改圖形不會撤銷其他裝置、使舊備份失效,也不會輪替保險庫主金鑰。如果保險庫金鑰或復原密語已遭洩漏,請把檔案移到使用全新金鑰的新保險庫。

Revault 尚未經過獨立安全稽核。這些是對已實作密碼學設計的說明,並非認證,也不是對每種入侵的保證。

使用情況分析

預設為啟用。Mixpanel 會收到功能使用事件和一組隨機的分析 ID。保險庫內容、名稱、圖形、金鑰和分享密語都不包含在內。你可以隨時為這個瀏覽器或裝置關閉分析。