D code obfuscator
DigitalDesigns
DigitalDesigns at gmail.com
Thu Jun 14 05:21:03 UTC 2018
On Thursday, 14 June 2018 at 02:13:58 UTC, Shachar Shemesh wrote:
> On 14/06/18 03:01, DigitalDesigns wrote:
>> Is there an obfuscator for D that at least renames
>> identifiers? This is because sometimes they leak from various
>> processes and could be potential sources of attack.
>>
>> It would be a tool that probably just replaces their values
>> with, say their hash + something else and done pre release
>> build. Ideally it would be able to compile with dmd and all in
>> memory or use temp storage without file issues. It can't
>> modify the code directly because then that would be permanent.
>>
>
> I highly doubt it.
>
> You see, with introspection and run-time execution, writing
> such a tool is equivalent to solving the halting problem. You
> simply do not know what you're affecting.
>
> There are some cases where you might know at x% certainty that
> it's okay to rename. Someone might do a best-effort based tool.
> I'm not aware of one.
>
>
> With that said, what you're trying to achieve is probably not a
> good idea anyways. With very few exceptions(1),
> reverse-engineering code to figure out what it does is not
> considerably more difficult than using the source, even when
> none of the identifiers leak at all. Certain aspects of
> creating attacks are even easier with good rev-eng tools than
> in source form.
>
> Shachar
>
> 1- One notable exception is complex algorithmic code. I will
> point out that those are difficult to figure out from source
> code too, and it usually takes very good documentation to be
> able to do so, so even there I'm not sure my original statement
> doesn't hold.
Just one question! Are you kidding me?
More information about the Digitalmars-d
mailing list