簡體   English   中英

安全的數據加密和驗證

[英]Secure data encryption and validation

想象一個針對一個玩家的游戲,其中包含許多測試。 完成所有測試后,玩家可以選擇將結果上傳到服務器-獲得最佳結果的玩家將贏得大獎。 服務器需要能夠驗證結果數據,以查看其是否已被黑客入侵甚至是垃圾郵件。 關於如何有效實施的任何想法?

基本上你不能。 甚至沒有加密,代碼混淆或其他任何東西。 “永遠不要相信客戶”!

確保不涉及任何操作的唯一方法是在服務器上擁有所有游戲邏輯,並僅向用戶公開GUI。 然后,您可以將玩家發出的命令(擊鍵,按鈕單擊等)發送到服務器,在服務器上進行驗證(即使這不是那么容易!),處理所有必要的游戲邏輯並發回結果。

當然,如果您的游戲涉及任何與計時相關的事情,這是不可行的,因為對於每個玩家動作,都會有一個延遲,直到玩家獲得結果並看到效果為止。

對於大多數游戲而言,所有這些都是矯kill過正,您只需確保它們難以操作即可。

可用的反黑客工具可以使服務器與客戶端之間的通信無限地復雜化,混淆內存和例程,在每次運行時對其進行修改等等。

麻煩的是,大多數反黑客工具通常都會被黑客入侵,如果獎金足夠大,您的收入可能也會被黑客入侵。 甚至rootkit也可以扎根。 更不用說這種行為看起來很像一種病毒,它會引起人們極大的警惕,並可能最終導致許多沮喪的前客戶。

如果是像iPhone這樣的圍牆花園,我相信有確保手機不會越獄的工具,我不確定它們是否會被騙,但這仍然存在一個問題,即任何人都可以解碼通訊並上傳自己的通訊從完全其他的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM