2010-04-23 111 views
0

我有一個基於Flash的遊戲,具有用SOAP服務實現的高分系統。有涉及的獎品,我想阻止某人使用FireBug或類似的發現Web服務路徑並提交假分數。如何確保從Flash客戶端到我的ASP服務器的SOAP請求來自Flash客戶端?

我認爲使用某種對數據進行加密,但我知道,有人可以反編譯的SWF和工作了我是如何做的。

我也考慮使用IP白名單,但由於傳入的數據將來自用戶的IP,而不是將無法正常工作的服務器。 (我敢肯定,我失去了一些東西很明顯這裏...)

我知道有這個一個久經考驗的解決方案,但我似乎並沒有要求Google正確的問題得到它。

任何幫助和建議,可以理解,謝謝

回答

1

所有的安全是基於使事情變得困難。它從不讓事情變得不可能。如何讓遊戲在啓動時使用單獨的服務註冊。它可以使用客戶端信息來構建某種特殊的代碼,這些代碼在遊戲的每次迭代中都是唯一的。遊戲可能會以難以仿效的方式改變代碼。然後,當遊戲結束時,得分將被提交給變形代碼並在服務器端進行驗證。

+0

爲什麼模仿?弄清楚,發送了什麼數據並使用tamperdata/firebug進行修改。除非您想使用爲每個會話生成的新加密器來加密傳輸。 – back2dos 2010-04-23 13:26:44

4

你想達到什麼是不可能的。你只能讓人難以做到。您可以做的最好的方法是使用加密並自行加密SWF,這通常會導致文件大小和性能較差。

最安全的方法是評價,甚至在服務器上運行了整場比賽。您可以嘗試確定客戶端發送給您的內容是否可能。不要確保人們使用你的客戶,你要確保人們按照你的規則來玩遊戲。

格爾茨
back2dos

相關問題