Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有可能完全混淆Chrome扩展中使用的javascript_Javascript_Google Chrome_Google Chrome Extension - Fatal编程技术网

是否有可能完全混淆Chrome扩展中使用的javascript

是否有可能完全混淆Chrome扩展中使用的javascript,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我在Chrome扩展中有一些敏感的Javascript,我不想让客户端看到。是否可以通过混淆来保护此代码。我并不是要“设置一些障碍”,我要的是100%的完全安全性,无论谁使用Chrome扩展都无法理解Javascript 因为如果不是这样的话,只需要一个人来解开代码,我就会有一场灾难。那么,这有可能吗?没有。 即使是用汇编之类的语言编写的程序,也没有“100%完全安全性”。使用NPAPI,您可以更自然地使用它,但没有一种方法可以获得100%的安全性 因为如果不是这样的话,只需要一个人来解开代码,

我在Chrome扩展中有一些敏感的Javascript,我不想让客户端看到。是否可以通过混淆来保护此代码。我并不是要“设置一些障碍”,我要的是100%的完全安全性,无论谁使用Chrome扩展都无法理解Javascript

因为如果不是这样的话,只需要一个人来解开代码,我就会有一场灾难。那么,这有可能吗?

没有。 即使是用汇编之类的语言编写的程序,也没有“100%完全安全性”。使用NPAPI,您可以更自然地使用它,但没有一种方法可以获得100%的安全性

因为如果不是这样的话,只需要一个人来解开代码,我就会有一场灾难

然后找到另一个解决方案。模糊处理中没有100%的完全安全性。模糊处理可以减慢逆向工程的速度,但不能阻止逆向工程。当您的代码对于浏览器的javascript引擎来说是可以理解的时候,对于一个有足够决心的人来说也是可以理解的


当你描述你想要隐藏什么,为什么需要它,为什么需要隐藏它时,我们可能会想出一个更好的解决方案。

不,这是不可能的

机器上运行的每一位代码都可以不被混淆,甚至是*.exe文件!由于使用了JavaScript,这要简单得多


您应该将应用程序的敏感部分移动到外部资源(例如服务器)。永远不要把敏感的逻辑放在客户端

,您永远无法保护客户端javascript。对于一个有决心的黑客来说,混淆只是一个小小的障碍。这不是任何形式的安全,它甚至不接近你要求的“100%完全安全”。使用基于客户端的代码,尤其是基于客户端的javascript代码,您根本无法获得这种类型的安全性


如果您希望您的算法或实现是安全的,这样代码就看不见了,那么您必须在服务器上的某个地方实现代码的该部分,您可以在该服务器上保护和控制对代码的访问。然后,客户端上的扩展可以要求服务器使用安全代码为其执行任务。

永远都不是正确的anwser。“有可能完全混淆Chrome扩展中使用的javascript吗?”-不,-1对我来说也是答案,它没有添加任何其他人以前没有说过的内容。@Philipp-我第二段中的建议根本不包含在你的答案中。如果已经有一个答案包含了我认为与清晰解释相关的所有部分,我就不会写一个答案(为什么要浪费我的时间)。没有,所以我提供了一个。根据你的逻辑,我不清楚你的答案补充了什么,阿曼的答案还没有。这些信息在ComFreak的帖子中,三个答案在同一分钟发布,所以他们彼此都不了解。我能理解人们在其他人之后一两分钟以同样的内容发布答案,因为他们是在同一时间写的。但是在其他内容相同的人之后一小时发布,这只是多余的@Philipp是对的,只是ComFreek写了两个E;)天哪,人们。一个好的答案既有所有相关的信息,又有一个清晰的解释。我仍然看不到符合这一标准的其他答案。一个好的答案不一定要在问题提出后的前5分钟内出现,最好的答案可能确实是以前说过的话的组合,但组合在一起并呈现在一个尚未完成的单一答案中。你们这些人为什么不把精力花在改进自己的答案上,而不是对我的答案泼冷水呢。您有一个编辑按钮-您可以使用它。+1用于提及NPAPI!这肯定比任何JavaScript代码都更安全。@ComFreek-好吧,NPAPI可以通过链接到本机代码来实现更好的隐蔽性,但它也不符合OP要求的100%安全栏。坚定的黑客也可以对本机代码进行反向工程。@jfriend00是的,正如我所说,没有一种方法可以获得100%的安全性。本机代码只会让它比JavaScript更加晦涩难懂。这还不接近100%@jfriend00,我还没说过。但它肯定比JS(字节码)更晦涩难懂。如果您甚至不信任本机代码,那么您还信任谁?