Smart-License 是一款专为软件授权设计的高效管理工具,V1.0.3版本提供了更安全、便捷的许可证生成和验证功能,帮助企业轻松实现软件分发与使用监控。
smart-license是一款用于安全加固的开源项目,主要服务于非开源产品、商业软件以及具备试用功能的付费软件等,为这些软件提供授权式的使用方式。它适用于非开源产品、商业软件及收费软件。
通过限制产品的传播性,每个客户都将拥有专属License,并且同一款软件发行包可以根据不同的License提供差异化的服务能力。此外,smart-license还可以限定软件授权的有效时间。
该工具的特色包括:
1. 开源:代码完全公开,用户可以了解License生成的具体原理;
2. 易用:提供二进制包,通过命令行即可直接生成License;
3. 安全:生成的License具备一定的防篡改能力,并且破解难度较大;
4. 加固功能:采用非对称加密方式处理原始数据,防止伪造。
使用smart-license来生成License的操作步骤如下:
1. 下载并解压smart-license.tar.gz包。
2. 进入bin目录后执行命令,例如`.license.sh 1d HelloWorld`。其中“1d”表示授权有效期为一天;而HelloWorld则代表待加密的许可内容。
在实际应用中,可以通过License来控制不同的产品功能和有效期限等信息。“HelloWorld”的示例可以替换为具体的配置文件路径,如`.license.sh 1y config.properties`。执行命令成功后会在当前目录生成两个文件:一个是提供给客户的授权文件“license.txt”,另一个是包含加密私钥的源文件“source.txt”。
使用License的具体步骤包括:
1. 引入Maven依赖。
2. 载入License,如果该许可已过期,则会触发异常。
示例代码如下:
```java
public class LicenseTest {
public static void main(String[] args) throws Exception {
File file = new File(license.txt);
License license = new License();
LicenseConfig licenseConfig=license.loadLicense(file);
System.out.println(licenseData.getOriginal());
}
}
```
这段代码用于获取并配置启动软件的许可数据。