我即将开始创建基于
Windows的实用程序应用程序来管理本地化的expressjs服务器,该服务器将利用基于Windows的图形应用程序来管理此服务的一些功能
然而,在我开始之前,我想与社区讨论,试图获得一些建议如何正确保护代码,因为它将是节点JS蜜蜂我需要确保它受到保护,我的一些初步在线阅读似乎表明使用电子不是最安全的,看到你说如何处理这个以保持节点JS这些代码用电子保护在我的情况下在Windows环境中
非常感谢任何建议
解决方法
tl; dr你可以而且不值得努力.只需将您的源包装到一个asar文件中,它就可以让大多数人远离它.
长长的:
>在构建应用程序时使用asar选项.
>用丑陋的人混淆代码.
>使用WASM
>语言绑定以从编译格式中获取数据
> Rust的neonjs
> C#的edge-js
> N-API,NAN for C/C++.
否则你的文件是脚本,所有这些步骤只会减慢攻击者的速度(许多防御策略),但它们不会阻止他们访问它们. devTools相当容易打开,人们将能够以某种方式,形状或形式阅读代码.如果有人获得您的混淆代码,则可以很容易地重建正在发生的事情(请参阅此处参考:https://www.youtube.com/watch?v=y6Uzinz3DRU)
如果你想保护自己免受代码操作,有更好的方法来做到这一点.就像Hashing,Context Isolation等一样,电子在这个问题上有一整章.
https://github.com/electron/electron/blob/master/docs/tutorial/security.md