关于 NodeJs 源码保护
发布于 7 天前 作者 somax 311 次浏览 来自 分享

先说一下背景: 不同于大多数互联网公司,我们的软件一般不会部署在我们能够掌控的机房内,大多跟随不同的项目部署到客户的机房中。

我们最近在思考,希望找到一种方案可以保护我们的源码,至少增加盗用的难度。

目前的思路除了用核心模块用 C 或者 Java 写以外,还有一种方案就是使用 crypto 加密源码,运行时再解密。虽然解密后在内存中依然可以获得源码,但至少在复制分发的过程中,不能轻易的看到源码。倾向于这种方案是因为我们 JS 开发人员相对比较多。

花了两天写了个模块:https://www.npmjs.com/package/extension-jse 供大家讨论。各位看看这个方案是否可行,也许解码部分可以用 C 实现,不知道有没有必要。

5 回复

先收藏,稍后试试

来自酷炫的 CNodeMD

难道你解密的密钥不是用js写在源文件里面的?

@zsea 用环境变量

@somax 能看到你代码了,还看不到环境变量吗

来自酷炫的 CNodeMD

@merrynode 你说的没错,这是我能想到的最好办法了。通常数据库连接密码都是配置在环境变量中,有没有其他更好的方案呢? 我们当前考量是增加一些盗用成本,至少是在介质传递过程中过滤掉一点风险,但也不希望投入过大的成本去做加密这件事。

回到顶部