Ruo Yi 系统 ClassFinal 加密 字节加密 SpringBoot 加密 代码加密 安全加密

环境准备

若依系统(Ruo Yi)

项目地址

若依开源框架 ,根据项目文档部署好项目即可。这里我使用的是前后端分离版本,微服务版本后续有需要再研究了。

加密工具(ClassFinal)

项目地址

ClassFinal 主要工作是运行该项目包,生成设备码,加密解密项目程序包和启动我们的项目

逆向工具

GitHub地址

JDK 环境

JDK 8下载

加密案例

该案例主要使用插件的方式进行加密,这也是比较推荐的加密方式。更多的方式请自行查看ClassFinal 文档学习。

1. 安装 JDK 8 及以上环境

2. 部署若依项目(此处不做描述)

3. 下载 ClassFinal jar 包 (classfinal-fatjar.jar)

下载描述

4. 生成机械码(可选)

通过以下指令在 ClassFinal jar 包目录运行项目生成当前设备的机械码

java -jar classfinal-fatjar.jar -C

生成机械码
5. pom 文件配置插件信息

ClassFinal 文档也有相关的配置代码,相关配置的说明详细可查看官方文档,此处举例列出若依框架(分离版)的配置。 ruoyi-admin 模块下的 pom.xml

<!-- 加密插件,防止反编译 -->
<plugin>
	<!-- https://gitee.com/roseboy/classfinal -->
	<groupId>net.roseboy</groupId>
	<artifactId>classfinal-maven-plugin</artifactId>
	<version>1.2.1</version>
	<configuration>
	<!-- 加密密码 -->
	<password>123456</password>
	<!-- 机器码 -->
	<code>
		A99A7DFA6738A99AC4814074C72B57F6D41D8CD98F00B204E9800998ECF8427ED41D8CD98F00B204E9800998ECF8427E
	</code>
	<!-- 需要加密的包名 -->
	<packages>com.ruoyi.*</packages>
	<!-- 需要加密的配置文件 -->
	<cfgfiles>*.properties,*Mapper.xml,*.yml</cfgfiles>
	</configuration>
		<executions>
			<execution>
				<phase>package</phase>
					<goals>
						<goal>classFinal</goal>
                    </goals>
            </execution>
        </executions>
</plugin>

6. 打包项目 通过反编译工具查看结果

选择 File , Open File 选择对应 jar 包即可反编译出来

  • 项目未加密前反编译结果

在这里插入图片描述

在这里插入图片描述

  • 项目加密后反编译结果

在这里插入图片描述
在这里插入图片描述

可见加密后的项目配置信息和类方法信息全部都被加密隐藏起来了

7. 运行项目

复制打包后的项目文件:ruoyi-admin.encrypted.jar 包到运行目录,并且把 classfinal-fatijar.jar 包复制过来,通过一下指令运行项目,启动后输入 pom 文件中设置的密码回车即可运行

java -javaagent:classfinal-fatjar.jar  -jar ruoyi-admin-encrypted.jar

程序运行
到此对于 Springboot 单机项目 ClassFinal 的加密方式介绍到这里,谢谢!

  • 26
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RuoYi-plus是一个基于RuoYi升级的springcloud版本管理系统。软件由SMP多商户后台管理系统+API后端接口组成,项目支持cms内容管理和商城业务,提供单机版服务、微服务体系双向选择,微服务集成分布式事务解决方案seata,框架基于SpringBoot2.x,springcloudG版本。 RuoYi-plus项目介绍 项目核心: 多商户权限系统+商城平台+CMS内容管理+微服务API系统 架构技术: 基于SpringBoot2.x, springcloud G版本eureka、hystrix、feign、config、gateway微服务架构体系的全新版本,集成分布式事务解决方案seata,集成redis、quartz、tk.mybatis、lombok、各种设计模式等。 项目优势: 架构更清晰、技术更前沿、代码更整洁、页面更美观、学习商用均可。可用于OA系统、 CRM系统、 PDM系统等二次开发,微服务架构学习,非常适用于公司管理平台旧版本升级、新平台搭建快速整合、同时提供API接口服务(供APP、微端、h5等使用)。 RuoYi-plus内置功能 管理平台基础功能 1、用户管理:用户是系统操作者,该功能主要完成系统用户配置。 2、部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。 3、岗位管理:配置系统用户所属担任职务。 4、菜单管理:配置系统菜单,操作权限,按钮权限标识等。 5、角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。 6、字典管理:对系统中经常使用的一些较为固定的数据进行维护。 7、参数管理:对系统动态配置常用参数。 8、通知公告:系统通知公告信息发布维护。 9、操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。 10、登录日志:系统登录日志记录查询包含登录异常。 11、在线用户:当前系统中活跃用户状态监控。 12、定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。 13、代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 14、系统接口:根据业务代码自动生成相关的api接口文档。 15、服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 16、在线构建器:拖动表单元素生成相应的HTML代码。 17、连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。 商城业务基础功能 1、商户管理:多商户系统核心业务,商户管理对应权限数据。 2、类别管理:商品类别配置,为商品区分类别。 3、商品管理:每个商户下的商品信息。 CMS内容基础功能 1、文章类别管理:文章列表信息,为文章区分不同类别。 2、文章信息管理:文章具体信息,直接生成文章html页面。 3、素材类别管理:为素材提供类别以区分不同业务的素材图片/视频。 4、素材信息管理:文章信息的素材图片管理。 API接口基础功能 1、业务模块:接收网关gateWay转发请求,api微服务结构处理具体业务,解决分布式事务。 2、订单模块:订单相关业务处理。 3、商品模块:商品相关业务处理。 商用须知 本项目遵循MIT协议,无需授权,留言备注公司信息即可。 演示地址账号:tecom  密码:123456

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值