DATA VAULT / TECHNICAL DESIGN
加密、金鑰管理與儲存
單獨儲存個人資料並限制解密路徑,將儲存、使用、刪除和恢復作為統一生命週期設計。
DEEP DIVE
瞭解機制與影響。
僅憑演算法名稱無法說明降低了哪些風險。透過地址儲存與配送示例瞭解金鑰及資料流。
分離資料與加密金鑰
信封加密示例用 DEK 加密個人資料,用 KEK 保護 DEK。採用認證加密,在使用前拒絕被篡改資料。
- DEK / KEK
- 資料庫存取許可權不得同時授予 KMS 管理金鑰的存取許可權。
- nonce / authentication tag
- 避免 AES-GCM 中 nonce 重複使用,拒絕認證標籤驗證失敗的資料。
- 附加認證資料(AAD)
- 繫結 tenant_id、record_id 和 schema_version,以檢測密文替換。
- 金鑰輪換
- 區分輪換 KEK 時重新封裝 DEK,與輪換 DEK 時重新加密資料。
CLOUD KEY MANAGEMENT
用於金鑰保管的雲端金鑰服務。
地址 Vault 使用 Azure Key Vault 管理 KEK,將保護資料加密金鑰(DEK)的金鑰使用權限與資料庫存取分離。
- Azure
- 使用 Azure Key Vault;需要專用 HSM 環境時選擇 Azure Managed HSM。
- AWS
- 目前 DEV 產品是 Azure 上的配送地址 API,不含郵件傳送、證件圖片、OCR 或 AWS KMS 整合。通用架構範例不等於已提供功能。儲存位置、營運責任與額外整合需在導入時確認。
- OneNym 的職責
- 結合雲端金鑰管理與業務流程規則,控制誰可讀取哪些資料、用於何種目的以及截至何時。
儲存密文與封裝的 DEK,不持久儲存明文 DEK。金鑰使用許可權被攻破可能允許解密,因此需分離資料、金鑰及管理存取。
儘量減少解密路徑
將資料庫連線與解密許可權分離。僅授權操作解密必要欄位,避免無關個人資料進入響應、日誌及異常。
- 欄位級響應
- 僅回傳獲准欄位,例如配送所需地址。
- 管理存取
- 透過強身份驗證、時限和審計記錄區分日常與緊急操作。
- 搜尋設計
- 加密欄位搜尋需單獨設計,搜尋雜湊也存在匹配與猜測風險。
刪除、備份與恢復
按用途定義留存,追蹤來源資料、副本、備份及合作方的刪除。恢復後重新應用刪除記錄,防止已刪資料重新出現。
- 完成刪除
- 分別記錄邏輯刪除、物理刪除及金鑰銷燬。
- 金鑰銷燬
- 僅在能清除包括備份在內的所有可恢復副本時考慮專用金鑰。銷燬共享金鑰也會影響其他記錄。
- 恢復目標
- 定義 RPO 與 RTO,並實際測試恢復。
- 審計日誌
- 記錄操作方、操作、目標引用、時間及結果。不記錄個人資料或原始權杖。
DATA / INTEGRATION EXAMPLE
資料與整合示例
這些示例用於說明設計。欄位名及值僅供演示,並非可執行的 API 參考。
{
"operation": "Vault record metadata example",
"record": {
"tenant_id": "tenant_a",
"record_id": "rec_example_01",
"schema_version": 1,
"ciphertext": "<encrypted bytes>",
"wrapped_dek": "<wrapped key>",
"kek_version": "key-version-2",
"retention_until": "<agreed retention date>",
"status": "active"
}
}本例說明儲存結構,nonce 與標籤應遵循密碼庫格式。加密本身無法防止合法解密許可權被濫用。
相關技術設計
回傳隱私保護平台概覽為您的業務流程設計整合。
梳理留存資料、合作方及必要操作,尋找減少暴露的方法。
諮詢技術整合