2012-02-17 61 views
5

爲了保證電子郵件地址在我正在處理的項目中處於隱私狀態的額外安全性,我希望將存儲在我們數據庫中的所有電子郵件都加密。但是,我們正在使用Asp.Net成員資格提供程序,並且電子郵件以明文形式顯示在表aspnet_Membership的電子郵件列中。他們的方式是實現這一目標嗎?理想情況下,一個簡單的方法。是否可以在ApplicationServices數據庫中加密電子郵件地址?

+1

加密沒有什麼簡單的。不是因爲加密本身......如果你加密電子郵件,你必須保護你的祕密或管理你的密鑰。你有沒有想過你會怎麼做呢? – 2012-02-17 15:51:15

+0

@EstebanAraya:嗯,我知道沒有完美的解決方案,但我只是打算把密鑰放在代碼中。一旦編譯完成,找到它們並不明顯。另外,這並不是因爲某人有權訪問數據庫,該人員可以訪問該DLL。 – 2012-02-17 16:14:32

回答

2

我會創建一個自定義提供程序,只需添加少量的代碼來加密電子郵件地址。

他們發佈來源爲ASP.net提供

http://weblogs.asp.net/scottgu/archive/2006/04/13/442772.aspx

如果你下載的ProviderToolkitSamples.msi

使用SQLMembershipProvider.cs上線366上存儲的電子郵件中的成員資格提供地址你可以在調用插入存儲過程之前加密它。

您還需要在從數據庫中檢索它時解密它。

這是一篇關於加密的好文章我會確保你在電子郵件地址中包含一個Salt,以便它更安全。

http://hectorcorrea.com/blog/Encrypt-and-Decrypt-a-string-in-C-Sharp

希望幫助!

+0

感謝您的鏈接!很有幫助! – 2012-02-21 18:16:00

相關問題