我正在創建一個應用程序,我想讓應用程序使用某種形式的註冊密鑰進行「驗證」,以減少盜版。我在考慮在客戶購買產品並使用諸如MD5之類的東西來創建一個散列時可能創建一個字符串。應用程序註冊
我的問題是在哪裏存儲這個關鍵,一旦它entered.I我也很好奇你如何設計要求,或沒有允許它運行應用程序的最佳場所。
編輯: 該應用程序是用.NET編寫的,任何將使用的服務器端技術都將與SQL Server數據庫接口。
我正在創建一個應用程序,我想讓應用程序使用某種形式的註冊密鑰進行「驗證」,以減少盜版。我在考慮在客戶購買產品並使用諸如MD5之類的東西來創建一個散列時可能創建一個字符串。應用程序註冊
我的問題是在哪裏存儲這個關鍵,一旦它entered.I我也很好奇你如何設計要求,或沒有允許它運行應用程序的最佳場所。
編輯: 該應用程序是用.NET編寫的,任何將使用的服務器端技術都將與SQL Server數據庫接口。
的幾點思考...這是一個「一次激活」,或者說,每次發生在應用程序運行?用戶傾向於將後者視爲隱私問題。我使用名爲Protection Plus的應用程序進行了一次性註冊。它處理挑戰/響應的產生,這確實是困難的部分。
PP創建每個形式在客戶端上加載時,其改變了的詢問密鑰。使用該密鑰,遠程系統使用挑戰和由客戶提供的系統代碼生成「觸發代碼」。 PP可以被配置爲創建幾種不同的方式......一個BIOS哈希,硬盤序列號,硬盤卷標,該系統代碼等,...
當觸發代碼創建(它的一個幾個動作),併發送回客戶端,PP解密並返回正確的基於整數的動作。
如果感興趣,檢查出來:
Protection Plus Website
一次激活了我的心思。我不希望客戶每次使用該應用程序時都必須上網,以確保其密鑰是有效的。 – MillerM 2011-12-14 16:33:12
這將有助於瞭解您所使用的服務器端技術-php,asp.net,導軌等 – 2011-12-14 15:56:44