众所周知,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
LLua性能分析工具原理某种gperftools,通过计时器信号选择查看调用栈,来定位调用的热点特性简单,只需几行代码,即可输出结果,或通过注入,不用修改代码准确,评分luahook,定时采样的方式更能准确捕获lua执行的热点轻量,因为是采样的,直接直接行行luahook,能最小程度影响宿主程序的运行直观,输出调用图,能直观的看到景点和调用关系编译安装lua5.3编译插件libplua.so#./build.sh编译解析器plua#gogetgithub.com/goccy/go-graphviz#gobuildplua.go使用获取
2023/8/5 6:37:28 415KB profile lua gperftools lua-hook
1
libmysqlclient.so.18.0文件
2023/8/4 15:09:47 563KB lib mysql client
1
errorwhileloadingsharedlibraries:libtcmalloc_mininal.so.4Nosuchfileordirectorygperftools
2023/7/29 13:43:01 695KB libunwind
1
基于MediaPipe的v0.8.2的代码的gpu手跟踪Demo。
引用了我自己编译打包的aar。
aar为9.3M,包含arm64和v7a的so注意:我在索尼手机上测试,发现启动会黑屏,但点击home键后返回就好了。
2023/7/27 6:45:10 28.17MB MediaPipe 手识别 TensorFlow AI
1
国密sm2密钥对生成,加密解密,签名验签,公钥解压;
还有对应的测试案例;
这些函数是基于openssl1.1.1库函数版本。
在我的资源中有编译好的PC上linux运行该代码所需的openssl1.1.1的libssl.so;libcrypto.so,还有编译好的在armlinux上运行的openssl1.1.1的库(libcurl.so,libz.so,libssl.so,libcrypto.so)
2023/7/15 3:14:30 14KB sm2
1
SDK的主要功能:实时预览、语音对讲、语音广播、云镜控制、布撤防、参数配置、设备管理、智能分析等。
SDK开发组件包含网络通信库,软解码库,Windows和Linux各自包含如下组件。
Windows库基于Windows7/32位编译:网络通信库:HWPuSDK.h头文件HWPuSDK.lib静态库文件HWPuSDK.dll动态库文件软解码库:IVS_PU_Player.dll动态库文件Linux库基于Linuxsuse11/64位编译:网络通信库:HWPuSDK.h头文件libhwpusdk.so动态库文件
2023/7/14 11:12:04 17.43MB 华为IPC SDK
1
解决部分Linux操作系统在安装Qt时候,缺少libX11-xcb.so.1文件的问题!详细步骤可以查看CSDNIT1995博客
2023/7/8 8:14:49 3.82MB libX11
1
curl库源码添加了curl_config.h和mk文件,可以直接跳转到目录使用ndk-build编译出so库.
2023/7/8 0:26:26 5.95MB android ndk curl
1
针对Android平台编译好的FFmpeg3.4.5的动态链接库.so文件,包括armeabi-v7aarm64-v8a两个版本,包含头文件,包含x264,支持mediacodec硬解码h264,h265。
可直接集成到工程中用于视频编辑、转码等。
2023/7/4 10:17:11 25.1MB FFMpeg .so Androi 动态链接库
1
共 181 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡