【开源资讯】smart-license v1.0.1 发布,为软件提供授权的工具
smart-license 是一款用于安全加固的开源项目。 主要服务于非开源产品、商业软件、具备试用功能的付费软件等,为软件提供授权制的使用方式。
名词解释:
- License:通过 smart-license 生成的授权文件,导/ 6 g k X A入至要授权使用的软件产品中。
- 源数据:需要进行 License 加工处理的基础数据。例如,将软件产品运行的配置文件作为源数据,经由 smart-license 授权处理后生成 License 文件。
- License源文件:生成 Lo k ] &icense 的同时,会自动产生一份文件用于记录:源数据,授权时间,过期时间,秘钥对等信息。由软件授权方持有,当客户遗失 LiceY g u M Xnse 文件之后可以根据License源文件重新生成 License。
更新U . k = a 4 说明:
虽然通过 smart-license 生成的 License 具备防篡改的能力, 但对于有着一定技术功底的用户,依旧可以采用某些手段获得 License 的源数据, 再通过Q c % smart-license 伪造一份\"合法\"的 License 。
为此需要提供一种安全加固策略,防止某些不怀好意的人过于轻松的突破 License 的安全防线。
加固的原理如下图所示,生成License阶段采用非对称加密方式对源数据进行预处理。 而在程序运行时从License中提取到的是密文形式的源数据,需要通过公钥解密还原真实内容。
软件提供商大可将公钥硬编码至程序中,即便通过反编译获| I 4 ; F I得公钥,也无法以此伪造 License。 再则可在程序% f E g C s