All Projects → tomasz-oponowicz → Grunt Javascript Obfuscator

tomasz-oponowicz / Grunt Javascript Obfuscator

Licence: mit
Obfuscates JavaScript files using amazing javascript-obfuscator.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Grunt Javascript Obfuscator

Hatcloud
discontinued
Stars: ✭ 418 (+1129.41%)
Mutual labels:  protection
Grunt Responsive Images
Produce images at different sizes for responsive websites.
Stars: ✭ 726 (+2035.29%)
Mutual labels:  grunt
Kirby Sri
Subresource integrity hashing & cache-busting static assets for Kirby
Stars: ✭ 9 (-73.53%)
Mutual labels:  protection
Hvmi
Hypervisor Memory Introspection Core Library
Stars: ✭ 438 (+1188.24%)
Mutual labels:  protection
Securityworker
The best javascript code protection solution ever.
Stars: ✭ 626 (+1741.18%)
Mutual labels:  protection
Ansible Ssh Hardening
This Ansible role provides numerous security-related ssh configurations, providing all-round base protection.
Stars: ✭ 746 (+2094.12%)
Mutual labels:  protection
Pyconcrete
Protect your python script, encrypt it as .pye and decrypt when import it
Stars: ✭ 405 (+1091.18%)
Mutual labels:  protection
Docker Compose Nodejs Examples
Finally some real world examples on getting started with Docker Compose and Nodejs
Stars: ✭ 944 (+2676.47%)
Mutual labels:  grunt
Hblock
Improve your security and privacy by blocking ads, tracking and malware domains.
Stars: ✭ 724 (+2029.41%)
Mutual labels:  protection
Flow theme
OXID Flow Responsive Theme
Stars: ✭ 24 (-29.41%)
Mutual labels:  grunt
Pplkiller
Protected Processes Light Killer
Stars: ✭ 453 (+1232.35%)
Mutual labels:  protection
Nginx Module Sysguard
Nginx sysguard module
Stars: ✭ 568 (+1570.59%)
Mutual labels:  protection
Instantbootstrap
Instant Bootstrap is a quick and easy way to start creating bootstrap themes using LESS, SASS, GRUNT, and BOWER.
Stars: ✭ 5 (-85.29%)
Mutual labels:  grunt
Scriptsafe
a browser extension to bring security and privacy to chrome, firefox, and opera
Stars: ✭ 434 (+1176.47%)
Mutual labels:  protection
Grunt Csswring
DEPRECATED. Minify CSS files using PostCSS-based CSSWring
Stars: ✭ 12 (-64.71%)
Mutual labels:  grunt
Assemble
Community
Stars: ✭ 3,995 (+11650%)
Mutual labels:  grunt
Javascript Obfuscator
A powerful obfuscator for JavaScript and Node.js
Stars: ✭ 8,204 (+24029.41%)
Mutual labels:  protection
Tic Tac
Client not paid ? This is the solution of your problem
Stars: ✭ 29 (-14.71%)
Mutual labels:  protection
Hive Framework
A website development framework built with Sass, and incorporating jQuery UI.
Stars: ✭ 14 (-58.82%)
Mutual labels:  grunt
Opml2indesign
The XSLT which convert an OPML file to InDesign importable XML
Stars: ✭ 6 (-82.35%)
Mutual labels:  grunt

grunt-javascript-obfuscator

Build Status

Obfuscates JavaScript files using amazing javascript-obfuscator.

Conceal your logic and hide any data contained in the code. Please read documentation how to protect your code effectively. Basic protection:

Original code:

(function(){
    var variable = 'abc';
    console.log(variable);
})();

Protected code:

var _0xabf1 = [
    '\x61\x62\x63',
    '\x6c\x6f\x67'
];
(function() {
    var _0xe6fab6 = _0xabf1[0x0];
    console[_0xabf1[0x1]](_0xe6fab6);
}());

Special thanks for @sanex3339 for his outstanding javascript-obfuscator library.

Getting Started

This plugin requires Grunt >=0.4.5

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin and javascript-obfuscator with this command:

npm install grunt-javascript-obfuscator javascript-obfuscator --save-dev

...javascript-obfuscator is defined as a peer dependency. In other words you can experiment with every version above 0.7.2.

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-javascript-obfuscator');

The "javascript_obfuscator" task

Overview

In your project's Gruntfile, add a section named javascript_obfuscator to the data object passed into grunt.initConfig().

grunt.initConfig({
  javascript_obfuscator: {
    options: {
      // Task-specific options go here.
    },
    your_target: {
      // Target-specific file lists and/or options go here.
    },
  },
});

Options

Options are passed directly to javascript-obfuscator. Please visit documentation of the project for a complete list of options.

Usage Examples

Default Options

In this example, the default options are used to obfuscate scripts:

grunt.initConfig({
  javascript_obfuscator: {
    options: {
      /* Default options */
    },
    main: {
      files: {
        'dist/obfuscated.js': ['src/module1.js', 'src/module2.js']
      }
    }
  },
});

Custom Options

In this example, custom options are used to obfuscate scripts. debugProtection makes it almost impossible to use the console tab of the Developer Tools:

grunt.initConfig({
  javascript_obfuscator: {
    options: {
      debugProtection: true,
      debugProtectionInterval: true
    },
    main: {
      files: {
        'dist/obfuscated.js': ['src/module1.js', 'src/module2.js']
      }
    }
  },
});

Obfuscate and overwrite

In this example, source files are obfuscated and overwritten:

grunt.initConfig({
  javascript_obfuscator: {
    options: {
      /* Default options */
    },
    main: {
      src: ['src/module1.js', 'src/module2.js']
    }
  },
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

  • 2019-08-15 / v1.2.0 / Added source map support.
  • 2016-12-23 / v1.1.0 / Obfuscate and overwrite files without destination.
  • 2016-11-11 / v1.0.4 / Updated README.
  • 2016-11-09 / v1.0.3 / Updated README.
  • 2016-11-09 / v1.0.2 / Fixed examples.
  • 2016-11-09 / v1.0.1 / Relaxed peer dependencies.
  • 2016-11-08 / v1.0.0 / First release.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].