MichaelXF / js-confuser

JS-Confuser is a JavaScript obfuscation tool to make your programs *impossible* to read.
https://js-confuser.com
MIT License
168 stars 28 forks source link

Don't limit to 10k concealed strings #96

Open Le0Developer opened 1 year ago

Le0Developer commented 1 year ago

Is your feature request related to a problem? Please describe. I am hitting the limit here: https://github.com/MichaelXF/js-confuser/blob/30e4043a8b007a002648cb71ae0aef36bb5edf2e/src/transforms/string/stringConcealing.ts#L196

Why does it exist? Also, the ! is causing the chance to be 10% instead of 90% when exceeding 1k due to the improper !.

fuzzbuck commented 1 year ago

Also happens in stringEncoding, and other concealment transformations

MichaelXF commented 1 year ago

How many strings do you need encoded? I felt like creating a massive string array would be detrimental to performance so I added a limit. And the improper ! can be fixed if the limit stays

Le0Developer commented 1 year ago

The problem I see is that it goes top-to-bottom, so the end of the script often has no string concealment.

We have a lot of auto-generated code that easily surpasses 50k strings and just an enormous code base in general.

kittenswolf commented 9 months ago

I agree that the limit should not be present. The developer using the obfuscator can control the amount of strings that are in the string array by changing the probability. Hard-coding this takes away control and makes the obfuscator not suitable for my use-case.

@MichaelXF I'd be willing to submit a PR to remove these hard-coded limits.