2012-04-03 56 views
5

我的工作,需要一個服務器做最繁重的應用。我想防止盜版客戶端向該服務器發送請求。有沒有辦法向請求發送一些標識符,以便我的服務器可以詢問Android Market是否有人使用該ID實際上購買了該應用程序?我會怎麼做呢?的Android防止盜版與服務器請求

注意,只是保護與LVL,應用程序將無法正常工作,因爲人們可以很容易編寫與服務器接口的應用程序,並仍然提供相同的功能的付費應用。

回答

6

首先:對於你的設備是不是你的控制之下(比如你的情況Android設備)上運行的任何事情,100%安全。

你可以做「濫」的若干措施更難:

  • 問題隨機會話密鑰(加密保護)有時間限制一個全成登錄後這樣一個新的登錄需要經過一定的發生時間已經
  • 問題隨機交互密鑰(加密保護),用於其被使用一次後立即失效每一個通信步驟,通過
  • 當全成登錄發生終止與相同的憑證相關的任何其他會話之前,可能是積極的登錄
  • 「節流」的用法,即限制了多少次電話每分鐘/小時或類似的允許(可能會根據具體的應用是不可能的)

如果你真的真的想使它很難,你可以發出設備特定的客戶端證書(當客戶購買你的應用程序),並使用基於證書的客戶端身份驗證(在SSL標準中定義) - 你可以作廢,如果你看到濫用無傷害的其他合法用戶與設備相關聯的證書設備...

+0

我知道所有這些,但是如何向在市場上購買應用的用戶發放密鑰?沒有這樣的回調可用。 – Overv 2012-04-05 19:57:43

+0

@Overv你不需要回調那個......只是讓應用程序在第一次啓動時下載它(你可以即時生成一個證書)...至於市場交互工具[許可](http://developer.android.com/guide/market/licensing/licensing-reference.html) – Yahia 2012-04-05 20:19:45

1

採取從我的解答從這個職位Android Game Keeps Getting Hacked

實現自己的許可庫

我也想請您看看谷歌從我看看這個/ O 2011的YouTube記錄:從規避

The Presentation Notes

Evading Pirates and Stopping Vampires

編輯海盜和停止吸血鬼

一些基本的關鍵點

的演示說明中包含基本的例子和修改方向。但在YouTube視頻中,討論了服務器端身份驗證以及它與盜版和資產下載等的關係。特別使用許可證服務器,在App App Billing和App Engine中。但是,無論您選擇如何選擇解決方案,都可以獲得良好的基礎。