当前位置: 首页 > 知识库问答 >
问题:

更改jar文件校验和而不解压缩或阻止其执行的最快方法

贺浩壤
2023-03-14

我想从Java现有的可执行jarfile生成一个带有自定义校验和的jar文件(例如,md5=pizza3jof43u3q5bg...)

这应该在不破坏jar的情况下发生,也不需要为我查看的每个校验和解压缩+重压缩和/或重散列整个文件。

理想情况下,我会有一种方法来增加尽可能接近jar末尾的不相关字节部分,这样我就可以以最小的努力(只需要重新散列文件的最后n个字节,而不是整个文件)来执行校验和

到目前为止,我对JAR所做的所有尝试都是在文件末尾添加字节,虽然它们仍然可以像普通的zip文件一样打开和查看,但它们不能再被执行了。

我想要做的事情可能实现吗?如果是的话,有没有关于如何实现的资源/提示?

共有1个答案

孔阳炎
2023-03-14

答案在很大程度上取决于正在使用的校验和函数。例如。对于异或校验和,这并不难。但对于大多数当前使用的校验和函数来说,这是不可能的,或者至少是对CPU要求极高的。即使对于您提到的MD5校验和(它有严重的漏洞),您也必须尝试添加不同的随机数,直到得到您想要的校验和。

作为附带说明,校验和通常是十六进制数字,因此它们只能包含字母a-f,而不是像“Pizza”这样的字符串。

还要注意,当您不能轻易地在jar文件中“增加一个不相关的字节部分”时,因为这会使整个归档文件无效。

 类似资料:
  • 本文向大家介绍C#文件流进行压缩和解压缩的方法,包括了C#文件流进行压缩和解压缩的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#文件流进行压缩和解压缩的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的C#程序设计有所帮助。

  • 本文向大家介绍linux对文件解压或打包压缩的方法,包括了linux对文件解压或打包压缩的方法的使用技巧和注意事项,需要的朋友参考一下 tar命令用与对文件打包压缩或解压,格式: tar [选项] [文件] 打包并压缩文件: tar -czvf  压缩包名 .tar.gz 解压并展开压缩包: tar -xzvf  压缩包名 .tar.gz 参数 -c  创建压缩文件;     -x 解开压缩文件;

  • 我正在使用Julia的ZipFile包来提取和处理csv文件。没问题,但是当我遇到zip文件中的zip文件时,我也想处理它,但是遇到了一个错误。 Julia ZipFile文档如下:https://zipfilejl.readthedocs.io/en/latest/ 对如何做到这一点有什么想法吗?

  • Demo示例了如何利用第三方类库 ZipArchive 来解压和压缩.zip文件。Demo的演示过程是:先从网络下载一个.zip文件,然后解压它,最后再进行压缩。 代码的解释文章(英文)是:http://www.icodeblog.com/2012/08/13/unzipping-files-using-zip-archive/ [Code4App.com]

  • 问题内容: 基本上,我有一个jar文件,我想从junit测试中解压缩到特定的文件夹。 最简单的方法是什么?如果有必要,我愿意使用免费的第三方库。 问题答案: 您可以用来遍历文件中的条目,通过文件中的每个条目提取并将数据写到外部文件中。Apache Commons IO提供了一些实用程序,可以使它显得更笨拙。

  • 问题内容: 我想使用Java代码将文件压缩为zip,rar和7z格式。我也想在指定位置解压缩这些文件。谁能告诉我如何在Java中使用7-zip压缩和解压缩文件? 问题答案: 我用过:sevenzipjbinding.jar sevenzipjbinding-Allplatforms.jar 我现在可以使用这些jar解压缩文件。 尝试使用此链接进行解压缩:http : //sourceforge.n