-
Hey there, Thank you so much for this awesome repository, I love using it and wish you good luck, I saw everything is labeled as default patches but I'm a bit curious so I had to dig and found out this part: asarmor/src/encryption/main.cpp Line 173 in 397a192 And that file: https://github.com/sleeyax/asarmor/blob/master/src/encryption/includes.h And the library it seem to reference: (Edit: Not being referenced) https://www.npmjs.com/package/js2c Any information on the above will feed my curiosity and probably of others too, But, My simple questions will be, please:
example for that will be: This "badly-need-a-fix" "one-liner": Or this: (Or what else lol, I don't care how many lines I need to run but how many?)
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 8 replies
-
Thank you for starting a discussion. Few developers have taken the time thus far to contribute back to the repository so your input is much appreciated. Please keep in mind that the encryption module and other recent changes related to it are are currently considered to be in beta. Asarmor's encryption module is based on toyobayashi/electron-asar-encrypt-demo. That's a good place to start if you want to learn more about how it works in detail. Asarmor integrates the same encryption methods, but in an easier to use format. Now, to answer your questions:
That library isn't used, actually. It's a local script scripts/js2c.js which is ran after the package is installed. Its purpose is to write bootstrap JS code to
Those are some very basic anti-debugging checks, unrelated to the encryption part. Good that you mention this though, we may want to either improve this or remove it because it's actually a bit out of scope for asarmor and there's better libraries/tools out there that already solve this problem.
Only
I'm not sure what you mean by 'general patches'. Do you mean the default patches that are applied via
Encrypt the source files to .asar first and then apply the bloat and trashify patches to the resulting asar. This is currently a limitation, see #42.
Encryption + default patches. Custom patches are only useful if you want full control over what gets written, the protection itself is at the same level of security. Asarmor isn't comparable to a regular obfuscator where you have 'low', 'medium' or 'high' protection levels.
Encryption currently only supports source/transpiled files -> I guess if you really want 'the ultimate conifg' to mess with a reverse engineer the most, this would be it:
Don't try to |
Beta Was this translation helpful? Give feedback.
-
also I finally got trashify! this is great! I've finally decided this
project is worth it! thank you again!
…On Thu, Jun 2, 2022, 5:26 PM Burgil ***@***.***> wrote:
Well, I tried to install it using yarn 3 but it failed with an error both
as a devdependency and just a dependency, I had to install it globally
using npm and also I had to install a module called terser which wasnt
installed for me?
On Thu, Jun 2, 2022, 4:49 PM Sleeyax ***@***.***> wrote:
> Encryption currently only supports source/transpiled files -> .asar
> It looks like an error? I mean if it only supports source files why point
> into .asar?
>
> What I meant to say is you have to specify a source folder to asarmor and
> it will create a new .asar from its contents.
>
> And I am guessing 999999 is the maximum number, like will it literally
> consume all hard disk space? how fast? is it reversible?
>
> Not at all, the maximum number would technically be Number.MAX_VALUE
> (JavaScript's max number) i.e 1.7976931348623157e+308 though I haven't
> tested if asar can parse values in that range. Technical possibilities
> aside judging your use case you don't need to go this high unless you
> really wanna have quite an insane asar file. As stated in the README,
> output from asarmor --help and by taking ~5 minutes of your time to read
> the code, you can see that the bloat protection writes the specified amount
> of GBs of randomness to the disk (relative to where the .asar is located).
> So if you specify --bloat 5 that will write +- 5GB of random files in
> total to the location where your .asar file is located. It's safe to try
> that out (use a VM if you're uncertain). It takes as much time as the
> operating system needs to write stuff to disk. Once all files have been
> written, they can be deleted so it is 'reversible' in a sense. Asarmor
> doesn't do anything that could cause damage to a computer unless you
> explicitly tell or write a custom patch to do so.
>
> if I were looking to do the same from the CLI how will that look like we
> have that part right: --trashify bee-movie.txt foo.js bar.ts can we make it
> a little better? what's the limit?
>
> There's no limits to it, you can specify whatever files you want. All the
> random extension handler does is help to make it more random so
> bee-movie.txt can become bee-movie.n9X7m5KXzNhduzXu6LnA.txt or
> bee-mobie.ZnXraNwgKBndRHfEU2sT.js per build. CLI accepts static
> parameters only, but you could write a shell script if you need to
> randomize it...
>
> Or why don't you install asarmor as a local dependency, create a file
> like build.js and put everything packaging related in there so you can
> run it via node build.js instead of messing with cli params?
>
> —
> Reply to this email directly, view it on GitHub
> <#44 (reply in thread)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AJ5MJFLRN65KLOG7PBJGI6TVNC3XRANCNFSM5XTAHLKA>
> .
> You are receiving this because you authored the thread.Message ID:
> ***@***.***>
>
|
Beta Was this translation helpful? Give feedback.
Thank you for starting a discussion. Few developers have taken the time thus far to contribute back to the repository so your input is much appreciated.
Please keep in mind that the encryption module and other recent changes related to it are are currently considered to be in beta.
Asarmor's encryption module is based on toyobayashi/electron-asar-encrypt-demo. That's a good place to start if you want to learn more about how it works in detail. Asarmor integrates the same encryption methods, but in an easier to use format.
Now, to answer your questions:
That library isn't used, actually. It's a local script scripts/js2c.js w…