Majid khalili
Majid khalili

Reputation: 520

How to prevent an applications DLL to be decompiled?

As I know there are some applications that decompile DLLs to get source codes from application files.

Not only I don't want others to have the sources but also I don't want others to use them, I mean the DLL files. so how should i lock the DLLs and how safe they are ?

Upvotes: 1

Views: 2113

Answers (3)

Majid khalili
Majid khalili

Reputation: 520

For DLLs there is almost nothing we can do , confusing the files is the best way , but public member will remain in the way they were before , but if you pack them in your exe file , and confuse them , no one can use them easily . I used ConfuserEX and it was very easy to use and effective .

Upvotes: 0

dotnetzen
dotnetzen

Reputation: 186

Obfuscation is one way to protect your code. Again, the solution is relative as per your needs. If you have a super secretive program, then you would want to explore more expensive and in-dept strategies.

However, if you are developing a business application or such thing which would not be worth a lot of any hacker's time to reverse engineer, minimal to normal obfuscation strategies are good enough. As the main answer suggests, look at those links.

Recently, I came upon ConfuseEx, a free open-source obfuscator that does the job for WPF apps and more. It seems to be very powerful, effective and customizable.

ConfuseEx on Github

Upvotes: 1

myermian
myermian

Reputation: 32515

Before I get into anything else, I will state that it is impossible to protect your application entirely.


That being said, you can still make things more difficult. There are many obfuscators out there that will help you make it more difficult for someone to decompile your application and understand it.

That's truly the best you can hope for.


Personally, I really wouldn't bother going too deep, if at all. You'll find that you are either spending too much money or time (or both) trying to protect your application from no-gooders. These are the same people who, no matter what barriers you throw up at them, will continue to try and given the nature of managed languages, they will most likely succeed. In fact, most obfuscators can be deobfuscated with simple tools... In the meantime, you've let other important features and bug fixes slip by because you spent more time and effort on security measures.

Upvotes: 2

Related Questions