On Thursday, November 6, 2014 5:26:28 PM UTC+2, Leonel Câmara wrote:
>
> Frankly I have no interest in making my code harder to decompile or not 
> delivering the code, it's protected by copyright and usually I sell the 
> costumer projects that they paid to develop so I find it ethically wrong 
> not to give them the code. Besides, there aren't that many programmers 
> willing to take reasonably sized projects they aren't familiar with and 
> develop them, most programmers suck and can't read other people's code, 
> they rather do it from scratch in joomla or something.  
>   
> I can see where it might be tempting not to give the code if you're 
> selling licenses but, even then, again, you are protected by copyright and 
> there's a long history of people giving out the code without any problems 
> (for instance wordpress themes).
>

While I generally agree with you, there is a project I'm considering right 
now in which, for reasons I will not discuss, it is more or less a 
requirement to make the source code unavailable until a later stage (1 year 
or so), at which point customer will receive the source code. I know that 
it is always possible to reverse engineer with enough effort - but 
specifically, in this project, I'm trying to make it easy for me to 
obfuscate and hard for an adversary to de-obfuscate and modify (to the 
point of being uneconomical).

I said "you might want to have a look" in the sense of "you are not 
up-to-date". I have only tried it on small pieces of software, but both 
Cython and Nuitka can start from lightly annotated / mostly unmodified 
Python code and produce native code that can be x1-x10 faster, and almost 
as hard to decompile as C++. At some point PyPy was also able to produce 
AOT-compiled native executables (based on type info seen during a specific 
run) but IIRC it's no longer the case.

Web2py is extremely dynamic, so I expect even if e.g. Nuitka can make it 
native, it won't be faster and still have enough clues to make decompiling 
much easier than C++. However, if it does work, it will be enough for my 
purposes for this project.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to