Parcel.js-我可以混淆\混淆构建包中的导入名称吗?

问题描述

我正在使用Parcel构建chrome扩展程序。根据Chrome网上应用店政策(托管Chrome扩展程序),Chrome浏览器扩展程序不得使用混淆处理。
不幸的是,到目前为止,我们无法将关键任务代码移至服务器。并且必须将其保存在扩展代码中,这很容易下载和阅读。
虽然,Parcel会减少代码-仍然可以进行反向工程,尤其是因为Parcel不会破坏导入路径。 现在,我的捆绑文件看起来类似于此(节选):

        is_js: "YVwU","../../../../../../../utility-belt/helpers/dom/is-el-visible": "NBkX","./preformat-label-text": "uVmy","./find-label-element/find-label-element": "PpOy","../../../../../../../utility-belt/helpers/array/has-contents": "gtdY","../../../../../../../utility-belt/helpers/dom/get-text-content-from-el": "SRGb","./input-is-empty": "xrMH","../../edge-cases/raw-inputs-found": "b9fD","../../edge-cases/associated-labels": "Kipw","../../../../../../../utility-belt/helpers/dom/compare-DOM-positions": "lAHL","../../../../../../data/dictionary/BANKS": "CVde","../../../../../../../utility-belt/helpers/dom/DOM-shortcuts": "lN5N",

如您所见-从文件名和路径中,可以通过一些努力推断出每个模块的功能及其哈希名称。从哈希名称中查找并读取其内容
如果这些导入内容被混淆或编码,则将真正有帮助。 有办法实现吗?

解决方法

如果您确实需要这样做并且有时间,可以使用(具有讽刺意味的)反向工程工具-https://github.com/Xmader/retidy

您可以做的是:

使用它来获取应用程序中所有模块的列表,然后使用此模块路径图,您可以简单地遍历包,并用一些随机字符串搜索替换每个路径。该捆绑包仍然可以正常工作。

这只会隐藏您的路径,但对于试图对您的代码进行反向工程的人来说,仍然可能使工作变得困难。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...