Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
可定制的Java应用程序理念_Java_Customization - Fatal编程技术网

可定制的Java应用程序理念

可定制的Java应用程序理念,java,customization,Java,Customization,因此,我正在开发一个java应用程序,客户要求能够拥有可以解锁的功能,以使应用程序能够根据客户的付费需求进行定制。因此,我试图以一种既能提供一定程度的安全性,又能提供一般可维护性和可读性的方式来实现这一点 我一直在四处搜索,并有自己的想法,维护一个加密的配置文件,该文件可能存储在一个jar文件中,我可以在运行时卸载、重新打包和加载 看看是否有其他人对你如何做到这一点有什么有趣的想法。到目前为止,我在谷歌上做了一些研究,但没有取得很多成功 哦,最后一点警告,这个java应用程序所在的机器可能没有可

因此,我正在开发一个java应用程序,客户要求能够拥有可以解锁的功能,以使应用程序能够根据客户的付费需求进行定制。因此,我试图以一种既能提供一定程度的安全性,又能提供一般可维护性和可读性的方式来实现这一点

我一直在四处搜索,并有自己的想法,维护一个加密的配置文件,该文件可能存储在一个jar文件中,我可以在运行时卸载、重新打包和加载

看看是否有其他人对你如何做到这一点有什么有趣的想法。到目前为止,我在谷歌上做了一些研究,但没有取得很多成功


哦,最后一点警告,这个java应用程序所在的机器可能没有可用的internet。因此,运行许可证服务器似乎不是一个可行的选项

防止对软件中“锁定”的功能进行“未经授权访问”的唯一可靠方法是,不要提供不希望用户首先访问的代码

通过使用密码、加密(密钥将在哪里?在程序本身中?)解锁来启用额外功能,配置文件通常会被决心获得想要执行的代码的人击败

如果锁定的代码已经在二进制文件中分发,那么至少使用软件手段解锁最有可能失败。我脑海中浮现的一种似乎有点安全的方法是硬件密钥加密狗,或者将重要代码存储在硬件上,但没有多少人喜欢必须插入一块硬件才能使用软件的想法


实际上,代码本身没有只被某些软件标志禁用的功能。

防止对软件中“锁定”的功能进行“未经授权访问”的唯一可靠方法是不提供不希望用户首先访问的代码

通过使用密码、加密(密钥将在哪里?在程序本身中?)解锁来启用额外功能,配置文件通常会被决心获得想要执行的代码的人击败

如果锁定的代码已经在二进制文件中分发,那么至少使用软件手段解锁最有可能失败。我脑海中浮现的一种似乎有点安全的方法是硬件密钥加密狗,或者将重要代码存储在硬件上,但没有多少人喜欢必须插入一块硬件才能使用软件的想法


归根结底,代码本身没有只被某些软件标志禁用的功能。

我建议您与客户建立信任关系。或者是那个,或者是包a,但即使是这些也不是100%


如果您正在分发软件,任何类型的加密都必须能够自行解密。你实际上是在给客户锁和钥匙。

我建议你与客户建立信任关系。或者是那个,或者是包a,但即使是这些也不是100%


如果您正在分发软件,任何类型的加密都必须能够自行解密。您实际上是在为客户提供锁和钥匙。

您可以实现核心产品,然后将附加功能作为插件。您可以将每个插件放在一个单独的jar文件中。然后,客户可以分发包含核心应用程序和购买的插件的捆绑包。因此,未购买的功能不在任何二进制文件中。

您可以实现核心产品,然后将附加功能作为插件。您可以将每个插件放在一个单独的jar文件中。然后,客户可以分发包含核心应用程序和购买的插件的捆绑包。因此,未购买的功能不在任何二进制文件中。

我建议使用某种依赖项注入或运行时编织方面,这样您就可以包含具有正确xml文件的新jar文件或新功能的配置文件


我同意coobird的观点,包括它们并锁定它们本身就有风险,因为最终会有人对您的应用程序进行反编译,并决定如何获得所有功能。

我建议使用某种依赖注入或运行时编织方面,因此,您可以包含具有正确xml文件的新jar文件或新特性的配置文件


我同意coobird的观点,包括它们并锁定它们本身就有风险,因为最终会有人对您的应用程序进行反编译,并决定如何获得所有功能。

分发完整的功能集。让他们打电话给你,要钥匙解锁各种功能。(使用简单的加密方案,使密钥具有合理的长度,并可通过电话传送。)

分发整套密钥。让他们打电话给你,要钥匙解锁各种功能。(使用简单的加密方案,使密钥具有合理的长度,并且可以通过电话传送。)

已经有了相对的信任级别。目前有多个版本的应用程序,它们实际上是由它们的启动类分开的,使用不同的main来加载策略集。我们知道它很容易被剥夺权利。但在特定的客户群中,他们认为可能性足够小,所以他们并不特别担心。我想让事情变得“足够困难”,可以这么说。现在已经有了相对的信任度。目前有多个版本的应用程序,它们实际上是由它们的启动类分开的,使用不同的main来加载策略集。我们知道它很容易被剥夺权利。但具体来说