![]() |
1
12
总有一种方法可以在30天后使用试用程序。 |
![]() |
2
11
如果说“最好”是指最不易损坏的,那么实际上只有一种方法:使其成为基于互联网的“软件即服务”应用程序。如果你不提供访问权限,他们就不会使用该软件。 如果是基于桌面的应用程序 ,那么一些关键的功能仍然必须在某个地方的在线服务器上。 如果黑客在他们的本地机器上有整个应用程序, 它可以逆向工程 以某种方式“破裂”。克服这一问题的唯一方法是确保某些功能永远不会出现在他们的机器上。 |
![]() |
3
7
我认为一个更好的解决方案是一个功能有限的应用程序——比如说你可以进行基本操作,但是要利用最好的功能,你必须获得付费许可。这可以做两件事——假设你的应用做得很好,而且对各种用户都很有意思。首先,你可以让更多的人尝试你的应用。其次,你可以通过免费发布你的“lite”版本来获得一些善意。 如果你真的需要做一个限时试用,那么我会考虑让它写一个加密的注册表键(windows)或点文件(linux)。此密钥可以对到期日期进行编码。使用可逆加密可以将此值还原出来。使用密钥有助于防止某人生成自己的(有效的)密钥。完全授权的应用程序可以使用相同的密钥机制,但可以加密允许永久使用的密钥值。 |
![]() |
4
6
从我的回答到 implementing-expiration-dates-in-an-application/1871218#1871218 :
还要记住,你的方案并不一定要完美,只要让它足够强大,它将不方便用户打破它。 |
![]() |
5
3
让程序在第一次运行时从服务器请求密钥,并在程序每次启动和每24小时检查其有效性。 |
![]() |
6
1
另一个选择是在下载应用程序时使用服务器端编译器。这可以将许可证密钥“注入”到二进制文件中。您可以使用单独文件中的常量来完成此操作。然后,可以将此链接到其他预编译的文件。这种方法速度较慢,但很难破解,因为黑客需要对程序进行反编译。 |
|
user1351781 · 如何使用组改进暴力强制算法? 11 年前 |