Javascript加密混淆

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

                    

混淆加密配置


一鍵配置


基礎配置



標識符名稱(chēng)生成器


標識符前綴




目標運行環(huán)境

調試保護設置




字符串設置


字符串編碼


字符串加密系數






過(guò)濾設置

鎖定域名


保留方法


保留字符串


附加設置

源碼地圖


源碼地圖地址


源碼地圖文件名


標識種子ID

JAVASCRIPT代碼混淆工具配置說(shuō)明


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

使用此選項來(lái)控制如何混淆標識符(變量名,函數名等)。

十六進(jìn)制
生成使用十六進(jìn)制圖案隨機標識符的名稱(chēng)(如:0xabc123

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

標識符前綴

此選項使所有全局標識符具有特定的前綴。

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

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

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

K保護

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

需要壓縮成一行設置。

防止格式化
此選項對性能的影響最大為運行速度降低1.5倍。

啟用代碼控制流平整??刂屏鞅馄交窃创a的結構轉換,它阻礙了程序的理解。

格式化系數


在較大的代碼庫中,建議降低此值,因為大量的控制流轉換會(huì )增加代碼的大小并減慢其速度(從0到1)。

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

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

花指令注入率


您可以使用此設置來(lái)調整該選項影響節點(diǎn)的概率(從0到1)。

需要字符串加密選項支持。

字符串加密

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

旋轉字符串數組


將字符串數組移動(dòng)一個(gè)固定且隨機的位置(在代碼混淆中生成)。這使得將刪除的字符串的順序與其原始位置匹配變得更加困難。 如果您的原始源代碼不小,則建議使用此選項,因為輔助功能會(huì )引起注意。

如果源代碼不小,建議使用此選項。

重排字符串數組


隨機排序字符串數組。

字符串編碼


此選項會(huì )稍微降低腳本速度。

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

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

字符串加密系數


您可以使用此設置來(lái)調整將字符串文字插入的可能性(從0到1)。

此設置在大型代碼庫中很有用,因為反復調用該字符串加密函數會(huì )降低代碼速度。

變量加密

轉換混淆對象鍵。

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

需要使用字符串加密的參數設置

Unicode轉義序列

轉換混淆對象鍵。

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

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

禁用控制臺輸出

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

調試保護
如果打開(kāi)開(kāi)發(fā)人員工具,則可以?xún)鼋Y瀏覽器。

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

調試保護間隔


如果選中該選項,則會(huì )使用一個(gè)時(shí)間間隔在“ 控制臺”選項卡上強制使用調試模式 ,從而使開(kāi)發(fā)人員工具的其他功能難以使用。

在經(jīng)過(guò)混淆的源代碼中會(huì )插入一個(gè)反復調用的特殊代碼進(jìn)行運作。

鎖定域名

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

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

保留名稱(chēng)

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

例如,如果添加^(guān)bejsoncom,混淆器將確保 不會(huì )破壞以bejson開(kāi)頭的所有變量,函數名稱(chēng)和函數參數。

保留字符串

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

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

源碼地圖
確保不要上傳嵌入了嵌入式內嵌源代碼圖的混淆后的源代碼,因為它包含原始源代碼。

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

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

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

種子

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

您最近使用了:

收藏 菜單 QQ