2012-09-06 111 views
2

我在「應用程序數據」本地目錄中存儲我的應用程序的帳戶數據。我很好奇想要理解保護這個文件的正確方法。安全地存儲應用程序帳戶數據

就目前來看,這是一個簡單的文本文件。我可以簡單地使用AES 256位加密進行壓縮嗎?這足夠安全嗎?當然,那麼在我的程序中我需要存儲密鑰,那麼這是否有風險?

什麼是最好的方法?

乾杯, 阿德里安

+1

你的目標是什麼?你面臨什麼風險? –

+1

你可以用任何好的密碼進行加密,ZIPping不是必需的。請記住,任何有權訪問加密文件和程序的黑客都可以在程序運行時使用IDA調試器或'內存'中的工具找到密鑰(這就是爲什麼DVD加密最終被破壞的原因:數百萬人可以訪問加密的DVD和正在運行的解碼器軟件)。如果你只是想防止偶爾好奇的用戶(見戴維斯問題),我會說你的想法是好的。 –

+0

您的應用程序的用戶是否會登錄?如果是這樣,那麼你不需要在任何地方存儲密鑰,而是使用他們的密碼並用SHA-256進行初始化 - 你甚至可以使用哈希輪。你用什麼加密?不要試圖讓自己了。 DCPCrypt和LockBox 3是兩個很好的使用。 – Shambhala

回答

3

你可能要考慮的DPAPI(數據保護API)。 This SO answer解釋了一些您可以使用它的場景(用戶數據,程序數據)。

不要去發明自己的加密算法,並給你的加密密鑰存儲一些好的想法:這通常是整個安全鏈中最薄弱的一點。

0

在寫入文件之前,您可以加密敏感數據(或整個流/字符串)。 可選地,您可以將整個數據流壓縮/解壓縮到內存中,並將其寫入/從文件中讀取/讀取。在這種情況下,您只需使用較少的磁盤空間。

Ziping一個文件不是一個很好的解決方案。它假定在​​寫入/讀取配置文件數據時,您將有一段時間沒有加密文件。這可能是一個很大的安全漏洞。

相關問題