Click here to Skip to main content
15,892,005 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,

I am doing a project and would like to use it for a business i am starting.
I don't want my codes to be open source. I would like the person to use the software i will develop but not see my codes; just like when you buy a Windows software (All their codes are encrypted). How can i do that for the package i am developing?

If the code is encrypted in one platform, will it still be encrypted in another platform? (I know this one is a stupid question :( )

Thanks very much in advance.

Herve
Posted

1 solution

You don't have to release your source code with your application - about the only time that happens is when you do release code as open source.
Just release the compiled executable and any DLL's and you will be fairly ok.

Normal executables are not encrypted: they just look that way because they are compiled into language the machine understands: C++ for example compiles into Native Code (understood directly by the processor), C# compiles to IL (a nearly-native code understood by the .NET execution engine).

As for platforms, Native code will only work on the platform it is compiled for: PC on PC, ARM on ARM, etc.

Any software can be reverse engineered and examined (otherwise how would the processor understand it?) but it is unusual to do this for real-world applications. For .NET there are packages called Obfuscators which can make this process harder if you need it.

Unless you are selling your software into the mass market and are really paranoid about protection, you will probably spend more time and money on protecting your software than you will save in lost sales!
 
Share this answer
 
Comments
Espen Harlinn 6-Feb-11 6:42am    
Good answer :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900