精华内容
下载资源
问答
  • java代码混淆器,可以混淆函数变量、类、方法名以实现代码加密java jar 混淆 工具 反编译
  • java jar包加密.zip

    2021-04-14 14:46:15
    java jar包加密,及使用说明
  • 参考文章:ProGuard对java jar包实现混淆加密 java代码混淆 ProGuard 最全混淆规则说明
    展开全文
  • Java jar包加密

    千次阅读 2020-08-31 16:24:55
    公司项目需要交付时项目源码进行加密,本文针对Java spring boot项目的jar包运行方式进行加密加密工具:xjar,地址:https://gitee.com/core-lib/xjar 前提条件: jdk1.7+ Go语言环境(编辑环境需要,运行...

    Java项目中jar包在window以及Linux环境下的加密

    公司项目需要交付时对项目源码进行加密,本文针对Java spring boot项目的jar包运行方式进行加密。

    加密工具:xjar,地址:https://gitee.com/core-lib/xjar

    前提条件:

    • jdk1.7+
    • Go语言环境(编辑环境需要,运行环境可不需要)

    创建一个新项目用于加密jar包

    • 新建一个项目 pom引入以下依赖
     <!-- 设置 jitpack.io 仓库 -->
        <repositories>
            <repository>
                <id>jitpack.io</id>
                <url>https://jitpack.io</url>
            </repository>
        </repositories>
    <!-- 添加 XJar 依赖 -->
    <dependency>
        <groupId>com.github.core-lib</groupId>
        <artifactId>xjar</artifactId>
        <version>4.0.1</version>
    </dependency>
    
    

    书写加密类

    package com.test.jar;
    
    import io.xjar.XCryptos;
    /**
     * @ClassName: JarEncryption
     * @Package: com.test.jar
     * @Description:
     * @Datetime: 2020/8/31   10:30
     * @author: kaishun.zhou
     */
    public class JarEncryption {
        public static void main(String[] args) throws Exception {
            // Spring-Boot Jar包加密
            XCryptos.encryption()
                    .from("C:\\zhoukaishun\\study\\target\\study.jar")
                    .use("io.xjar")
                    .exclude("/static/**/*")
                    .exclude("/templates/**/*")
                    .exclude("/META-INF/resources/**/*")
                    .to("C:\\zhoukaishun\\study\\target\\study-encryption.jar");
            System.out.println("success");
        }
    }
    
    

    运行方法得到加密后的jar 以及一个xjar.go文件,如下图

    在这里插入图片描述

    • window环境下cmd进入文件路径下执行,go build xjar.go ,会生成一个xjar.exe 文件

    在这里插入图片描述

    运行,xjar java -jar 项目名.jar

    在这里插入图片描述

    在这里插入图片描述

    如上图 可以正常访问,此时拿到加密后的jar包通过反编译工具或者idea是无法打开的。

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

    • Linux环境同理,编译环境需要go环境,将加密后的jar上传到指定目录,go编译xjar.go此时生成的就不是.exe文件,而实一个xjar,运行同理,文件目录下 ./xjar java -jar 项目名.jar ,详情下图

    目录结构

    在这里插入图片描述

    执行的sh

    在这里插入图片描述

    执行结果

    在这里插入图片描述

    访问

    在这里插入图片描述

    至此结束
    展开全文
  • java jar包加密

    千次阅读 2019-04-16 23:38:04
    方案一:xjar - Spring Boot JAR 安全加密运行工具 GitHub: ... 基于对JAR包内资源的加密以及拓展ClassLoader来构建的一套程序加密启动,动态解密运行的方案,避免源码泄露或反编译。 ...

    方案一:xjar - Spring Boot JAR 安全加密运行工具

    GitHub: https://github.com/core-lib/xjar

    基于对JAR包内资源的加密以及拓展ClassLoader来构建的一套程序加密启动,动态解密运行的方案,避免源码泄露或反编译。
    这里只是最最简单场景下的使用步骤,进阶用法请参考官网

    1. 添加依赖

    在pom中project节点下添加jitpack仓库

    <!-- 设置 jitpack.io 仓库 -->
    <repositories>
    	<repository>
    		<id>jitpack.io</id>
    		<url>https://www.jitpack.io</url>
    	</repository>
    </repositories>
    

    添加xjar依赖

    <!-- 添加 XJar 依赖 -->
    <dependency>
    	<groupId>com.github.core-lib</groupId>
    	<artifactId>xjar</artifactId>
    	<version>v1.1.4</version>
    </dependency>
    

    2. Springboot Jar包加密

    @Test
    public void test() throws Exception {
    	String password = "io.xjar";
        XBoot.encrypt("D:/test/test.jar", "D:/test/encryptedTest.jar", password,
        		new XJarRegexEntryFilter("BOOT-INF/classes/com/.+?"));//只加密classes/com下的文件
        System.out.println("done");
    }
    
    // 危险加密模式,即不需要输入密码即可启动的加密方式,这种方式META-INF/MANIFEST.MF中会保留密钥,请谨慎使用!
    String password = "io.xjar";
    XKey xKey = XKit.key(password);
    XBoot.encrypt("/path/to/read/plaintext.jar", "/path/to/save/encrypted.jar", xKey, XConstants.MODE_DANGER);
    

    3. 运行jar

    java -jar encryptedTest.jar --xjar.password=io.xjar
    

    方案二:ProGuard - 代码混淆

    官网:https://www.guardsquare.com/en/products/proguard
    参考:https://blog.csdn.net/u010142437/article/details/72819771

    方案三:Allatori- 代码混淆

    官网:http://www.allatori.com/
    参考:https://github.com/Lovnx/confusion

    展开全文
  • java对一个jar包加密

    千次阅读 2019-05-21 15:02:50
    软件无需任何代码开发,即可轻松加密Java应用程序、Jar包、War,防止反编译逆向工程,真正实现 Java代码加密加密效果对比 加密加密加密方案 Virbox Protector 测试版工具:立即下载 使用Virbox...

    加密效果概述

    深思对 java 的源码保护方式是通过 Virbox Protector 与DS Protector 工具进行保护。软件无需任何代码开发,即可轻松加密Java应用程序、Jar包、War包,防止反编译逆向工程,真正实现 Java代码加密。

    加密效果对比

    加密前

    加密后

     

    加密方案

    Virbox Protector 测试版工具: https://shell.virbox.com/javaprotector.html

    使用Virbox Protector Standalone对 Jar 包加密有两种方式

    加密方式一

    加密流程

    1.准备工具

    将待加密的jar包放到一个文件夹中。

    2.添加目录

    将包含jar包的目录拖入工具中,设置加密选项中的密码

    加密选项-密码设置

    • 密码如果不设置,会随机默认密码。
    • 建议设置一个密码,并牢记,后续更新jar包时,重新加密时填写此密码,则无需更换配置sjt库。

    3.点击保护

    点击【保护选中项目】,保护成功后会重新生成一个目录:ssp.java程序 ,里面包含加密后的jar包和 sjt 文件。

     

    4.运行加密后jar

    两种方式运行加密后的jar包。1.将sjt库文件添加到系统环境变量;2.运行jar包时指定sjt文件目录。

    Windows系统

    添加到系统环境变量

    1)可以将 sjt 文件存放在一个固定的目录下,将sjt_windows_x64.dll或sjt_windows_x86.dll添加到系统环境变量中。

    设置环境变量流程:

    我的电脑-属性-高级系统设置-环境变量-系统变量,新建变量名JAVA_TOOL_OPTIONS,变量值

    -agentpath:C:\Users\test\Desktop\sjt\sjt_windows_x64.dll

    2)配置好环境后,直接运行jar包或直接调用jar包即可。

    备注:若Java版本是64位的,指定 sjt_windows_x64.dll ,若Java版本是32 位的,使用 sjt_windows_x86.dll。

    Linux系统

    添加到系统环境变量

    1)将JAVA_TOOL_OPTIONS=-agentpath:/home/sense/Desktop/sjt_so/sjt_linux_x86.so 添加到 /etc/profile环境变量

    JAVA_TOOL_OPTIONS=-agentpath:/home/sense/Desktop/sjt_so/sjt_linux_x86.so

    2)输入命令source /etc/profile使修改的文件生效。

    3)配置好环境后,直接运行jar包或直接调用jar包即可。

    注意

    若配置系统环境变量后,即使指定sjt库的位置,java运行也会先走系统环境变量里的配置。

    开始试用Virbox Protector Java !

    下载安装试用版后,点击【申请试用】注册VirboxProtector账号,登录即可开始加密。注意:试用版加密后的程序只能运行7天,请勿用于正式发布.

    试用地址:https://shell.virbox.com/javaprotector.html

    加密方式二-【DS工具加密】

    1.部署项目并启动服务

    项目放在 webapps 目录下,先启动 tomcat 服务确认能正常启动,启动过后该 War 包会自动解压出一个同名的文件夹

     

     

    启动 tomcat 服务

     

     

    找到依赖的解释器
    服务启动成功后,进入任务管理器-服务-找到目前运行项目所依赖的 jdk , 进入目录找到对应程序进行加密。 如下图

     

     

    2.对java.exe加密

    首先对安装环境 jdk 路径下的 java.exe 进行加密,将 java.exe 拖入到加壳工具Virbox Protector Standalone中。

     

    在加密选项页面将插件的ds按钮打开。

     

    点击“保护选中项目”,加壳后会额外生成图示两个文件。
    java.exe.ssp 是配置文件,在后面对 .class/.jar加密时会用到;java.ssp.exe 是加壳后的 java.exe 文件,将 java.exe 剪切到其他文件夹备份,java.ssp.exe 名字改为java.exe 即可。

     

     

    3.打开“DSProtector.exe”对 .class/.jar进行保护。

    添加上一步加密 java.exe 生成的 java.exe.ssp 文件。

     

    添加要加密的.class/.jar文件。

     

    点击“保护它”,加密成功。

    展开全文
  • Java Jar 包加密 -- XJar

    千次阅读 2020-09-23 14:43:03
     这时候就需要对jar进行加密处理。 二、技术&工具  XJar  GitHub:https://github.com/core-lib/xjar  码云:https://gitee.com/core-lib/xjar?_from=gitee_search  maven集成 XJ
  • Java项目对jar包加密流程

    千次阅读 2018-10-10 14:33:06
    Java 开发语言以其安全性高、代码优化、跨平台等特性,迅速取代了很多传统高级语言,占据了企业级网络应用开发等诸多领域的霸主地位。特别是近年来大数据、互联网+、云计算技术的不断发展,Java 开发语言更具有不可...
  • javajar包加密及使用

    万次阅读 2017-08-30 11:41:31
    由于项目要求(虽然我觉得代码没什么机密可言...),写好的jar包需要做一定加密处理 这里提供两种办法,一种奇葩,一种通用 1. 直接修改jar文件: 具体步骤:  在代码中插入一段不会运行的到的代码 1 ...
  • java jar包加密保护解决方案

    万次阅读 2017-03-03 19:28:20
    为什么需要保护? 我用java写了一个程序如下: 12345678910111213141516171819202122232425 ...// App.javapublic class App{ static public void main( String args[] ) throws Exception {
  • import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOEx...
  • War因软件的复杂性,已经包括第三方jar包,配置文件等内容,所以war包加密需要将class文件拷贝出来进行混淆后,在拷贝回war中: 4.1.1比如当前有一个war 4.1.2将war用压缩软件打开,找到要混淆的类,复制出来 ...
  • JVM层对jar包字节码加密

    万次阅读 热门讨论 2017-07-18 18:45:36
    githubhttps://github.com/sea-boat/ByteCodeEncrypt需求拿到的需求是要某特定的jar包实现加密保护,jar包需要提供给外部使用,但核心逻辑部分需要保护以免被简单反编译即能...2. 对jar包进行加密,然后在Java层重写
  • 近期互联网上频频爆出网站数据库被脱裤,造成大量的敏感数据的失窃和丢失,给很多企业带来重大损失,本加密解密组件(jar包)可以帮助开发者,快速应用中的敏感数据进行加密解密,尽可能的帮助开发人员提高应用的...
  • jar包加密

    千次阅读 2019-04-30 10:15:35
    不小心把公司的jar包给解密了。。。很尴尬,研究一下。。...对jar包进行加密,然后在Java层重写类加载器进行解密,以达到对jar包加密保护。包括用对称加密算法和非对称加密算法。不管用什...
  • java私人封装的加密jar包以及使用

    千次阅读 2017-10-12 16:10:53
    加密方法使用密匙所以加密之后的字段内容无法做模糊查询。 测试示例结果: pom.xml 加入jar依赖: ...jar包内容: package com.daixinlian.common.encrypt; import java.security.Key; import jav
  • JAVA数据加密jar包之sunjce_provider.rar,sunjce_provider.jar
  • java MD5加密jar包

    2014-08-13 15:46:49
    能直接在java的应用程序中使用的MD5加密实现的jar包, 调用方法:转化成MD5:MD5.getEncryptedPwd(user.getPassword()) MD5验证:MD5.validPassword(password, user.getPassword())
  • Java实现MD5加密技术所需jar包
  • 1、文档加密方式 调用方法FileUtil.fileEncrypt(fileTemp1, fileincode,"222222222222"),参数说明 * @param prepareEncryptfilePath 待加密文件路径 * @param finishfEncryptfilePath 加密文件输出路径 * @...
  • Java】Springboot项目中jar包加密

    千次阅读 2019-10-22 19:29:14
    使用异或加密的形式,加密jar包 异或加密的原理: 一个整数 a 和任意一个整数 b 异或两次,得到的结果是整数 a 本身,即: a == a ^ b ^ b。 这里的 a 就是需要加密的原数据,b 则是密钥。a ^ b 就是加密过程,...
  • Java加密Jar包和Class文件-防止反编译

    千次阅读 2020-09-08 11:40:02
    为了保护自己发布的Jar包和Class文件,采用的方式大多是混淆或加密(混淆工具如ProGuard),本文介绍的是采用jvmti方式Class文件进行加密,使用C++生成加密和解密库,先用加密对Jar包进行加密,将加密后的Jar包...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,888
精华内容 19,555
关键字:

对java的jar包进行加密

java 订阅