最近开发的项目要进行试点,为了防止代码很容易被反编译而造成泄露,故而进行了代码混淆的研究,而项目中又时使用spring boot框架开发的,经过网上找的资料以及自己的实验,终于将代码进行了最大程度的混淆,特在此记录一下,与诸位分享。       我混淆代码使用的是proguard-maven-plugin            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-23 19:46:03
                            
                                524阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前些日子几次遇到ProGuard的问题,想偷个懒,没好好RTFM,后来通读了一下ProGuard的Manual,有点收获,总结一下。
主要是读了Usage部分,http://proguard.sourceforge.net/#manual/usage.html
命令:java -jar proguard.jar options ... 或 java -jar proguard.jar            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-06 12:48:56
                            
                                170阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            入口为了决定哪些代码要被保留哪些代码要出丢弃和混淆,必须指定入口点。这些入口点通常是 main方法,activity,service等。在压缩阶段,Proguard从这些入口点开始递归确定哪些类或类成员要被使用,其余的都会被丢弃。在优化阶段,ProGuard 会进一步优化代码。在其他优化中,可以将不是入口点的类和方法设为 private,static 或 final ,删除未使用的参数,并且可以内            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-30 16:48:51
                            
                                293阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Spring boot入门(三):SpringBoot集成结合AdminLTE(Freemarker),利用generate自动生成代码,利用DataTable和PageHelper进行分页显示关于SpringBoot和PageHelper,前篇博客已经介绍过,Spring boot入门(二):Spring boot集成MySql,Mybatis和PageHelper插件,前篇博客大致讲述了Spr            
                
         
            
            
            
            编译简单就是把代码跑一哈,然后我们的代码 .java文件 就被编译成了 .class 文件  反编译就是针对编译生成的 jar/war 包 里面的 .class 文件 逆向还原回来,可以看到你的代码写的啥。比较常用的反编译工具 JD-GUI ,直接把编译好的jar丢进去,大部分都能反编译看到源码:  那如果不想给别人反编译看自己写的代码呢?怎么做?混淆该篇玩的代码混淆 ,是其中一种手段。我给你看,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-21 11:20:07
                            
                                531阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            SpringBoot相信大家都很熟悉了,这里小编就再进行讲述了,由于现在用Springboot的人越来越多,当然小编也不会错过机会进行学习,这个章节里,小编就带领着大家,学习如何Springboot与Drools7.0整合。小编在之前的章节中有讲过与Spring,与其说整合,还不如说只是将这两个不相关的工具放到一个项目里,SpringBoot只是处理本职工作,而Drools同样也是如此,这里小编要            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-27 20:02:48
                            
                                187阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            [b]proguard的常见配置参数[/b] 
-include {filename} 从给定的文件中读取配置参数 
-basedirectory {directoryname} 指定基础目录为以后相对的档案名称 
-injars {class_path} 指定要处理的应用程序jar,war,ear和目录 
-outjars {class_path} 指定            
                
         
            
            
            
            要启用代码混淆,在build.gradle文件中的最简配置可能是这样的:buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro            
                
         
            
            
            
            SpringBoot结合ProGuard实现代码混淆参考案例前言ProGuard集成1.maven的配置2.相关异常解决注意事项 前言研究ProGuard也花了两天时间,其实最主要的时间花在前面proguard读取jar包的时候相关jar冲突的问题,但是总的来说不用拆分SpringBoot项目并且实现代码混淆已经很舒服了。ProGuard集成1.maven的配置具体配置如下:<build&            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-14 14:33:04
                            
                                372阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言   在以往的java开发中,程序员最怕大量的配置,是因为配置一多就不好统一管理,经常出现找不到配置的情况。而项目中,从开发测试环境到生产环境,往往需要切换不同的配置,如测试数据库连接换成生产数据库连接,若有一处配错或遗漏,就会带来不可挽回的损失。正因为这样,spring boot给出了非常理想的解决方案——application.properties。见application-pr            
                
         
            
            
            
            最近被keep keepnames keepclassmembers等几个混淆规则搞得晕头转向,看起来虽然简单,但用起来却经常跟自己预想的一样。所以决定放弃看他人总结的博客,直接看ProGuard官方文档,目前为止,总算是有一定了解了。1 ProGuard简介通常我们都认为ProGuard是一个代码混淆工具,实际上其作用还不至于此,而是包括了四部分内容:shrink(删减):删减无用代码,包括无用            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-27 22:41:06
                            
                                145阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Allatori混淆技术介绍Allatori是一个Java 混淆器,它属于第二代混淆器,因此它能够全方位的保护你的知识产权。 Allatori具有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串混淆,以及水印技术。对于教育和非商业项目来说这个混淆器是免费的。支持war和jar文件格式,并且允许对需要混淆代码的应用程序添加有效日期。 有项目需要对代码进行保护,比较初级的方案就是对代码进行混淆            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-21 09:58:16
                            
                                144阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            最近在弄项目混淆的,proguard是最为广为使用的工具之一,可是用他的客户端来混淆springboot项目的时候最后总得不到可执行的jar。后来发现了proguard-maven-plugin这个插件,所有proguard的指令都可以在pom中实现,正好在github上也找到了参考项目,这里给大家分享下。直接看pom:<build>
        <finalName>            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-05 21:32:31
                            
                                396阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            使用ProGuard插件对Spring Boot程序进行代码混淆介绍: ProGuard是一个开源的Java类文件(只能处理Java代码,但是对应资源文件等是不能起作用的)的压缩器、优化器、混淆器和预校验器。其处理的过程主要分为以下几个步骤: ProGuard功能shrinker(压缩):移除无效的类、属性、方法等optimizer(优化):优化字节码,并删除未使用的结构、方法接口等。(从java            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-21 11:11:55
                            
                                186阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.  简介       因为Java代码是非常容易反编码的,为了很好的保护Java源代码,我们需要对编译好后的class文件进行混淆。       ProGuard是一个用于Android开发用于混淆最终的项目,增加项目被反编译难度的免费工具。最明显的特征为混淆,它可            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-14 18:16:09
                            
                                301阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Allatori简介Allatori是一个Java 混淆器,它属于第二代混淆器,因此它能够全方位的保护你的知识产权。 Allatori具有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串混淆,以及水印技术。对于教育和非商业项目来说这个混淆器是免费的。支持war和jar文件格式,并且允许对需要混淆代码的应用程序添加有效日期。 有项目需要对代码进行保护,比较初级的方案就是对代码进行混淆,打包之            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-20 12:38:21
                            
                                335阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            AndroidProguardAndroid代码混淆,包含了通用混淆配置,以及常用的第三方库混淆配置简介作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只是网上搜一些成型的混淆规则粘贴进自己项目,并没有对混淆有个深入的理解。本篇文章的目的就是让一个初学者在看完后,能在不进行任何帮助            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-29 10:33:29
                            
                                21阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            用proguard对maven构建的springboot项目进行混淆1,配置混淆的问题配置混淆的时候可能会报很多版本错,包括但不限于java版本不对,springboot版本不对,log4j版本不对。。。。。其实只要proguard版本上去了就行,得自己下一个高版本的proguard.jar.由于proguard混淆貌似不能指定混淆的类名在basePackages下面类名混淆后唯一,不同包名经常有            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-10 12:28:45
                            
                                743阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                            则引擎是由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。Drools主要分为两个部分:一是Drools规则配置,二是Drools规则的解释执行            
                
         
            
            
            
            ProGuard的简单介绍Java的字节码一般是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard的主要作用就是混淆。当然它还能对字节码进行缩减体积、优化等,但那些对于我们来说都算是次要的功能。ProGuard中有一段话简单明了的介绍了ProGuard的作用:ProGuard is a free             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-21 04:32:04
                            
                                52阅读