Skip to content

Releases: msgaxzzz/simple-javascript-obf

v1.1.1

18 Jan 06:38

Choose a tag to compare

Added

  • Local web UI (web/ + webstart.js) for uploading/pasting JavaScript and downloading obfuscated output.
  • CLI flags to control string encoding for object keys, JSX attribute values, and template literal static chunks.
  • --cff-downlevel option to allow control-flow flattening to downlevel let/const to var.
  • Output controls: --no-minify to skip Terser and --beautify to format minified output.

Changed

  • Updated README and interactive bin/obf.sh prompts to expose the new options.
  • Refactored string encoding logic/runtime to reduce obvious literals while keeping behavior the same.
  • Refreshed generated test fixtures to match the new outputs.

Fixed

  • Terser mangling now respects the rename toggle when minifying.

v0.1.3

17 Jan 11:31

Choose a tag to compare

v0.1.3

  • Added a ChaCha20-based CSPRNG and stream-cipher utilities for stronger randomness and encryption helpers.
  • String encoding now uses ChaCha20 instead of the previous RC4-style stream; key length increased to 24–32 bytes.
  • VM bytecode/const-pool/opcode-table encoding now uses 32-byte keys plus nonces, with stronger masking and payload splitting.
  • VM opcode mapping now uses unique randomized opcodes, multi-layer masks, optional fake opcodes, and trap defaults; runtime updated accordingly.
  • Control-flow flattening now uses coprime multipliers, dual-state encoding, opaque predicates, and injected fake dead code.
  • Anti-hook runtime strengthened with native toString capture, proxy/timing checks, and descriptor/console integrity checks.
  • Rename plugin avoids collisions and supports optional global renaming; tests updated and package version bumped to 0.1.3.

v0.1.2-Patch 2

08 Jan 13:37

Choose a tag to compare

Highlights

  • VM now supports super() and super.method() calls, including spread arguments.
  • Added VM handling for super property assignment/update (super.prop =, super.prop++).
  • Version bumped to 0.1.2-patch.2.

v0.1.2-Patch 1

08 Jan 13:07

Choose a tag to compare

Highlights

  • VM now supports spread in calls/arrays/objects/new (lowered to apply/concat/Object.assign/Reflect.construct).
  • Object rest destructuring is now supported in VM normalization.
  • VM coverage documentation updated to reflect spread support.

v0.1.2

08 Jan 11:42

Choose a tag to compare

  • VM virtualization supports optional chain/null merging (? . / ? ? ) \n- Add CALL_THIS opcode to handle optional method call \n- Default output is upgraded to ES2020, and documents are synchronized.

v1.0.1

07 Jan 13:08

Choose a tag to compare

Full Changelog: v1.0.0...v1.0.1

v1.0.0

07 Jan 13:01

Choose a tag to compare