第 2 章 威脅模型與信任邊界

本章建立共通的威脅模型與信任邊界詞彙:我們保護哪些資產、攻擊者能做什麼、 哪些前提假設必須成立,以及系統在驗證失敗或參數不符時必須(MUST)如何採取失效關閉(fail closed)。

文件中繼資料

白皮書版本
v1.0
最後更新日期
2026-01-14

2.1 資產盤點

  • 內容機密性:明文檔案位元組與解密金鑰(CEK)必須(MUST)受到保護。
  • 內容完整性:密文與中繼資料必須(MUST)可偵測篡改(AEAD 驗證)。
  • 存取控制:短效存取權杖、傳送者登入權杖,以及撤銷狀態。
  • 可用性:在常見網路條件下上傳、下載及續傳的能力。

2.2 攻擊者模型

  • 網路攻擊者:可以觀察、延遲、丟棄與重放流量;無法破解現代 TLS/AEAD 密碼學。
  • Web 攻擊者:可以構造惡意連結、嘗試 XSS/CSRF,並嘗試 UI 注入/提示注入。
  • 濫用者:可以自動化上傳/下載,以耗盡配額、抓取內容或放大流量。
  • 假設伺服器端的對手不持有 CEK;若 CEK 外洩(例如連結被分享出去),機密性依設計即告喪失。

2.3 安全性假設

  • 用戶端執行的是可信任的程式碼(沒有惡意擴充功能或惡意軟體);否則零知識機制無法保護端點。
  • 在標準瀏覽器行為下,URL 片段(#...)不會透過 HTTP 請求傳送到伺服器。
  • 密碼學基本元件(AES-GCM、SHA-256、TLS)使用正確,且尚未被攻破。

2.4 信任邊界

  • 用戶端邊界:加密/解密與 CEK 管理僅在用戶端進行。
  • 邊緣/API 邊界:伺服器驗證權杖並提供密文/清單;不得(MUST NOT)得知 CEK。
  • 物件儲存邊界:儲存密文區塊與清單;就機密性而言視為不受信任。

2.5 失效關閉原則

  • 發生權杖驗證失敗、參數不符或 AEAD 驗證失敗時,系統必須(MUST)採取失效關閉。
  • 完整性檢查失敗時,不得(MUST NOT)輸出任何部分明文。
  • 錯誤訊息與日誌應(SHOULD)盡量減少敏感資料,且不得(MUST NOT)包含 URL 片段、CEK 或可推導出它們的素材。