通常项目是通过 <系统名称 + 物理地址+硬盘序号+当前时间>
等等一些能区别服务器的参数作为源,来加密成一个申请码,然后通过授权码的方式进行授权的方式
但是这里有一个问题,如果项目是离线放在客户端, 源代码完全在客户手里,稍微懂技术的人 都可以反编译你的代码, 核心加密授权程序很容易被破解.
gui反编译 如下图
面对这种问题怎么解决呢 ?
通过代码混淆将核心代码加密,通过秘钥加密,内置时钟,解决授权的安全性.时效性,保护软件不被破解,复制 .
混淆后的代码如下图:
特点:
1.字节码级别加密,支持window,mac,linux,最高支持JDK16
2.离线授权,不需要联网
3.硬件绑定
4.可实现次数授权,日期授权,永久授权,模块授权
5.自定义时钟,无法修改系统时间绕过授权
6.核心代码加密,无法通过逆向工程,反编译查看逻辑
7.嵌入授权,有技术支持,有实际项目经验
8.支持doker容器,不影响授权功能
欢迎沟通,学习!