是否可以在客户端安全地验证离线许可证密钥?
Posted
技术标签:
【中文标题】是否可以在客户端安全地验证离线许可证密钥?【英文标题】:Is it possible to safely validate offline license keys clientside? 【发布时间】:2018-02-08 06:46:02 【问题描述】:是否可以在客户端应用程序上验证许可证密钥,使其变得非常难以破解?
考虑以下简单示例:
var status = secure_function_that_checks_license();
if (status == "REGISTERED")
print("Welcome, user");
else
print("Access denied");
无论你的函数多么精细,最终你都必须根据它给出的结果进行分支。
This thread 解释了更多关于生成和验证密钥的内容,但没有解释如何避免分支问题。
是使用某种在线激活方案以安全的方式执行此操作的唯一方法吗?
【问题讨论】:
【参考方案1】:首先,如果大家都记住,破解时没有预防措施,只有停滞不前,如果你的代码值得破解,它就会被破解
现在在混淆过程中有一种叫做内联的做法,它只是将你的函数调用替换为实际的函数体,这样你的代码将更难破解,因为要修改的代码更多
【讨论】:
以上是关于是否可以在客户端安全地验证离线许可证密钥?的主要内容,如果未能解决你的问题,请参考以下文章