2009-05-04 184 views
0

我有一個客戶端應用程序需要保存SMTP服務器的用戶名/密碼。這些數據將進入SQL Server 2005,並由我的服務器應用程序使用。服務器應用程序將使用System.Net.Mail命名空間使用提供的憑據(以及該用戶的電子郵件地址)發送電子郵件。我怎樣才能輕鬆/安全地加密/解密密碼,以便我沒有通過電話線傳輸的明文密碼?請注意,客戶端和服務器應用程序不保證位於同一臺計算機上。在客戶端/服務器應用程序中加密/解密SMTP密碼

回答

1

.NET中有整個加密命名空間 - System.Security.Cryptography(example)因此,您可以加密/解密客戶端上的數據。

現在如何將密鑰存儲到密碼中。這可以存儲在加密的app.config中,如here所述。請注意,如果用戶具有管理員對機器的訪問權限,他們可以解密存儲在你的app.config中的密鑰。

+0

您似乎建議使用.Net託管的DPAPI接口來保護保護數據的密鑰。爲什麼不直接使用DPAPI來保護數據(即System.Security.Cryptography.ProtectedData)。只需要一個解鎖數據的密鑰,而不是解鎖密鑰的密鑰,最終解鎖數據。 – chyne 2009-05-04 20:16:43

相關問題