2011-03-16 68 views
1

用於保護WinForms應用程序內部HTTP通信的方法免受嗅探。如何從嗅探中保護WinForms應用程序中的HTTP通信

我想確保源自所有的HTTP流量說的WebRequest不使用嗅探應用程序,如提琴手有人直接可見。

除了使用HTTPS是否有用於發送網絡流量了一個WinForms應用程序,unsniffable的任何替代方案?

+0

你不能讓它變得無法言喻,你只能使它對竊聽者無法理解。 – 2011-03-16 10:09:07

+0

所有的答案都很棒!基本上我可以使用WinForms上的公鑰對數據進行加密,然後通過HTTPS進行傳輸。 – Jeremy 2011-03-16 22:05:18

+0

如果有很好的答案,可以投票給他們... – andynormancx 2011-03-16 23:45:35

回答

1

您可以創建一個到網絡服務器的VPN連接,然後通過它來路由流量?

您可以創建一個SSH連接到具有通過SHH,那麼VPN VPN隧道到Web服務器,然後將所有流量的服務器?

+0

此問題提供了兩種方法來保護客戶端/服務器類型場景中Winforms應用程序與服務器之間的通信。 – Jeremy 2011-03-17 10:06:59

1

您可以加密您的有效負載,但是如果您希望整個傳輸安全,則使用HTTPS即可。

+0

加密圖層內的加密文本?可能矯枉過正。 – Jeremy 2011-03-17 10:08:29

+0

@Jeremy - 我不認爲你瞭解我:我想說如果你想堅持使用HTTP,那麼內容可以被加密,但更好的解決方案是HTTPS。那麼你不必加密文件。 – 2011-03-17 10:26:11

1

如果您正在使用WCF背後的WinForms應用程序的通信工具,然後this MSDN series可能是usesful。它詳細描述了一系列替代安全選項。

+0

偉大的鏈接。謝謝! – Jeremy 2011-03-17 10:08:08

1

當然,僅使用HTTPS是不夠的。您還必須確保HTTPS管道另一端的服務器是您期望的具有正確證書的服務器。

否則有人使用招(或類似的東西),可以用自己的自簽名證書的HTTPS請求作出迴應。

的Fiddler有一個功能,其中它充當客戶機和HTTPS連接的服務器之間的代理。它使用自己的自簽名證書與客戶端交談,然後使用HTTPS與遠程服務器交談,代理它們之間的數據並允許用戶查看數據的純文本。如果客戶端沒有檢查到另一端的證書是否正確,它永遠不會知道連接實際上並不安全。

是的,你需要使用HTTPS/SSL或其他形式的加密,因爲在本地機器上擁有管理員權限的人可以看到你通過網絡發送的任何數據,所以沒有其他方法可以隱藏它們。

+0

這是有用的信息,但它不提供HTTPS的任何替代方法。 – Jeremy 2011-03-17 10:06:20