如何混淆Java编译的类或jar,其中也包含Java 插件,这些插件允许你在浏览器中运行Java程序。java打不开你需要的插件要打开java,需要安装Java运行时环境(JRE)插件,其实就是关于java的运行环境和我们自己写的java类和jar,当用户点击exe文件时,exe文件会安装java的运行环境,并部署类文件。
有现成的jar包加密工具,建议用混淆 proGuard加密jar包,或者百度一下Java-3混淆和encryption Jocky都可以。Java字节码很容易反编译,因为它们的抽象程度很高。下面是几种保护Java字节码不被反编译的常用方法。通常这些方法并不能绝对防止程序被反编译,只是增加了反编译的难度,因为这些方法都有各自的使用环境和弱点。
比如一个开发者可以在服务器端放一个key JavaClass,客户端可以通过访问服务器的相关接口而不是直接访问类文件来获取服务。所以黑客无法反编译类文件。目前通过接口提供服务的标准和协议越来越多,比如HTTP、WebService、RPC等。但是很多应用并不适合这种保护,比如Java程序对于单机运行的程序是无法隔离的。
Java是一种跨平台的解释性语言Java source 代码编译后的中间字节码存储在一个类文件中。类文件是字节码代码的一个中间,这个字节码包含了很多source 代码的信息比如变量名、方法名,所以Java middle代码的反编译变得非常容易。目前市面上有很多免费的商业反编译软件可以生成高质量的反编译源代码代码,因此如何保护Java程序成为了开发者非常重要的挑战。本文首先讨论了保护Java程序的基本方法,然后对代码/ -2/问题进行了深入研究。最后,结合一个实际应用,如何保护Java程序不被反编译成为保护Java程序的最大挑战。通常用CC 等编程语言开发的程序被编译成objects 代码这些objects 代码都是本机的二进制可执行文件-3。通常,所有源文件都被编译并链接成一个可执行文件。在这些可执行文件中,编译器会删除程序中的变量名、方法名和其他信息。这些信息通常由内存地址来表示。例如,如果需要使用一个变量,通常通过这个变量的地址来访问它。因此,反编译这些本地目标代码是非常困难的。Java语言的出现使得反编译变得非常容易和有效,原因如下:由于跨平台的需要。
文章TAG:插件 混淆 代码 java idea java代码混淆插件