architecture - 在 Electron 框架中制作的应用程序不安全?

标签 architecture electron

我是 Electron 的初学者,我在 HTML/javascript 和窗口桌面应用程序开发(win-forms 和 WPF)方面拥有丰富的经验。我非常喜欢 js/HTML5,我希望有一天有人能想出一个框架,让我可以编写 js/HTML5 来创建桌面应用程序。现在 Electron 就在这里。

根据我的阅读,Atom 是一款使用 Electron 框架制作的很棒的产品。我听说它很好,因为它是 HACKABLE。好的!没问题!
这是否意味着使用 Electron 框架制作的桌面应用程序不安全,任何人都可以对其进行解码并使用它来对付我的应用程序的用户。

我问这个是因为我将开始开发桌面应用程序并考虑将 Electron 作为开发选项。

此外,应用程序的打包将在所有三个平台上运行吗? iOS、Win 和 Linux?我知道我必须处理我导入的模块,这些模块可以是特定于平台的(例如“自动更新程序”)

最佳答案

Electron 应用程序的安全性不亚于托管在个人计算机上的任何其他应用程序。如果不法分子获得了对您计算机的访问权,那么您的应用程序是使用 Electron、WPF 还是任何其他技术都无关紧要。他们可以找到一种方法来针对用户使用该应用程序。此外,大多数代码都可以进行逆向工程并利用漏洞。我认为你不必担心这个。如果是像 GitHub(谁制造它)这样不安全的公司,微软和 Slack 就会避开它。

话虽如此,如果您想尝试对用户隐藏信息,Electron 源代码更容易查看,因为它不是二进制形式。例如,您可以进入基于 Electron 构建的 Visual Studio Code 的 app 文件夹并查看/操作源代码。我不确定许可证是否允许,但你可以做到。有一些方法可以缓解这种情况。您可以混淆 JavaScript 并将其放入 ASAR 等。

我不确定我是否完全理解你的最后一个问题。 Electron 确实可以在 Windows、Mac(OSX 不是 iOS)和 Linux 上运行。假设您拥有正确的模块,则可以在所有三个上下载并执行一个包。至于安装,松鼠似乎是一个受欢迎的选择。您将需要为每个平台进行按摩。查看 Visual Studio Code 如何为每个平台执行此操作,我建议您效仿。

关于architecture - 在 Electron 框架中制作的应用程序不安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31336402/

相关文章:

model-view-controller - 为什么 MVC 如此受欢迎?

javascript - 构建 Electron 应用程序是否需要 NodeJS?

node.js - 在 nodejs child_process 中将 flask 应用程序作为可执行文件执行

typescript - 使用自定义 main.js 文件运行 Electron 应用程序。 Electron 宁愿启动默认的 main.js 文件

java - 设计多模块 Java EE 应用程序

java - 适合有抱负的 Java 技术架构师的好网站

python - 用 Python 构建一个最小的插件架构

ruby-on-rails - 是否有任何示例 Rails 应用程序将业务逻辑保存在与 ActiveRecord 不同的类中?

mysql - Electron 和 Node.js MySQL 如何在错误之前编写 console.log?

electron - 在其他端口上运行Electron UI