土薯工具 Toolshu.com 登錄 用戶注冊

JavaScript 混淆加密

  • 複製粘貼 JavaScript 代碼
  • 上傳 JavaScript 文件
  • 結果輸出
點擊上傳 JavaScript 文件,或將文件拖拽到此處

預設配置

基礎配置


防止格式化係數:

花指令注入係數:

混淆對象屬性名模式:

保留的變量名:

標識符名稱生成規則:

* 標識符:指代碼中的變量名、函數名等

標識符前綴:

標識符字典:

字符串設置

字符串數組化比率:

字符串數組索引類型:

轉換字符串數組調用比率:

字符串數組封裝數量:

字符串數組封裝類型:

字符串數組封裝參數最大數量:

字符串數組編碼類型:

拆分字符串的塊長度:

強制轉換字符串:

保留的字符串:

附加配置

調試保護間隔 (ms):

目標運行環境:

隨機種子:

白名單域名:

非白名單域名自動跳轉 URL:

Source Map 模式:

Source Map 基礎 URL:

Source Map 文件名:

使用說明
配置項 說明 備註
壓縮成一行 將混淆後的代碼壓縮爲一行,減少可讀性,增加調試難度。 如果需要進行調試,可以禁用。
簡化代碼結構 通過移除不必要的結構和優化代碼來簡化代碼。 在複雜腳本中禁用可能導致代碼錯誤。
防止格式化 添加反格式化措施,使代碼難以美化或重新格式化。 需要設置 防止格式化係數(默認:0.75)。
花指令注入 注入死代碼(不可達代碼)以迷惑逆向工程師。 需要設置 花指令注入係數(默認:0.4)。
混淆對象屬性名 重命名對象屬性名,使代碼更難理解。 使用 安全 模式以避免代碼錯誤。不安全 模式可能導致運行時錯誤。
混淆全局變量和函數名 重命名全局變量和函數名,隱藏其用途。 如果全局變量被外部引用,可能會破壞代碼。
保留的變量名 指定不應混淆的變量名(例如 ^someVariable 或正則表達式)。 適用於保留關鍵變量名。
標識符名稱生成規則 設置混淆後變量名的生成規則(例如十六進制、字典模式、簡化模式)。 十六進制:生成使用十六進制圖案隨機標識符的名稱(如:0xabc123),簡化模式:使用短字符名稱 (如: a, b, c等等)。
標識符前綴 爲所有混淆後的標識符添加前綴(例如 a_)。 可選。適用於多文件項目以避免衝突。
標識符字典 提供混淆後標識符的自定義名稱列表(每行一個)。 僅在 標識符名稱生成規則 中選擇 字典模式 時生效。
字符串數組化 將字符串提取到數組中並用引用替換。 默認啓用。如果性能是關鍵,可以禁用。
字符串數組化比率 設置字符串被添加到數組中的概率(0 到 1)。 默認:0.75。較低的值會降低混淆強度但提高性能。
字符串數組旋轉 隨機偏移字符串數組以隱藏字符串順序。 默認啓用。禁用可提高性能。
字符串數組亂序 隨機打亂字符串數組以增加重構難度。 默認啓用。禁用可提高性能。
字符串數組索引偏移 爲字符串數組索引添加隨機偏移以隱藏訪問模式。 默認啓用。禁用可提高性能。
字符串數組索引類型 設置字符串數組索引的格式(例如十六進制數或字符串)。 默認:十六進制數。選擇 十六進制數值字符串 可增強混淆強度。
轉換字符串數組調用 轉換對字符串數組的調用以增加檢測難度。 需要設置 轉換字符串數組調用比率(默認:0.5)。
字符串數組封裝數量 設置字符串數組的封裝層數。 默認:1。增加層數可增強混淆強度但降低性能。
字符串數組封裝類型 設置封裝類型(例如 變量函數)。 選擇 函數 可增強混淆強度但降低性能。
字符串數組封裝參數最大數量 設置字符串數組封裝的最大參數數量。 默認:2。增加數量可增強混淆強度但降低性能。
字符串數組鏈式調用 啓用字符串數組封裝之間的鏈式調用。 默認啓用。禁用可提高性能。
字符串數組編碼類型 使用 base64rc4 編碼字符串數組值。 選擇 rc4 可增強混淆強度但降低性能。
拆分字符串 將字符串拆分爲指定長度的塊以隱藏內容。 設置 拆分字符串的塊長度 控制塊大小(默認:10)。
使用 Unicode 轉義序列 將字符串轉換爲 Unicode 轉義序列以隱藏內容。 會顯著增加代碼大小。僅適用於小型腳本。
強制轉換字符串 強制轉換特定字符串(例如 ^some *string *or RegExp)。 適用於針對特定字符串進行混淆。
保留的字符串 指定不應轉換的字符串(例如 ^some *string *or RegExp)。 適用於保留關鍵字符串。
數字轉換爲表達式 將數字轉換爲算術表達式以隱藏其值。 可能增加代碼大小並降低性能。
轉換 Object 的 Key 值 混淆對象鍵值以增加代碼理解難度。 如果對象鍵值被外部引用,可能會破壞代碼。
禁用控制檯輸出 在混淆後的代碼中禁用 console.log 等函數。 適用於生產環境。
自我防禦 如果代碼被格式化或修改,使其無法運行。 強制啓用 壓縮成一行 模式。使用時需謹慎。
調試保護 通過無限循環或崩潰阻止調試。 設置 調試保護間隔 控制保護頻率(建議設置爲2000~4000毫秒)。
忽略 Import 防止混淆 import 語句。 適用於保留模塊導入。
目標運行環境 設置混淆代碼的目標環境(例如瀏覽器、Node.js)。 選擇 瀏覽器(不使用 eval 函數) 以避免使用 eval
隨機種子 設置隨機種子以生成可重複的混淆結果。 -
白名單域名 限制代碼僅在指定域名下運行(例如 www.example.com)。 可指定多個域名,每行一個。
非白名單域名自動跳轉 URL 指定在非白名單域名下運行時跳轉的 URL。 默認:about:blank
啓用 Source Map 生成 Source Map 以調試混淆後的代碼。 適用於調試,但可能暴露原始代碼結構。
Source Map 模式 設置 Source Map 生成模式(例如內聯或分離文件)。
內聯——在混淆代碼的末尾添加source map;
分離——使用獨立的source Map文件 //# sourceMappingUrl=file.js.map。
選擇 內聯 簡化操作,或選擇 分離 用於生產環境。
Source Map 基礎 URL 設置 Source Map 文件的基礎 URL(例如 http://localhost:3000)。 Source Map 模式分離 時必須設置。
Source Map 文件名 設置 Source Map 文件的名稱(例如 example)。 Source Map 模式分離 時必須設置。
評論區