2011-03-14 139 views
2

在閱讀Stack Overflow上關於如何保護軟件的大量線索後,我意識到你不能。謝天謝地,我的軟件針對託管企業(不是那麼多)和少數消費者。我認爲這個軟件不會流行,以至於任何人都會破解它,但我想保護它。保護軟件免受海盜侵害

在我發現的其中一個線程中,它有一個不錯的選擇列表。我已經決定,我希望與「簡單的註冊與可更換鑰匙,經常在線驗證。」

我想,因爲我的應用程序是一個將通過管理容器運行的C#NET控制檯應用程序,所以我可以爲它發佈密鑰。也許做一個MySQL數據庫並保存只能在一次安裝中使用的密鑰列表,以及另一個可在X安裝中使用的密鑰列表。我的應用程序在啓動時會用命令行參數運行,所以添加一個類似「-key 29839X900AQ」的東西將會減輕他們需要太擔心的問題。

有沒有人知道任何信息/網站提供幫助設置這樣的事情?

回答

2

您絕對可以保護軟件和聲明其他錯誤的線程。沒有人破解我們的系統(正確實施時),並且我們舉行了公開競賽,看是否有人可以(免責聲明:我爲一家軟件保護公司工作)。

但是,有很多方法可以解決這個問題,並且沒有「免費」系統或無法使用軟件的系統無法破解。然而,有些軟件足夠強大,以至於需要付出巨大的努力,除非您的軟件吸引大型市場或花費大量的美元資源,否則黑客就會毫無動力投入這項工作。

如果我瞭解您提出的解決方案,您將很容易遭受共享密鑰的人員的影響。您可以檢查單個密鑰是否始終來自相同的IP地址,但可能被欺騙(以允許非法複製),或者可能會阻止合法客戶訪問。

保護就像把門鎖上門:更多的鎖可以防止竊賊,但它也使你更難進出。如果有太多的鎖,它可能只是讓竊賊尋找一扇窗戶,因爲我們爲此謀生,所以我們研究了人們如何破解軟件,很多時候保護計劃很容易解決,只是不符合原始開發者的預期。每個人想要完成的訣竅都是在保護他們的權利的同時不產生錯誤的否定(虛假地阻止合法用戶)。如果您需要更多幫助,請隨時通知我。要做到這一點

0

的一種方法是,你保持(也許在數據庫中)全部撤銷/禁用許可證的列表使用Web服務。從您的應用程序,您將不時地ping服務,以查看當前使用的許可證是否已被撤銷。如果是這樣,許可證驗證失敗。

如果您可以使用第三方系統,請參閱CryptoLicensing,該帳戶通過其「驗證時通知許可證服務」許可證設置支持此確切方案。

聲明:我在LogicNP軟件,CryptoLicensing的開發工作。