我有一個服務器應用程序接受客戶端應用程序的多個實例/用戶通過Internet /套接字連接登錄。用戶名和密碼將被保存在服務器上的數據庫中。但是,如何安全地保存它們?如何安全地進行身份驗證和從客戶端發送用戶名/密碼?目前我以純文本字符串的形式發送一切。如何安全地保存併發送登錄用戶名/密碼?
服務器/客戶端之間會有流式數據(財務;股票價格),但這些數據並不重要,所以我真的不需要確保這一點。
我有一個服務器應用程序接受客戶端應用程序的多個實例/用戶通過Internet /套接字連接登錄。用戶名和密碼將被保存在服務器上的數據庫中。但是,如何安全地保存它們?如何安全地進行身份驗證和從客戶端發送用戶名/密碼?目前我以純文本字符串的形式發送一切。如何安全地保存併發送登錄用戶名/密碼?
服務器/客戶端之間會有流式數據(財務;股票價格),但這些數據並不重要,所以我真的不需要確保這一點。
您必須使用SHA-1散列和鹽對交易和存儲密碼執行https操作。
http://en.wikipedia.org/wiki/Salt_%28cryptography%29
添加一些例子:
http://www.obviex.com/samples/hash.aspx
你可以
使用微軟的DPAPI
看樣這裏的客戶端連接到服務器 - http://www.dotnetspider.com/resources/40748-Networking-Threading-DPAPI-Sample-App.aspx
也就是說,(澄清)完全不存儲密碼,只存儲密碼的散列。 –
謝謝!作爲服務器應用程序的管理員,我仍然能夠查看和設置/更改密碼嗎? – bretddog
是的,但你不能檢索用戶密碼,你只能重置它:) – ykatchou