gpt4 book ai didi

node.js - ElectronJS 代码保护 2018

转载 作者:IT老高 更新时间:2023-10-28 23:19:31 25 4
gpt4 key购买 nike

我即将开始创建基于 Windows 的实用程序应用程序来管理本地化 expressjs 服务器,该服务器将利用基于 Windows 的图形应用程序来管理此服务的一些功能

然而,在我开始之前,我想与社区交谈,以尝试获得一些建议关于如何正确保护代码的建议,因为它都是 Node JS 蜜蜂,我需要确保它受到保护以及我的一些初步阅读网上似乎表明使用 Electron 不是最安全的,看到有人说你们如何处理这个以保持 Node JS 这些代码受 Electron 保护,在我的情况下在 windows 环境中

非常感谢任何建议

最佳答案

tl;dr 你可以,但不值得努力。只需将您的源代码打包到 asar 文件中,它就可以让大多数人远离它。

长答案:

  • 在构建应用时使用 asar 选项。
  • 使用 uglifier 混淆代码。
  • 使用 WASM
  • 语言绑定(bind),用于从已编译格式中获取数据
    • 用于 Rust 的 neonjs
    • 用于 C# 的 edge-js
    • N-API,用于 C/C++ 的 NAN

否则,您的文件是脚本,所有这些步骤只会减慢攻击者的速度(许多防御策略),但不会阻止他们访问它们。 devTools 相当容易打开,人们将能够以某种方式、形状或形式阅读代码。如果有人得到了你的混淆代码,很容易重建正在发生的事情(参见此处以获取引用:https://www.youtube.com/watch?v=y6Uzinz3DRU)

如果你想保护自己免受代码操纵,有更好的方法来做到这一点,比如散列、上下文隔离等。Electron 有一整章讨论这个问题。

https://github.com/electron/electron/blob/master/docs/tutorial/security.md

小幅更新(2020 年):

几周前我看到了这个库,并认为它会展示一种很好的方式来进一步混淆代码以防止被外部各方阅读

https://github.com/OsamaAbbas/bytenode

基本思路是将JS编译成V8的字节码。这对 Electron 非常有效,而且绝对不是每个人都能克服的障碍。 但是,这不会保护您的代码不被转回可读的 JS。这只是增加难度的另一层保护。

关于node.js - ElectronJS 代码保护 2018,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50033184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com