如何使我的 JavaScript 代码在开发人员控制台中不可读?
How can I make my JavaScript code un-readable in the developer console?
我正在尝试找到一种方法让我的 JavaScript 代码在浏览器的开发人员控制台中不可见,但仍然可用。如果那不可能,我需要一种方法让它只能在特定网站上运行。提前致谢。
互联网站
对于public网站,你想要的是不可能的。你可以混淆代码,但你不能让它不可见,因为浏览器在用户的控制之下,浏览器需要代码来执行它,所以用户总是可以强制浏览器显示代码。
当然,您可以使混淆比丑化更精细,从而进入 DRM 主题。但这仍然不会让任何人掌握(混淆的)脚本以保持 运行 它,并可能对其进行逆向工程。
由于 JavaScript 代码在您用户的机器上 运行ning,他们必须信任它。 (在某种程度上。它 运行 在 JavaScript 运行 时间被沙箱化,所以它不会造成太大的伤害。)混淆代码超出缩小会让你看起来非常可疑,因为它建议您必须隐藏会伤害您的用户或他们的机器的功能。
因此,正如其他人已经评论的那样,必须保密的代码必须 运行 仅在服务器端,这样只有结果才能到达客户端。
受控环境
在 intranet 场景中,各个 IT 部门可能对 Intranet 服务器和客户端计算机都有独占控制权。在那里,IT 部门可以禁用已安装浏览器的检查功能。此外,他们必须确保用户无法以其他方式下载脚本或从浏览器缓存中抓取脚本。
实际上,这只需要将计算机设置为用作网络信息亭(无法 运行 任意程序的网络终端)。当然,网络或内联网服务器必须可靠地验证这些受信任的客户端机器,或者有人可以带上并插入他们自己的机器来获取 JavaScript 代码。
我正在尝试找到一种方法让我的 JavaScript 代码在浏览器的开发人员控制台中不可见,但仍然可用。如果那不可能,我需要一种方法让它只能在特定网站上运行。提前致谢。
互联网站
对于public网站,你想要的是不可能的。你可以混淆代码,但你不能让它不可见,因为浏览器在用户的控制之下,浏览器需要代码来执行它,所以用户总是可以强制浏览器显示代码。
当然,您可以使混淆比丑化更精细,从而进入 DRM 主题。但这仍然不会让任何人掌握(混淆的)脚本以保持 运行 它,并可能对其进行逆向工程。
由于 JavaScript 代码在您用户的机器上 运行ning,他们必须信任它。 (在某种程度上。它 运行 在 JavaScript 运行 时间被沙箱化,所以它不会造成太大的伤害。)混淆代码超出缩小会让你看起来非常可疑,因为它建议您必须隐藏会伤害您的用户或他们的机器的功能。
因此,正如其他人已经评论的那样,必须保密的代码必须 运行 仅在服务器端,这样只有结果才能到达客户端。
受控环境
在 intranet 场景中,各个 IT 部门可能对 Intranet 服务器和客户端计算机都有独占控制权。在那里,IT 部门可以禁用已安装浏览器的检查功能。此外,他们必须确保用户无法以其他方式下载脚本或从浏览器缓存中抓取脚本。
实际上,这只需要将计算机设置为用作网络信息亭(无法 运行 任意程序的网络终端)。当然,网络或内联网服务器必须可靠地验证这些受信任的客户端机器,或者有人可以带上并插入他们自己的机器来获取 JavaScript 代码。