【发布时间】:2016-03-28 04:44:24
【问题描述】:
我有一个使用休眠的 Spring 框架构建的 jar 文件项目,但我不希望其他电脑执行我的 jar 文件。我希望我的 jar 文件只在我想运行的电脑上工作。有人知道吗?
【问题讨论】:
-
你能补充更多细节吗?
-
只需从属性中获取加密密钥并在开始之前在您的程序中解密。仅在您想要的系统中使用密钥。如果需要,还可以混淆代码。
我有一个使用休眠的 Spring 框架构建的 jar 文件项目,但我不希望其他电脑执行我的 jar 文件。我希望我的 jar 文件只在我想运行的电脑上工作。有人知道吗?
【问题讨论】:
没有办法阻止程序在另一台计算机上运行。任何有足够决心和技能的人都可以绕过保护措施。
但是,如果您对此不担心,您可以检查某些特定于计算机的设置,例如 MAC address,如果它们不是您所期望的,则终止该程序。这种方法对于任何使用反编译器的人来说都是显而易见的。为了使这个更复杂和更难绕过,您可以使用从 MAC 地址生成的密钥加密您的 jar 文件,并在运行时对其进行解密。除非运行程序的人知道您的信息,否则这将使执行变得更加困难。
【讨论】: