2016-04-21 30 views
0

我是商業軟件開發的新手。我正在開發基於Java的工具的2個版本。
1)試用版(30天免費使用)
2)完整版
據我所知,試用版的開始日期必須記錄在註冊表或conf文件中。但是我無法確定如何編寫一個Java程序,它將向註冊表和配置文件寫入時間戳。 任何人都可以請幫我理解如何做到這一點。如何寫一個時間戳到windows註冊表和conf在linux中

+0

退房首選API – Madhusudhan

回答

0

首選項API是您所需要的。但是,回到最初的目標,實現這樣的系統要比將時間戳寫入系統存儲庫或其他存儲器要困難得多。

你需要確保:

  • 您正在使用「源」的時候,你可以信任

  • 人都無法改變的時間戳您保存的地方 - 你需要簽署 它在某種程度上

  • 您需要定期更新時間戳,並將其存儲在不同的地方,以保衛自己不受時間回滾(因此係統可以說,目前的時間是在過去)

  • 在理想情況下,你需要檢查一些授權服務器

即使你確信你的時間戳源牌照,也有你的許可庫將與JD-GUI被反編譯高機會並檢查代碼刪除。

爲了讓您的支票足夠強大,你需要:

  • 您所有的系統模塊使用模糊處理(對http://proguard.sourceforge.net看看)

  • 請記住,有人可以只在添加新的依賴類路徑和對運行時許可證邏輯的影響

  • 將檢查方法調用放入系統的不同位置

  • 使用加密所有許可相關數據

  • 綁定許可使用硬件ID(特定的機器CPU的,網絡設備等。)

  • 編碼發行日期到許可證本身

  • 許可文件必須與授權權限密鑰加密(閱讀公鑰/私鑰加密)和系統的構建應以適當的密鑰,這意味着也簽署你需要有明確的制度建設&簽約流動

+0

是,首API正是我需要的。感謝您提供關於混淆的建議。 – Pritam

+0

我如何知道在哪裏寫時間戳?我使用Preference API嘗試了一個示例程序。但無法追蹤它在哪裏寫值。 – Pritam

+0

主題:http://stackoverflow.com/questions/4947555/where-are-the-java-preferences-stored-in-windows-7 HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft的\偏好設置 HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ JavaSoft的\偏好設置 – nikelin