Skip to content

Jar加密提供

合同要求提供Jar服务时,为防止第三方窃取反编译程序做的Jar加密、证书颁发配置

加密工具

加密工具 下载

Jar加密

加密shell

shell
# 都个jar需执行多次
java -jar class-winter-core.jar originJarOrWar='需要加密的.jar' includePrefix='加密前缀:zonetop.gisboot 或者 ztgis' k1='密钥1' k2='密钥2'

idea使用

shell
# 在vm option中输入,不加vm option运行不起来
# 只加了core即可
-javaagent:${class-winter-core.jar的地址}="debug=true,decryptProjectPathPrefix=/{需要解密的包路径}“

idea 配置

代码示例

  • 静态代码执行加密包内容

执行代码

  • 配置VM option前执行结果

配置前执行结果

  • 配置VM option后执行结果

配置后执行结果

  • 接口代码执行加密包内容

接口调用加密包内代码

ztgis-license 证书

ztgis-license.yml

文件置于启动项下

第三方机器码获取

签名:敏感,查看代码规则生成

yml
ztgis-license:
  serial: 序列号,随机数,我们提供
  code: 机器码,通过classFinal获取,绑定机器码、网络等,第三方提供
  sign: 加密签名,我们提供

异常情况

  • 无证书

缺少证书

  • 证书数据不完整

无序列号

无序列号

无机器码

无机器码

无签名

无签名

  • 机器码错误

机器码错误

  • 签名错误

签名错误

  • 过期签名

过期签名

证书通过

证书通过