像 js(node)、 Python 作为服务端部署到生产环境,怎么保证源码的安全性的?

114 天前
 grayfox

最近在学 node ,写完以后部署到生产环境,如果不经过像 java 那样编译,那么只要有登陆到生产服务器的权限,就直接拿到源码吗?不太懂这块,主流做法是怎么做的?

8086 次点击
所在节点    程序员
98 条回复
lambdaq
113 天前
这个问题很简单啊。你程序跑起来之后,把 .py .pyc 文件全删了就行。
X90
113 天前
只要你的源码够烂,依赖环境够乱。就算源码丢了别人也跑不起来。
horizon
113 天前
直接开源,从源头解决问题
codingmiao
113 天前
其实 java 或者其它编译后的语言也并不安全,现在所谓的 jar 包保密方案,也只是给文件加个密,然后 Java Agent 启动时解密,但是随便丢个 arthas 之类的工具上去,从内存中拿字节码反编译出来根本防不住。

所以哪有什么绝对安全的方案,只要你的软件价值小于别人攻破你的成本就行了
deplives
113 天前
能直接登到生产服务器上的,是啥都防不住
cutchop
113 天前
我选择直接开源
iorilu
113 天前
@BreadKiller 都公司了, 更应该用商务法律得方式解决, 你拷贝我抓到罚钱就是, 怎么可能禁止拷贝
dododada
113 天前
其实并没有太好的方法,就是混淆加固,但是 python 的加固效果一般,除非你们找个算法变种的论文自己做一遍,上面 24 楼的兄弟说的就是一种办法
uni
113 天前
其实我很好奇现在有了大模型帮读代码之后混淆还有用吗
iorilu
113 天前
@dododada 公司之间得破解没啥意义, 说实话, 就算能破解, 你公司敢直接服务器用破解过的吗, 别人查到直接告你, 罚巨款
EndlessMemory
113 天前
js 有混淆
julyclyde
113 天前
@yb2313 容器是一个神奇的词么,连加密功能都有?
(虽然后来确实有了,但我相信你说的肯定不是那个)
lyxxxh2
113 天前
python:nuitka 或者加密源码
nodejs:
在 Node.js 中,将项目打包成二进制文件的常用工具包括 pkg 和 nexe 。这些工具可以将你的 Node.js 应用程序连同其依赖项一起打包成一个可执行文件,方便在目标系统上分发和运行。

1. pkg
pkg 是最常用的工具之一,用于将 Node.js 项目打包成可执行文件。它支持 Windows 、macOS 和 Linux 平台。
... --- gpt
hansnow
113 天前
跑起来之后把硬盘上的代码删了
iyaozhen
113 天前
私有化部署并不代表要交代码呀,而且别人服务器有漏洞,被盗走了也不好

确实很麻烦 所以我们喜欢用 go
daysv
113 天前
编译混淆一下。 再写个 wasm 之类的做哈希校验?
wjx0912
113 天前
js:bytenode
python:pyarmor
yb2313
113 天前
@julyclyde 不懂, 我只是凭直觉认为容器应该有这功能, 因为这非常 cooool🎉
zagfai
113 天前
@hansnow 你以为内存就提取不出来?[doge]
ENNRIaaa
113 天前
问题的关键是保证源码安全?不应该是把服务器权限做好吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1067967

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX