我最近开发了一个具有electron
框架的应用,在阅读了与电子javascript代码相关的安全性问题后,我担心源代码的保护。我的意思是,即使该应用是为生产而构建的,也可以重新生产代码。我的应用程序包含许多关键信息,例如GitHub Private Token
(用于自动更新),JWT Signing Key
(用于API令牌签名验证)等等。我刚刚经历了很多SO张贴,但是没有找到完美的答案,所以解决了这个问题。电子无法对JavaScript代码进行混淆吗?如果有解决方法,请告诉我。在安全相关的电子岗位上,我当时没有找到矿石tl;dr
。我发现了obfuscator的混淆方法,但似乎需要手动混淆。有没有更好的方法来实现它?
Obfuscation
不是您的问题的答案,也无法解决您的问题。您可以通过混淆来使代码变得复杂并且难以对其进行反向工程,但是如果代码包含如此重要的令牌(例如github令牌),您的代码仍然容易受到攻击。有一种方法可以精确保护这些细节。您需要一个本机模块,可以隐藏此类详细信息。关于本机模块here有很好的解释。 TL; DR,所以您必须自己做。仍然对我来说似乎并不完美,但这可以是一种方法。