众所周知,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
1概述文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NANDFlash的固态硬盘)或分区上的文件的方法和数据结构;
即在存储设备上组织文件的方法。
操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。
文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。
从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。
具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。
本次实验我们实现了多级目录下的文件管理系统,具备文件系统的文件创建、删除、读写以及目录的创建、删除等操作,并在内存中开辟一块空间,模拟虚拟磁盘,成功地展示出文件系统的功能和属性。
2课程设计的任务和要求2.1设计任务在下列内容中任选其一:1、多用户、多级目录结构文件系统的设计与实现;
2、WDM驱动程序开发;
3、存储管理系统的实现,主要包括虚拟存储管理调页、缺页统计等;
4、进程管理系统的实现,包括进程的创建、调度、通信、撤消等功能;
5、自选一个感兴趣的与操作系统有关的问题加以实现,要求难度相当。
2.2设计要求1、在深入理解操作系统基本原理的基础上,对于选定的题目,以小组为单位,先确定设计方案;
2、设计系统的数据结构和程序结构,设计每个模块的处理流程。
要求设计合理;
3、编程序实现系统,要求实现可视化的运行界面,界面应清楚地反映出系统的运行结果;
4、确定测试方案,选择测试用例,对系统进行测试;
5、运行系统并要通过验收,讲解运行结果,说明系统的特色和创新之处,并回答指导教师的提问;
6、提交课程设计报告。
集体要求:1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录的文件系统。
2.文件物理结构可采用显式链接或其他方法。
3.磁盘空闲空间的管理可选择位示图或其他方法。
如果采用位示图来管理文件存储空间,并采用显式链接分配方式,则可以将位示图合并到FAT中。
4.文件目录结构采用多用户多级目录结构,每个目录项包含文件名、物理地址、长度等信息,还可以通过目录项实现对文件的读和写的保护。
目录组织方式可以不使用索引结点的方式,但使用索引结点,则难度系数为1.2。
5.设计一个较实用的用户界面,方便用户使用。
要求提供以下相关文件操作:(1)具有login(用户登录)(2)系统初始化(建文件卷、提供登录模块)(3)文件的创建:create(4)文件的打开:open(5)文件的读:read(6)文件的写:write(7)文件关闭:close(8)删除文件:delete(9)创建目录(建立子目录):mkdir(10)改变当前目录:cd(11)列出文件目录:dir(12)退出:logout................................................
2023/8/9 10:27:48 1001KB 操作系统C++
1
博客链接:https://blog.csdn.net/alongiii/article/details/113194694微机原理课程设计+报告:简易游戏机(1)液晶显示制作人姓名、学号,院,班级及校徽等信息和图片;
(2)多个游戏选项(》1):贪吃蛇游戏、俄罗斯方块等;
(3)具有简单电子表功能,可显示年、月、日、星期、时、分、秒等(根据实际显示方式的不同,可选择部分或全部功能);
(4)具有电子表的校准功能;
(5)扩展功能:自定义其它功能,要求具有一定难度、创新性和综合性;
资源包括:简易游戏机Proteus仿真+Keil代码+说明文档
2023/8/5 12:45:44 744KB 51单片机 Proteus仿真 Keil
1
DirectX修复工具(DirectXRepair)是一款系统级工具软件,简便易用。
本程序为绿色版,无需安装,可直接运行。
本程序的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复。
程序主要针对0xc000007b问题设计,可以完美修复该问题。
本程序中包含了最新版的DirectXredist(Jun2010),并且全部DX文件都有Microsoft的数字签名,安全放心。
本程序为了应对一般电脑用户的使用,采用了傻瓜式一键设计,只要点击主界面上的“检测并修复”按钮,程序就会自动完成校验、检测、下载、修复以及注册的全部功能,无需用户的介入,大大降低了使用难度。
本程序适用于多个操作系统,如WindowsXP(需先安装.NET2.0,详情请参阅“致WindowsXP用户.txt”文件)、WindowsVista、Windows7、Windows8、Windows8.1、Windows8.1Update、Windows10,同时兼容32位操作系统和64位操作系统。
本程序会根据系统的不同,自动调整任务模式,无需用户进行设置。
本程序的V3.8版分为标准版、增强版以及在线修复版。
所有版本都支持修复DirectX的功能,而增强版则额外支持修复c++的功能。
在线修复版功能与标准版相同,但其所需的数据包需要在修复时自动下载。
各个版本之间,主程序完全相同,只是其配套使用的数据包不同。
因此,标准版和在线修复版可以通过补全扩展包的形式成为增强版。
本程序自V3.5版起,自带扩展功能。
只要在主界面的“工具”菜单下打开“选项”对话框,找到“扩展”标签,点击其中的“开始扩展”按钮即可。
扩展过程需要Internet连接,扩展成功后新的数据包可自动生效。
扩展用时根据网络速度不同而不同,最快仅需数秒,最慢需要数分钟,烦请耐心等待。
本程序自V2.0版起采用全新的底层程序架构,使用了异步多线程编程技术,使得检测、下载、修复单独进行,互不干扰,快速如飞。
新程序更改了自我校验方式,因此使用新版本的程序时不会再出现自我校验失败的错误;
但并非取消自我校验,因此程序安全性与之前版本相同,并未降低。
程序有自动更新c++功能。
由于绝大多数软件运行时需要c++的支持,并且c++的异常也会导致0xc000007b错误,因此程序在检测修复的同时,也会根据需要更新系统中的c++组件。
自V3.2版本开始使用了全新的c++扩展包,可以大幅提高工业软件修复成功的概率。
修复c++的功能仅限于增强版,标准版及在线修复版在系统c++异常时(非丢失时)会提示用户使用增强版进行修复。
除常规修复外,新版程序还支持C++强力修复功能。
当常规修复无效时,可以到本程序的选项界面内开启强力修复功能,可大幅提高修复成功率。
请注意,此功能为试验性功能,请仅在常规修复无效时再使用。
程序有两种窗口样式。
正常模式即默认样式,适合绝大多数用户使用。
另有一种简约模式,此时窗口将只显示最基本的内容,修复会自动进行,修复完成10秒钟后会自动退出。
该窗口样式可以使修复工作变得更加简单快速,同时方便其他软件、游戏将本程序内嵌,即可进行无需人工参与的快速修复。
开启简约模式的方法是:打开程序所在目录下的“Settings.ini”文件(如果没有可以自己创建),将其中的“FormStyle”一项的值改为“Simple”并保存即可。
新版程序支持命令行运行模式。
在命令行中调用本程序,可以在路径后直接添加命令进行相应的设置。
常见的命令有7类,分别是设置语言的命令、设置窗口模式的命令,设置安全级别的命令、开启强力修复的命令、设置c++修复模式的命令、控制DirectDraw的命令、显示版权信息的命令。
具体命令名称可以通过“/help”或“/?”进行查询。
程序有高级筛选功能,开启该功能后用户可以自主选择要修复的文件,避免了其他不必要的修复工作。
同时,也支持通过文件进行辅助筛选,只要在程序目录下建立“Filter.dat”文件,其中的每一行写一个需要修复文件的序号即可。
该功能仅针对高级用户使用,并且必须在正常窗口模式下才有效(简约模式时无效)。
本程序有自动记录日志功能,可以记录每一次检测修复结果,方便在出现问题时,及时分析和查找原因,以便找到解决办法。
程序的“选项”对话框中包含了6项高级功能。
点击其中的“注册系统文件夹中所有dll文件”按钮可以自动注册系统文件夹下的所有dll文件。
该项功能不仅能修复DirectX的问题,还可以修复系统中很多其他由于dll未注册而产生的问题,颇为实用。
点击该按钮旁边的小箭头,还可以注册任意指定文件夹下的dll文件,方便用户对绿色版、硬盘版的程序组件进行注册。
2023/8/3 0:57:01 940KB zhangyue DirectX 修复 工具
1
提供了源代码,程序可以运行!但是用的C++,初学者有难度
2023/8/2 15:12:13 613KB C++电梯调度
1
包含接收、发送、解析、附件上传下载,自我认为对于初学者代码理解还是有点难度的。
界面不怎么样,自己去改改咯!
2023/7/31 7:07:36 1.07MB 邮件接收解析
1
本文来自于微信公众号:CSDN,文章主要介绍了云数据库的技术需求,以及在技术驱动的需求下,云数据库架构具备的几项主要业务价值等,希望对您能有所帮助。
如今,大型企业如金融企业和银行等,在下一代的微服务架构转型要求下,需要基础软件和数据平台能够实现原生的云化,以满足微服务架构的需求。
微服务,也就是一种面向服务的,有特定边界的松散耦合的架构。
主要特点包括,每一个微服务是一个独立的自治系统,可以不依赖外部组件独立运行;
对应用只暴露接口,用户可以灵活的调整过每个微服务的使用;
业务粒度足够小。
在企业架构“云化”的过程中,数据库的云化是最为重要也是难度较大的一个部分。
数据库云平台(dbPaaS)是一类支持弹
1
关于红色警戒的百科全书,用qt编写封装的,编程难度不大就是有点肝,欢迎下载。
2023/7/27 10:11:29 57.97MB qt
1
御剑后台扫描珍藏版t00ls大牛的作品,方便查找用户后台登陆地址,同时也为程序开发人员增加了难度,尽量独特的后台目录结构。
附带很强大的字典。
功能简介:1.扫描线程自定义:用户可根据自身电脑的配置来设置调节扫描线程2.集合DIR扫描ASPASPXPHPJSPMDB数据库包含所有网站脚本路径扫描3.默认探测200(也就是扫描的网站真实存在的路径文件)使用方法非常简单只需要在郁闷框输入你要扫描的域名即可然后点击扫描
2023/7/26 5:41:45 2.42MB 后台扫描工具
1
LinkedIn中python的技能测评问题,整理的一些题库(大约60题),难度不大
2023/7/15 15:14:58 23KB python LinkedIn
1
共 264 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡