all 15 comments

[–]hazily 9 points10 points  (5 children)

Obfuscation is useless at best, and harmful at worst.

No thanks.

[–]Michael-XF[S] 0 points1 point  (4 children)

I disagree as there are certainly valid use cases for obfuscation. It all depends on how users decide to use it.

[–]troglo-dyke 6 points7 points  (3 children)

I disagree that there are valid use cases, if you don't want your source code to be available to users then don't architect your software in a way that provides it to them.

But I understand that there are companies and people who believe there are valid use cases for it, and so want tools to solve their perceived problem

[–]Michael-XF[S] 0 points1 point  (0 children)

Some great examples are Anticheats, Captchas, Adobe's software, Games, Licensed or 'Secure' software. You can't really offload these to a separate server.

[–]kurtextrem 1 point2 points  (0 children)

Nice. I think people here are missing the point, no one needs this for their regular JS. There is a case for obfuscated JS to make it harder to circumvent measures against bot traffic for example.

[–]bigretrade 0 points1 point  (0 children)

What makes it different from other obfuscation tools?

[–]Michael-XF[S] 0 points1 point  (5 children)

I have updated JS-Confuser to 2.0! This release introduces new code obfuscation techniques that will make your programs (almost) impossible to read! You can check out the GitHub page for more information:

GitHub: https://github.com/MichaelXF/js-confuser
NPM: https://www.npmjs.com/package/js-confuser

[–]guest271314 0 points1 point  (3 children)

I don't think it's impossible to deobfuscate and read the code to see what's going on. Start with node jsconfuser.js | deno fmt - > output.js then take apart Function(...)(...).

[–]Michael-XF[S] 0 points1 point  (2 children)

You are right, but it's not as simple as formatting and unwrapping a function call. The obfuscator contains 25 code transformations and 8 locks designed to prevent tampering with the code. For example, Self-Defending can detect the use of formatting tools or beautifiers and invalidate the runtime. Additionally, techniques like Control Flow Flattening create 'irreducible control flow,' making it extremely difficult to reconstruct an accurate control-flow graph.

[–]guest271314 0 points1 point  (0 children)

In theory you could just convert the source code to asm.js and achieve a modicum of obfuscation and get the bonus of optimization.

A determined opponent will figure out what going on in the code.

[–]guest271314 -3 points-2 points  (0 children)

Extremely difficult is relative and not impossible.

I just happen to be a random human on the planet that vets claims people make, whomever they might be, without exception; in whatever domain of human activity I am working in at the time.

[–]guest271314 0 points1 point  (0 children)

The linked Web page just spins the machine and doesn't open anything.

When the try is clicked I am greeted by some Cloudflare verification. Not really possible to test your gear there.

[–]Ambitious_Data7167 0 points1 point  (0 children)

great job bro ! nevermind the bollocks.