我有這個java swing應用程序,我打算通過互聯網銷售。目前我傾向於使用java webstart部署應用程序。該產品將被授權用戶在一臺計算機上一次只能使用該程序。我對這種模式的盜版感到擔憂。我想安裝一些安全功能來執行許可證模式。目標至少是讓授權用戶難以將安裝的產品(包括許可證密鑰)複製到未經授權的用戶。下面是我在看現在的選項:如何防止java webstart應用程序盜版
強制用戶在每次程序啓動時間驗證到母船與一個用戶名/密碼。
只需在用戶PC上的某個地方(隱藏?)安裝許可證密鑰,然後他們已經註冊並付款。在運行時,驗證是否安裝了有效的許可證密鑰。
使用/構建基於用戶計算機的硬件指紋的安全軟件包。每次啓動應用程序時都會計算此指紋,並使用某種散列與本地安裝的許可證密鑰進行比較。此許可證密鑰將僅對此硬件指紋有效。
這裏的一個問題是,一旦安裝了該應用程序,沒有任何運行時需要對應用程序聯繫母船,不是檢查使用Java Webstart的應用程序更新等。應用程序執行的所有操作都是在本地執行的,並使用swing將結果顯示給用戶。因此,涉及母船的任何解決方案基本上都意味着建立一個服務器基礎設施,僅用於許可證驗證。
我想我正在尋找的是基於java的東西,至少有點安全,易於部署,對用戶來說不是一件痛苦的事情。你使用了什麼安全/授權方法?
編輯:我應該補充一點,我並不一定會尋找一顆銀子彈來防止絕對每個人都擊敗安全。總會有人有足夠的時間來找到完成任務的方法。我不太關心這些人。我基本上是想讓一個臨時用戶很難複製許可密鑰併發送給他的好友。正確實施,解決方案應該說服臨時用戶購買它比較簡單。
計算您的硬件指紋並與母艦進行談判僅用於許可目的的軟件?聽起來像一個**的痛苦,並讓我想起那個Windows激活的東西。請不要這樣做。 – 2009-11-25 22:08:14