0
- 我有一個具有保密用戶信息的SQLite數據庫。
- 該數據庫可以在其他機器上覆制
- 我信任用戶,而不是其他應用
- 用戶必須在全球服務器偶爾訪問
安全目標
- 除了授權的程序(我的)以外的任何程序都無法訪問SQLite數據庫。
- 打破一臺機器上的安全性不會破壞在其他機器上的安全
- 該系統必須可更新(這意味着如果是有缺陷的一些算法,例如一個特定的密鑰生成算法中示出,它可以被改變)
設計建議
使用加密的SQLite數據庫存儲OS安全存儲中的關鍵。
問題
任何窗口破解將允許人來訪問密鑰違反目標#所有機器2
注意
- 這種方法類似,如果我將密鑰存儲在可執行文件中,破壞安全性將會包含所有系統。
- 此外,我引用了Windows安全存儲。雖然,如果必要的話,我會採用特定於操作系統的解決方案,但我更願意使用非特定於操作系統的解決方案
關於如何滿足設計目標的任何想法?