引入classfinal maven 插件实现对jar包的加密

文章目录

概要

我使用的项目为微服务项目

整体流程

  1. 明确所有需要加密的jar包:
    可以通过maven的package指令,查看日志,后缀为jar的即为所有需要加密的jar包。

  2. 在跟pom文件的properties属性中定义classfinal maven插件的属性值

        <!--classfinal插件版本-->
        <classfinal.version>1.2.1</classfinal.version>
        <!--要加密jar文件名(可为空,多个用","分割)-->
        <classfinal.libjars>
            fscloud-common-core-2.5.0.jar,
            fscloud-api-system-2.5.0.jar,
            fscloud-common-redis-2.5.0.jar,
            fscloud-common-security-2.5.0.jar,
            fscloud-auth-2.5.0.jar,
            fscloud-gateway-2.5.0.jar,
            fscloud-visual-monitor-2.5.0.jar,
            fscloud-common-datasource-2.5.0.jar,
            fscloud-common-datascope-2.5.0.jar,
            fscloud-common-log-2.5.0.jar,
            fscloud-common-swagger-2.5.0.jar,
            fscloud-modules-system-2.5.0.jar,
            fscloud-modules-gen-2.5.0.jar,
            fscloud-modules-job-2.5.0.jar,
            fscloud-modules-file-2.5.0.jar,
            fscloud-news-2.5.0.jar,
            fscloud-fservices-2.5.0.jar
        </classfinal.libjars>
        <!--加密密码,如果是#号,则使用无密码模式加密-->
        <classfinal.password>1234</classfinal.password>
        <!--需要加密的配置文件,一般是classes目录下的yml或properties文件(可为空,多个用","分割)-->
        <classfinal.cfgfiles> </classfinal.cfgfiles>
        <!--加密的包名(可为空,多个用","分割)-->
        <classfinal.packages>com.fscloud</classfinal.packages>
        <!--排除的类名(可为空,多个用","分割)-->
        <classfinal.excludes>org.spring</classfinal.excludes>
  1. 在各个需要加密的服务的pom文件中引入classfinal maven 插件,放在plugins标签里面
     <plugin>
          <!-- https://gitee.com/roseboy/classfinal -->
          <groupId>net.roseboy</groupId>
          <artifactId>classfinal-maven-plugin</artifactId>
          <version>${classfinal.version}</version>
          <configuration>
              <password>${classfinal.password}</password><!--加密打包之后pom.xml会被删除,不用担心在jar包里找到此密码-->
              <packages>${classfinal.packages}</packages>
              <cfgfiles>${classfinal.cfgfiles}</cfgfiles>
              <excludes>${classfinal.excludes}</excludes>
              <libjars>${classfinal.libjars}</libjars>
          </configuration>
          <executions>
              <execution>
                  <phase>package</phase>
                  <goals>
                      <goal>classFinal</goal>
                  </goals>
              </execution>
          </executions>
      </plugin>
  1. 引入完成后,直接使用maven的package指令进行打包,加密的jar包为 ***-encrypted.jar 格式。
  2. 启动
java -javaagent:yourpaoject-encrypted.jar="-pwd 1234" -jar yourpaoject-encrypted.jar

//参数说明
// -pwd      加密项目的密码  
// -pwdname  环境变量中密码的名字

// 也可以使用下面的方式,在控制台输入密码启动
java -javaagent:yourpaoject-encrypted.jar -jar yourpaoject-encrypted.jar

注意:引号为双引号,如果写成了单引号会导致启动失败

Web虎,愿为广大B/S软件厂商和代理做大做强提供安全保障,保您广开财源... 一、Web虎是什么? Web虎是B/S软件源码、版权、数据综合保护系统,由深圳易用研发团队利用Windows内核驱动结合钥匙盘实现,已为深圳CRM领导厂商-讯盟软件、成都思必达、湖州金蝶、北京acewill等厂商的系列产品提供可靠保护. 二、Web虎好处: 1.保证您的优秀软件代码不被篡改或剽窃、遏制破解、防编译,版权不被滥用 2.确保您可以广开财源、做大做强:建立代理渠道、网上发布等以前所想用不敢用的推广方式,同时另可增加3个卖点 2.1 增加卖点1:阻止客户未授权访问保护文件,减少可能带来的麻烦,进而减少厂商维护工作量 2.2 增加卖点2:告诉客户他的数据更加安全-他的数据将加密保护,只有客户自己可以正常使用和备份数据 2.3 增加卖点3:告诉客户他的系统更加稳定,不会被病毒黑客侵袭而成为新的病毒传播源 三、Web虎特点: 安全:综合利用高端技术,保护内容所在硬盘被拆下,里边信息也不会被破解 简便:高度人性化设计,一般仅需10分钟即可掌握整个系统 可靠:讯盟CRM压力测试3秒钟32用户1200个并发邮件操作(含上传文件到保护目录) 成熟:在多个复杂ERP、CRM、OA系统中长时间运行、效果良好. 自主可控:易用仅根据B/S厂商需求提供Web虎系统授权,即空密钥的最终客户钥匙盘,该盘内具体加密所用的密钥则仅由厂商自己写入钥匙盘内并进行管理 性能好:驱动层实现、几无性能影响;加密速度经北京文化在线实测:2.1G文件用时15分钟。 changelog: 2009-5-28 发布v1.3版, 1.解决小于16字节文件加解密bug 2.钥匙盘版厂商端升级工具改用密钥文件(*.wt)来加密、制作升级文件,方便用户做升级 3.允许同台机器上并存钥匙盘版、sn版厂商端,2者安装位置、标题、菜单等界面显示,均区分开来,方便用户在同一台机器上安装、使用2个版本web虎 4.完善客户安装,可让厂商、客户安装在同一部机器而不再有提示 2009-5-16 厂商版界面更新 2009-5-4 新版本规范:web虎sn1.2版,web虎钥匙盘1.2版 2009-4-25 去除大小写敏感限制 2009-4-9 提供静默安装源文件(如客户需要) 2009-3-31 增强安装功能-安装时如检测到没有卸载或者卸载不完整,提示覆盖安装 2009-2-20 增加卸载检查、提示功能 2009-1-16 sn版升级 1. 厂商端增加了升级文件制作工具。 2. 客户端增加了升级工具。 2008-12-23 增加对jboss支持 2009-12-22 修正文件大小为3200整数倍时读取bug 2008-12-17 1.修正覆盖安装导致注册表不正确的bug 2.修正:个别情况下密码集找不到、升级工具无故退出问题 2008-12-14 sn版dll升级 2008-12-11 web虎客户端在程序菜单增加卸载功能 2008-12-2 应客户需求、增加sn版 2008-9-24 增加升级日志 2008-9-9 1.升级工具升级 2.讯盟安装增加判断 3.增加英文操作系统支持 2008-9-6 增加安装配置文件、可自行定制安装项:setup。ini 2008-8-25 改动安装界面 2008-8-18 界面美化 2008-8-3 web虎采用新驱动、实时加解密、不再用b盘来保存了 2008-4-10 自动升级精灵 2008-4-4 修正了几个bug 1. 启动后B盘不能格式化 2. 虚拟盘大小显示不正确 3. web虎安装增加了“Web虎设置”“Web虎备份恢复”“Web虎钥匙盘管理”三个小程序。 4. 迅盟安装增加了“Web虎备份恢复” 5. 移除了原来的“设置”和“备份”菜单 2008-3-27 最新版本驱动+dll。增加了钥匙盘管理,增加了webTiger的删除菜单 2008-3-23 jsp专用升级工具 2008-3-17 解决在远程桌面上使用出错的问题 2008-2-21 修正只能安装c盘的bug 2008-1-31 取硬件特征码算法升级 2008-1-19 修改安装 2008-1-13 增加:安装时生成sn文件,而不是重启后才生成 2008-1-9 发布:web虎内部测试版 2007-11-11 web虎启动 Web虎,愿为广大B/S软件厂商和代理做大做强提供安全保障,保您广开财源... 一、Web虎是什么? Web虎是B/S软件源码、版权、数据综合保护系统,由深圳易用研发团队利用Windows内核驱动结合钥匙盘实现,已为深圳CRM领导厂商-讯盟软件、成都思必达、湖州金蝶、北京acewill等厂商的系列产品提供可靠保护. 二、Web虎好处: 1.保证您的优秀软件代码不被篡改或剽窃、遏制破解、防编译,版权不被滥用 2.确保您可以广开财源、做大做强:建立代理渠道、网上发布等以前所想用不敢用的推广方式,同时另可增加3个卖点 2.1 增加卖点1:阻止客户未授权访问保护文件,减少可能带来的麻烦,进而减少厂商维护工作量 2.2 增加卖点2:告诉客户他的数据更加安全-他的数据将加密保护,只有客户自己可以正常使用和备份数据 2.3 增加卖点3:告诉客户他的系统更加稳定,不会被病毒黑客侵袭而成为新的病毒传播源 三、Web虎特点: 安全:综合利用高端技术,保护内容所在硬盘被拆下,里边信息也不会被破解 简便:高度人性化设计,一般仅需10分钟即可掌握整个系统 可靠:讯盟CRM压力测试3秒钟32用户1200个并发邮件操作(含上传文件到保护目录) 成熟:在多个复杂ERP、CRM、OA系统中长时间运行、效果良好. 自主可控:易用仅根据B/S厂商需求提供Web虎系统授权,即空密钥的最终客户钥匙盘,该盘内具体加密所用的密钥则仅由厂商自己写入钥匙盘内并进行管理 性能好:驱动层实现、几无性能影响;加密速度经北京文化在线实测:2.1G文件用时15分钟。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值