Javascript加密混淆

拖拽JavaScript文件 或者 點(diǎn)擊讀取JavaScript文件

                    

混淆加密配置


一鍵配置


基礎(chǔ)配置



標(biāo)識符名稱生成器


標(biāo)識符前綴




目標(biāo)運(yùn)行環(huán)境

調(diào)試保護(hù)設(shè)置




字符串設(shè)置


字符串編碼


字符串加密系數(shù)






過濾設(shè)置

鎖定域名


保留方法


保留字符串


附加設(shè)置

源碼地圖


源碼地圖地址


源碼地圖文件名


標(biāo)識種子ID

JAVASCRIPT代碼混淆工具配置說明


壓縮成一行 將換行符及空格等進(jìn)行壓縮
標(biāo)識符名稱生成器

使用此選項(xiàng)來控制如何混淆標(biāo)識符(變量名,函數(shù)名等)。

十六進(jìn)制
生成使用十六進(jìn)制圖案隨機(jī)標(biāo)識符的名稱(如:0xabc123

短字符:
使用短字符名稱 (如: a, b, c等等)

標(biāo)識符前綴

此選項(xiàng)使所有全局標(biāo)識符具有特定的前綴。

混淆在同一頁面上加載的多個文件時,請使用此選項(xiàng)。此選項(xiàng)有助于避免這些文件的全局標(biāo)識符之間的沖突。為每個文件使用不同的前綴。

方法變量重命名
此選項(xiàng)可能會破壞您的代碼。僅在知道它的功能時啟用它。

使用聲明啟用對全局變量和函數(shù)名稱的混淆。

K保護(hù)

此選項(xiàng)使輸出代碼可抵抗格式設(shè)置和變量重命名。如果嘗試在混淆后的代碼上使用JavaScript美化器,則該代碼將無法正常工作,從而使其難以理解和修改。

需要壓縮成一行設(shè)置。

防止格式化
此選項(xiàng)對性能的影響最大為運(yùn)行速度降低1.5倍。

啟用代碼控制流平整??刂屏鞅馄交窃创a的結(jié)構(gòu)轉(zhuǎn)換,它阻礙了程序的理解。

格式化系數(shù)


在較大的代碼庫中,建議降低此值,因?yàn)榇罅康目刂屏鬓D(zhuǎn)換會增加代碼的大小并減慢其速度(從0到1)。

花指令代碼注入
此選項(xiàng)極大地增加了混淆代碼的大?。ㄗ疃?00%)。

此功能將混淆代碼的隨機(jī)塊(即,將不執(zhí)行的代碼)添加到混淆后的輸出中,從而更難進(jìn)行反向工程。

花指令注入率


您可以使用此設(shè)置來調(diào)整該選項(xiàng)影響節(jié)點(diǎn)的概率(從0到1)。

需要字符串加密選項(xiàng)支持。

字符串加密

刪除字符串文字并將其放置在特殊數(shù)組中。例如,字符串“ Hello World”中的字符串var m = "Hello World";將替換為對某個函數(shù)的調(diào)用,該函數(shù)將在運(yùn)行時檢索其值,例如:var m = _0xb0c3('0x1'); 請參閱以下有關(guān)如何配置此功能或多或少具有彈性的選項(xiàng)。

旋轉(zhuǎn)字符串?dāng)?shù)組


將字符串?dāng)?shù)組移動一個固定且隨機(jī)的位置(在代碼混淆中生成)。這使得將刪除的字符串的順序與其原始位置匹配變得更加困難。 如果您的原始源代碼不小,則建議使用此選項(xiàng),因?yàn)檩o助功能會引起注意。

如果源代碼不小,建議使用此選項(xiàng)。

重排字符串?dāng)?shù)組


隨機(jī)排序字符串?dāng)?shù)組。

字符串編碼


此選項(xiàng)會稍微降低腳本速度。

使用Base64或RC4 編碼的所有字符串文字,并插入一個特殊的函數(shù),該函數(shù)用于在運(yùn)行時對其進(jìn)行解碼。

請注意,RC4選項(xiàng)比??Base64選項(xiàng)慢大約30-35%,但是更難找回字符串。

字符串加密系數(shù)


您可以使用此設(shè)置來調(diào)整將字符串文字插入的可能性(從0到1)。

此設(shè)置在大型代碼庫中很有用,因?yàn)榉磸?fù)調(diào)用該字符串加密函數(shù)會降低代碼速度。

變量加密

轉(zhuǎn)換混淆對象鍵。

例如,將此代碼var a = {enabled: true};混淆后,此代碼將隱藏enabled對象鍵:var a = {}; a[_0x2ae0[('0x0')] = true;。

需要使用字符串加密的參數(shù)設(shè)置

Unicode轉(zhuǎn)義序列

轉(zhuǎn)換混淆對象鍵。

將所有字符串轉(zhuǎn)換為它們的unicode表示形式。例如,字符串"Hello World!"將被轉(zhuǎn)換為"'\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21"。

此轉(zhuǎn)換非常容易還原,并且將大大增加混淆的代碼大小。不建議在較大的代碼庫中使用。

禁用控制臺輸出

禁止使用console.log,console.info,console.error和console.warn,這使得調(diào)試器的使用更加困難。

調(diào)試保護(hù)
如果打開開發(fā)人員工具,則可以凍結(jié)瀏覽器。

使用該選項(xiàng),幾乎不可能使用開發(fā)人員工具的控制臺選項(xiàng)卡(在Google Chrome和Mozilla Firefox上)。

調(diào)試保護(hù)間隔


如果選中該選項(xiàng),則會使用一個時間間隔在“ 控制臺”選項(xiàng)卡上強(qiáng)制使用調(diào)試模式 ,從而使開發(fā)人員工具的其他功能難以使用。

在經(jīng)過混淆的源代碼中會插入一個反復(fù)調(diào)用的特殊代碼進(jìn)行運(yùn)作。

鎖定域名

鎖定混淆的源代碼,使其僅在特定的域和/或子域上運(yùn)行。對于僅復(fù)制并粘貼源代碼并在其他地方運(yùn)行的人來說,這真的很難。

多個域名或者子域名
可以將代碼鎖定到多個域或子域。例如,要對其進(jìn)行鎖定以使代碼僅在www.ctyr.cn上運(yùn)行,請使用add www.ctyr.cn,使其可在bejson.com的任何子域上使用.bejson.com。

保留名稱

禁用混淆和標(biāo)識符的生成,這些標(biāo)識符與通過的RegExp(正則)模式匹配。

例如,如果添加^bejsoncom,混淆器將確保 不會破壞以bejson開頭的所有變量,函數(shù)名稱和函數(shù)參數(shù)。

保留字符串

禁用字符串文字的轉(zhuǎn)換,該文字與通過的RegExp(正則)模式匹配。

例如,如果添加^bejson *string,混淆器將確保所有以某個字符串開頭的字符串 都不會在“字符串加密”中進(jìn)行加密處理。

源碼地圖
確保不要上傳嵌入了嵌入式內(nèi)嵌源代碼圖的混淆后的源代碼,因?yàn)樗荚创a。

源映射可以幫助您調(diào)試混淆的Java Script源代碼。如果要在生產(chǎn)中進(jìn)行調(diào)試,可以將單獨(dú)的源映射文件上載到秘密位置,然后將瀏覽器指向該位置。

內(nèi)聯(lián)源地圖
這會將源代碼的源映射嵌入到混淆代碼的結(jié)果中。如果只想在計(jì)算機(jī)上進(jìn)行本地調(diào)試,則很有用。

單獨(dú)的源地圖
這將與源映射一起生成一個單獨(dú)的文件。這對于調(diào)試生產(chǎn)中的代碼很有用,因?yàn)檫@使您可以將源映射上載到服務(wù)器上的秘密位置,然后指向?yàn)g覽器使用它。
使用“ 源地圖基本URL”和“ 源地圖文件名”來自定義sourceMappingURL將添加到混淆代碼末尾的屬性。
舉例來說,如果你的設(shè)置基本URL來 "http://bejson.com:9000"和文件名來 "tool",你會得到://# sourceMappingURL=http://bejson.com:9000/tool.js.map。附加到混淆代碼的末尾。

種子

默認(rèn)情況下(seed = 0),每次對代碼進(jìn)行混淆時,都會得到一個新的結(jié)果(即:不同的變量名,插入到中的不同變量 stringArray等)。如果要獲得可重復(fù)的結(jié)果,請將設(shè)置seed為特定的整數(shù)。

您最近使用了:

收藏 菜單 QQ