众所周知,Java编译后的Jar包和Class文件,可以轻而易举的使用反编译工具(如JD-GUI)进行反编译,拿到源码。
为了保护自己发布的Jar包和Class文件,采用的方式大多是混淆方式,这种方式对于Class文件的加密是不彻底的,还是能够通过分析得出核心算法。
本工具是采用jvmti方式对Class文件进行加密,使用C++生成加密和解密库,先用加密库对Jar包进行加密,将加密后的Jar包及解密库文件发布出去,执行时候需要JVM引入解密库文件,解密后执行。
c++的.dll文件和.so文件的破解难度是很大的,这就能有效的保护软件和代码的知识产权.使用方法:1.打开windows命令行(运行=>cmd=>回车),在命令行中进入EncryptJar目录2.执行java-jarencrypt.jar3.输入h,然后回车,可以看到帮助菜单4.输入3,然后按回车键,进入加入jar文件功能5.输入要加密的jar文件的路径6.提示输入秘钥(key)的时候,直接回车,不要输入任何字符(否则后面classhook将不可解密加密后的jar包)7.输入目标路径(加密后的jar文件路径,此处要注意:jar文件名要保持相同,将加密后的文件保存到不同的目录)8.将加密后的jar包,替换原来的没有加密的jar包,与要发布的程序一起进行发布.(一般替换lib目录下对应的jar包即可)9.加密后的jar包运行方法:windows下:拷贝libClassHook.dll文件到程序的根目录(通常为要执行的jar程序的根目录)使用以下命令启动程序:java-agentlib:libClassHook-jarxxxxxxxxxxx.jar则在运行过程中会自动进行解密操作(解密过程是运行过程中用c++的dll进行解密的,可以有效防止破解class文件)如果执行过程报错,可将程序根目录添加到环境变量path中去Linux下:拷贝libClassHook.so到程序的根目录(通常为要执行的jar程序的根目录)使用以下命令启动程序:java-agentlib:ClassHook-jarxxxxxxxxxxx.jar(这里要删除掉lib,linux系统下会自动补全)则在运行过程中会自动进行解密操作(解密过程是运行过程中用c++的dll进行解密的,可以有效防止破解class文件)如果执行过程报错,可以在程序根目录下执行以下语句:exportLD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH或将libClassHook.so拷贝到/usr/lib目录中去。
支持操作系统:加密请在windows64位系统并安装了64位jdk环境下进行。
需要解密运行的程序支持LINUX(64位)和windows(64位)安装了JDK1.8以上的系统。
测试程序:(t_lib目录下的jar包为经过加密的jar包)java-agentlib:libClassHook-jartest.jar
1
Java后端高级面试题,涵盖关系型数据库、非关系型数据库redis、并发编程、Spring/SpringMVC、JVM、微服务、RabbitMQ等技术,冲!
2023/8/10 12:10:44 2.24MB java 面试题
1
互联网应用架构师培训班课程视频资料,包括高并发,多线程,jvm调优,Netty,Redis、Lua、SSDB、Oracle,zookeeper、rocketmq、实战案例等.....提供资料太大我就放在网盘直接提供下载地址好了
2023/8/2 17:24:10 186B 架构师高并发
1
本文档详细介绍了Jprofiler9.2各个功能菜单的用途及用法,并结合实际案例使用Jprofiler对项目进行JVM性能分析。
2023/7/29 1:20:51 15.19MB Jprofiler JVM性能监控
1
1.目录1.2.目录.........................................................................................................................................................1JVM.......................................................................................................................................................192.1.线程......................................................................................................................................................202.2.JVM内存区域.....................................................................................................................................212.2.1.程序计数器(线程私有)................................................................................................................222.2.2.虚拟机栈(线程私有)....................................................................................................................222.2.3.本地方法区(线程私有)................................................................................................................232.2.4.堆(Heap-线程共享)-运行时数据区......................................................................................232.2.5.方法区/永久代(线程共享).....................................................................................................232.3.JVM运行时内存.................................................................................................................................242.3.1.新生代..........................................................................................................................................242.3.1.1.2.3.1.2.2.3.1.3.2.3.1.4.Eden区....................................................................................................................................................24ServivorFrom...........................................................................................................................................24ServivorTo............................................
2023/7/28 11:47:52 8.9MB java 核心知识
1
jdk-12.0.2_linux-x64_bin.rpmDK是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。
JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。
2023/7/26 9:50:08 162.79MB JD
1
javaweb各个模块的思维导图包含java基础,微服务,jvm,架构方法,servlet与jsp,框架
2023/7/23 0:05:39 9.28MB javaweb
1
实战Java虚拟机——jvm故障诊断与性能优化——随书源码
2023/7/19 10:03:01 5.58MB JVM
1
提供Java9新功能快速索引‧深入探討Java模組平臺系統‧JDK基礎與IDE操作交相對照‧提供Lab實作檔案  ‧作者數年來實務教育訓練中,匯整學員在課程中遇到的觀念、實作、應用或認證考試上等問題之經驗集合。
  ‧針對JavaSE9新功能重新改版,無論是章節架構或範例程式碼上,皆作了重新審閱與翻新。
  ‧詳細介紹Java9模組化之後,JVM、JRE、JavaSEAPI、JDK與IDE之間的關係與對照。
  ‧必要時從JavaSEAPI的原始碼分析,了解各種語法在JavaSEAPI中如何應用。
  ‧建議練習的範例提供Lab檔案,更能掌握練習重點。
  ‧IDE操作納為本書教學內容之一,更能與實務結合。
2023/7/15 21:16:39 18.08MB Java SE9技術手冊 良葛格
1
gradle-4.4-all.zipGradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持maven,Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。
gradle-4.4-all.zip包的sha256:7a2c66d1a78f811d5f37d14630ad21cec5e77a2a4dc61e787e2257a6341016ce大小:94.2MB
2023/7/13 17:36:53 91.4MB gradle-4.4 -all.zip maven 工程构建
1
共 88 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡