提供免费试用的付费Chrome扩展程序必须手动检查许可证颁发的时间,以便免费试用“过期”。
执行此操作的recommended way是通过调用许可证API并验证响应。这种情况发生在扩展程序的JavaScript代码中,很容易被篡改。
例如,在上面链接的代码中,用户可以轻松检查背景页面并在if
块之后插入断点并运行licenseStatus = "FULL"
,从而使他们可以完全访问扩展程序的功能
有没有办法减轻这种篡改?
答案 0 :(得分:3)
确定的用户将始终能够复制您的扩展程序,添加对其的修改并将其加载为已解压缩。
代码混淆,即缩小,起到了威慑作用,但不会阻止它。
客户端代码始终如此(提供方便的调试器,不能少)。对此唯一真正的解决方案是服务器端组件,它执行一些非常重要的工作并检查许可证本身。
因此,这是一个荣誉系统:你可以期望大多数愿意支付的用户实际支付,理论上你有合法的工具来追求用户,不仅打破了你的保护,分发修改后的扩展名。如果这还不够,而且您无法实施上述“真实”解决方案,则应重新考虑开发付费扩展程序。