对于一个普通的 NodeJS 实例,我们可以通过node server.js
. 这样做的问题是,在生产服务器中,当黑客入侵我的机器时,他们将能够查看和复制我所有的服务器端源代码。这是一个很大的风险,因为源代码包含知识产权。有没有办法防止它发生?
例如,在 Java 中,代码通常内置在jar
包或.class
文件中,我们只部署构建的文件。当黑客入侵机器时,他们只能看到jar
或.class
文件,它只是字节码,无法理解。
我对我的 Python Flask 服务器也有类似的担忧。
对于一个普通的 NodeJS 实例,我们可以通过node server.js
. 这样做的问题是,在生产服务器中,当黑客入侵我的机器时,他们将能够查看和复制我所有的服务器端源代码。这是一个很大的风险,因为源代码包含知识产权。有没有办法防止它发生?
例如,在 Java 中,代码通常内置在jar
包或.class
文件中,我们只部署构建的文件。当黑客入侵机器时,他们只能看到jar
或.class
文件,它只是字节码,无法理解。
我对我的 Python Flask 服务器也有类似的担忧。
我现在正在寻找 3 种替代方案,并希望听到更多关于这个主题的信息:
http://jxcore.com/home/ - “JXcore 是一个带有附加功能的 Node.JS 分支。” 它还支持在其他平台上运行nodeJS代码
https://jaredallard.me/nexe/ - “编译你的 Node.js 项目。没有源代码。”
http://enclosejs.com/ - “编译你的 Node.js 项目。没有任何资源。”
你知道反编译java类文件有多简单吗?
说真的,您将 jar 放入 IntelliJ IDEA(或几乎任何其他 IDE)中,它会吐出足够可读的反编译代码以进行逆向工程。与解释代码相比,编译代码没有安全优势。
与其尝试“加密”或“隐藏”您的 NodeJS 代码,不如更好地保护服务器?你永远不会超过人们对你的代码进行逆向工程,你最好保护巧克力所在的盒子而不是毒害巧克力。