0

安全滲透工具能夠從內存轉儲中獲取敏感信息。 據我所知,設置null爲任何變量應該罰款我猜...但我無法調用處置任何C#varialbes。如何安全地擦除內存中的敏感信息

基本上我計劃將鑰匙串中的所有東西存儲起來,每當我獲得價值和使用後,我將設置null清除......但爲什麼處置不能被稱爲......我不知道

如果有更好的方法來處理xamarin中的敏感數據變量,請讓我知道。

+1

當攻擊者能夠訪問您的系統時,所有投注都將關閉。這真的是你應該關注的地方嗎? –

+0

@JeroenVannevel - 儘可能讓這個儘可能難以使用可用的方法 – Shiva

+0

有'SecureString'類,但是您使用的API需要接受該類型作爲參數以便使用。唯一的解決方案是使用原生代碼,一旦完成後就可以安全地清除數據。 –

回答

2

Dispose()意味着在那些實現析構函數或終結器的對象上調用。要隱藏徘徊的敏感數據,我假設你的意思是string值。您可以實施SecureString。這會將您存儲的內存區域轉換爲密文。

適當的用法遍佈於堆棧溢出SecureString。但不知道它是否通過Xamarin支持。至少當它是密文時,它不會通過內存轉儲暴露。我警告你,這是一個奇怪的API實施。

+1

下面應該是需要進一步閱讀關於'SecureString':http://stackoverflow.com/questions/26190938/is-securestring-ever-practical-in-ac-sharp-application – NotMe

+0

@NOTME是的,我認爲這是在搜索中加載「SecureString」的第一篇文章。但這是它的許多偉大的文章之一。 – Greg

+0

我無法在PCL中安裝SecureString ...它說不能安裝任何想法嗎? – Shiva

相關問題