Please paste the JSON code you would like formatted here.
One-click configuration
Basic configuration
Identifier Name Generator
Identifier prefix
Target operating environment
Adjust protection settings
String settings
String encoding
string encryption coefficient
Filter settings
Lock domain
Preserve method
Retain string
Additional settings
Source Code Map
Source code map address
Source code map filename
Seed ID标识
compress into one line | Compressing line breaks and spaces |
---|---|
Identifier Name Generator |
Use this option to control how identifiers (variable names, function names, etc.) are obfuscated.
Hexadecimal
Short character:
|
Identifier prefix |
This option prefixes all global identifiers with a specific prefix. Use this option when loading multiple files on the same page. It helps avoid conflicts between their global identifiers. Use a different prefix for each file. |
Method variable renaming |
This option may break your code. Enable it only if you know its function.
Use declarations to enable obfuscation of global variable and function names. |
K protection |
This option makes the output code resistant to formatting and renaming variables. If a JavaScript beautifier is attempted on obfuscated code, it will fail to work properly, thereby making it difficult to understand and modify. 需要 compress into one line 设置。 |
Prevent formatting |
The impact on performance for this option is a reduction in running speed by 1.5 times.
Enable code control flow flattening. Control flow flattening is a source code structural transformation that hinders program understanding. Formatting coefficientIn larger codebases, it's advisable to lower this value as a large number of control flow transitions increases code size and slows down its speed (from 0 to 1). |
Flower command code injection |
This option greatly increases the size of the code (up to 200%).
This feature adds random code blocks (i.e., non-executable code) to the obfuscated output, making reverse engineering more difficult. Flower command injection rateYou can use this setting to adjust the probability that this option affects nodes (from 0 to 1). 需要 String encryption 选项支持。 |
String encryption |
Remove string text and place it in a special array. For example, the string "Hello World" will be replaced with a call to a function that retrieves its value at runtime, like: var m = _0xb0c3('0x1'); Please refer to the following for configuring this feature with somewhat flexible options. Rotate String ArrayMove string arrays by a fixed and random position (generated in code obfuscation). This makes it harder to match the order of deleted strings with their original positions. If your original source code is not small, it is recommended to use this option, as auxiliary functions may draw attention. If the source code is large, this option is recommended. Reorder string arrayRandomly sort the string array. String encoding
This option slightly reduces script speed.
All string literals encoded with Base64 or RC4, and inserted with a special function to decode them at runtime. Please note that the RC4 option is approximately 30-35% slower than the Base64 option, but it is harder to retrieve the string. string encryption coefficientYou can use this setting to adjust the probability of inserting string text (ranging from 0 to 1). This setting is very useful in large codebases as repeatedly invoking the string encryption function can slow down code performance. |
Variable encryption |
Convert the confusion object key. For example, after obfuscating the code `var a = {enabled: true};`, the code hides the 'enabled' object key as: `var a = {}; a[_0x2ae0[('0x0')] = true;`. Parameter settings for string encryption required. |
Unicode escape sequence |
Convert the confusion object key. Convert all strings to their Unicode representation. For example, the string "Hello World!" will be converted to "'\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21'". This transformation is easily reversible and greatly increases the size of the codebase's confusion. Not recommended for use in large codebases. |
Disable console output |
Banning the use of `console.log`, `console.info`, `console.error`, and `console.warn` makes debugging more challenging. |
Debug protection |
If the developer tools are opened, the browser can be frozen.
Using this option, it is almost impossible to use the Console tab of developer tools (in Google Chrome and Mozilla Firefox). Debug protection intervalIf this option is selected, a time interval will enforce debug mode on the "Console" tab, making other developer tool functions difficult to use. A special code is inserted into the obfuscated source code for repeated execution. |
Lock domain |
Lock the obfuscated source code so it only runs on specific domains and/or subdomains. It's really hard for those who just copy and paste the source code to run it elsewhere.
multiple domains or subdomains
|
Maintain the name |
Disable identifier generation that matches approved RegExp patterns. For instance, if adding ^bejsoncom, the obfuscator ensures that none of the variables, function names, or function parameters starting with bejson will be disrupted. |
Retain string |
Disable string conversion if the text matches the passed RegExp pattern. For instance, if adding ^bejson *string, the obfuscator will ensure that all strings starting with a certain string won't be encrypted during "string encryption". |
Source Code Map |
Ensure not to upload obfuscated source code with embedded source code images, as it contains original source code.
Source maps can help debug obfuscated JavaScript source code. To debug in production, upload the source map file to a secret location and point the browser there.
Inline source map
Single source map
|
seed |
By default (seed = 0), each time the code is obfuscated, a new result is obtained (i.e., different variable names, different variables inserted into stringArray, etc.). To get reproducible results, set the seed to a specific integer. |
You recently used: