[Mono-devel-list] Re: [Mono-list] Obfuscation packages that run under mono
lupus at ximian.com
Thu Feb 5 09:01:10 EST 2004
On 02/04/04 Miguel de Icaza wrote:
> > I'm trying, without much success I might add, to find any IL obfuscation
> > packages that will run under mono (on linux).
> > Does anyone know of any?
> Dont know of one, but there are a few things someone could do:
> * Use the bundle functionality in Mono.
> This would bundle your binary inside a Mono instance,
> so you distribute a single executable. Not impossible
> to break, but would work around simple attempts.
Note that in this case the app needs to comply with the LGPL, the
license of the mono runtime: in practice, the individual assemblies need
to be provided. Alternatively, a separate license needs to be issued
that allows the linking: I guess Miguel and/or the ximian/Novell sales
teams can fill in the details if people are interested (note, I'm not a
lawyer, the above is my reading of the license, blah, blah, blah).
> * You could precompile with --aot, then disassemble the
> original .exe, remove all the code, then re-assemble
> and ship both.
* Get the companies that build the obfuscation packages to read
the ECMA spec and fix the bugs in their products that generate
non-standard binaries (or, if they expose a bug in mono, please
file a report in our bugzilla).
* Pay Ximian/Novell to spend the development time needed to get
mono to support the broken binaries that some of the obfuscation
packages generate (or contribute that support).
> That being said, value these days does not lie in particular tiny
> routines, but lies in the large body of work, and if someone steals
> your code, you are likely going to find out anyways.
People disassembling the code is a legal problem and should
be solved with legal means: trying to solve legal problems with
technical solutions is doomed to fail (though of course people are happy
to take your money if that makes you feel better:-).
lupus at debian.org debian/rules
lupus at ximian.com Monkeys do it better
More information about the Mono-devel-list