POV-Ray : Newsgroups : povray.off-topic : A programmer's etymology : Re: A programmer's etymology Server Time
28 Jul 2024 10:23:34 EDT (-0400)
  Re: A programmer's etymology  
From: Le Forgeron
Date: 24 Jul 2014 04:09:30
Message: <53d0bf3a$1@news.povray.org>
On 24/07/2014 09:07, Orchid Win7 v1 wrote:
> On 24/07/2014 06:06 AM, Warp wrote:
>> Orchid Win7 v1<voi### [at] devnull>  wrote:
>>> automated code obfuscation system we run our code through
>>
>> I think this is the real WTF.
> 
> The idea is to make it less trivial to reverse-engineer our code and
> steal all our secrets.
> 

So, you are on the poor-side of companies. Richer companies have a
full-time team with lawyers to track and sue such events.


> ...which is interesting, really. We make software for idiots. Idiots
> generally aren't the type of people you'd expect to be
> reverse-engineering computer software. Our software doesn't *do*
> anything particularly complicated; it just puts a user-friendly GUI in
> front of a bunch of existing tools. That might *sound* easy, but it's
> actually surprisingly time-consuming.
> 
> Really, if you want to copy our product, it would be quicker to look at
> what it does and write your own one from scratch than to try to figure
> out how ours works internally. The most likely scenario is somebody
> wanting to reverse-engineer our stuff just to disable the license checks.
> 
> All the obfuscater actually does is to take every class and rename all
> it's methods to A(), B(), C(), etc. And insert lots of complicated flow
> control into the method's actual code. It appears in this instance, it
> accidentally (!!) renamed two events to the same thing. Oops...

Maybe interpreted language is not the right choice if you want to
protect your code. That's where compiled language have an advantage: the
compilation with full optimisation is already an obfuscation. There is
decompiler... like there is deobfuscater. And they are pretty smart on
small code.

It's one of the three Java issues (Java is about sharing... keeping
secret is not sharing, so the choice of the language for your project
was an error), at least for secretive software. But that's another story.

-- 
IQ of crossposters with FU: 100 / (number of groups)
IQ of crossposters without FU: 100 / (1 + number of groups)
IQ of multiposters: 100 / ( (number of groups) * (number of groups))


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.