2010-09-19 81 views
2

雖然這主要集中在Windows Phone 7上,但我想這個原則是普遍的。我想在我的應用程序中設置密碼保護區。但是,我的應用程序完全脫機,因此我必須在電話上存儲憑證詳細信息。我最初的想法是存儲密碼和鹽的散列。這是最好的方式嗎?如果是這樣,那麼散列和salt是否應該以純文本的形式存儲,或者是否有辦法確保它們被加密?我明白,通過電話完成整個計劃最終會被破解,但如何才能最大限度地提高屏障?感謝您的任何建議如何離線存儲密碼

+0

您應該使用[ProtectedData類](http://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28VS.95%29.aspx)來安全地存儲各種位機密信息。通過[如何在Windows Phone應用程序中加密數據]瞭解更多信息(http://msdn.microsoft.com/zh-cn/library/windowsphone/develop/hh487164%28v=vs.92%29.aspx) – SandRock 2012-10-07 10:33:16

+0

SandRock ,你應該做此評論的答案,所以我可以投上一票:) – Jac 2013-04-01 00:38:42

回答

1

是的,你應該存儲密碼和鹽的散列。如果您不方便以純文本格式存儲這些文件,則可以對這些細節進行對稱加密。但是,你也必須將對稱密鑰存儲在某個地方。

在決定採取哪種方法,考慮被保護/保護工作的價值,它會採取加密/解密時間(althoug我懷疑這會是一個問題,在您的情況。)

由於你提到過,重要的是要記住,安全是一個過程,而不是你一次只能忘記的事情。定期檢查安全實踐並及時瞭解最佳實踐和違規行爲的變化非常重要。

也就是說,我希望手機上的日期安全性至少可以保持好幾個月。

2

就個人而言,我會加密與基於設備(如果可能的唯一ID的鹽密碼,一些自定義的用戶輸入像一個真正的短密碼[狗,貓,鮑勃] - 那種事)。

只是一個建議。如果你覺得它不是最好的,請不要低估它。

-2

我會簡單地存儲MD5s。

+2

MD5現在被認爲是不安全的cyprographically,不應該被用於保護密碼。 – 2010-09-20 08:55:54

+0

我發現它適合他的需求 – thelost 2010-09-21 17:14:23