-1

I created one software which written in c#.net and when i created setup file .exe file will be the output but in this .exe file is ex tractable by some software and easy to access the codes.How to prevent this?

Suresh E
  • 1
  • 1
  • 3
  • Although this answer was marked as a duplicate w.r.t. DRM, I think this answer may assist you: Look at SLP, formerly from Microsoft http://security.stackexchange.com/a/1091/396 – makerofthings7 Jun 29 '13 at 18:45

2 Answers2

4

No matter what you do, no matter what you use, somebody will be able to extract/infer the source code of your application from the binary. There's just no way around it. In the worst case they can run the application through a debugger and with assembly knowledge it could be possible to infer the source code.

Having that said, there are many good obfuscatory for .Net. They make it a bit more difficult to extract the source code from the binary. Here's a list of some of them on Wikipedia.

Adi
  • 43,808
  • 16
  • 135
  • 167
  • Funny I don't see SLP on that list... http://www.inishtech.com/ – makerofthings7 Jun 29 '13 at 18:46
  • @makerofthings7 No disrespect, but this is Wikipedia. If there's something missing or you see something you can improve, then add it yourself instead of complaining about it. – Adi Jun 29 '13 at 20:25
  • None taken. Also I'm not complaining... The omission makes me question market awareness whenever I would be required to make a product listing, especially when it's a former MSFT product. Maybe there is something unpopular/undesirable with the product I don't know of. That is where I was phishing for information ;) – makerofthings7 Jun 29 '13 at 20:48
1

You could run your project through an obsfucator tool like Eazfuscator.NET.

This should make it a lot more difficult to recover the original source code given the .NET binary file. Of course, this is not 100% foolproof. With enough time and effort, an attacker would probably have a high chance of deobsfucating the binary file.