一尘不染

node.js-代码保护?

node.js

我想在下一个项目中使用node.js,但老板不喜欢我们的竞争对手可以读取源代码。

有没有办法保护JavaScript代码?


阅读 402

收藏
2020-07-07

共1个答案

一尘不染

您可以使用NativeExtension for node完成此操作

您将拥有一个boostrap.js为.jse文件添加扩展处理程序的文件

// register extension
require.extensions[".jse"] = function (m) {
 m.exports = MyNativeExtension.decrypt(fs.readFileSync(m.filename));
};

require("YourCode.jse");

YourCode.jse 将是源代码的加密版本(用于解密的密钥不会在纯文本中的任何地方,因为解密过程是在本机扩展中进行的)。

现在,您可以使用NativeExtensions
decrypt函数将源转换回javascript。只需让您的构建过程创建.jse所有文件的加密版本并将其发布给客户即可。他们还需要本机扩展,但是现在您不费吹灰之力就很难修改代码。您甚至可以将本机分机打回家,并检查许可证信息以帮助防止盗版(请注意,这不会阻止盗版,对此没有解决方案)。

2020-07-07