2012-12-29 41 views
6

在Windows應用商店應用的.NET API中,缺少SecureString類。另外PasswordBox不會將密碼存儲在安全字符串中。在Windows應用商店應用程序中安全地存儲字符串的等效功能是什麼?或者Windows 8有一些安全機制來防止他人讀取應用程序的內存(或故意崩潰後的內存轉儲)WinRT中SecureString的等價物是什麼?

+0

相關答案在這裏:http://social.msdn.microsoft.com/Forums/is/winappswithcsharp/thread/4f5ca16e-a04c-4fa6-9908-ea9e0a24b788 –

回答

2

沒有。存儲應用程序的.NET api中的遺漏是因爲一個類無法在WinRT應用程序中工作,因爲它依賴於不可用的操作系統支持,因爲有機會在那裏削減框架中的一些死木,或者因爲類只是簡單在商店應用程序中沒有意義。

對SecureString的省略大大有利於「沒有意義」的解釋。攻擊者永遠不會經歷從多個千兆字節的交換文件數據中挖掘字符串的麻煩。這是更容易從商店下載你的應用程序,並使用調試器在他舒適的家中。

+0

感謝漢斯。我將其作爲答案。但我不確定這種「沒有意義」的情況是否真的適用。這意味着SecureString在桌面應用程序中也沒有意義。爲什麼在第一時間實施呢?我可以想象,高度安全的環境(政府)實施一項政策,不以明文形式存儲密碼。我可以想象,Windows應用商店應用在這些環境中可能有意義。我不確定,但不可能崩潰應用程序並在內存轉儲中搜索(比搜索交換文件更容易)? –

+1

沒有物理安全的替代物,沒有它,沒有任何軟件安全措施可以工作。至少在桌面應用程序中,您可以控制它的分佈。該政府機構需要良好的鎖定,並且必須確保沒有人通過垃圾箱進行翻箱倒櫃。 SecureString解決垃圾箱問題。當通過任何人都可以訪問的商店進行部署時,沒有任何東西。 –

+0

我完全同意沒有物理安全的替代物。但是,與Windows應用商店應用一樣,您也可以在不從商店安裝時使用側向加載來控制發行版,但就安全性而言,我並沒有看到與桌面應用程序有很大不同。我相信,將應用程序直接安裝到機器上將是未來某些公司的常見情況。我爲一家已經這樣做的公司(爲顯示業務數據的經理提供的應用程序)工作。 –

相關問題