Previous Tip  |  Next Tip  |  Index (recent)   |  Design Tips   | [Bill's Home]

237. Obfuscation for .NET

.NET and Java programs can be easily reverse engineered, as they use intemediate code. The following shows a demo, where the folllowing happens:Video: - Zoom Demo.

1. The file example.cs is built to produce example.exe.
2. The program is executed.
3. Exemplar (a reserve engineering program for .NET) is used to convert the EXE back to C# code.
4. Dotfuscator is then used to obfuscate the EXE.
5. Exemplar crashes when it now tries to reverse engineer the code -- thus the EXE is now safer from reverse engineers.

Other related .NET articles I've written include:

- Design Tip 298. [.NET] HMAC-SHA1.
- Design Tip 243. [.NET] Base-64 or Hex hash values.
- Design Tip 242. [.NET] Digital Certificates.
- Design Tip 241. [.NET] Public-key Encryption.
- Design Tip 240. [.NET] Diffie-Hellman Method.
- Design Tip 239. [.NET] Symmetric Encryption (Private-key).
- Design Tip 238. [.NET] Obfuscation Part II.
- Design Tip 237. [.NET] Obfuscation Part I
- Design Tip 236. [.NET] Data packet capture (filters: IP, TCP, and so on).
- Design Tip 235. [.NET] Data packet capture.
- Design Tip 234. [.NET] Interface to network adapter.
- Design Tip 232. [.NET] Creating an SSH client.
- Design Tip 231. [.NET] Creating an SNMP client.
- Design Tip 216. [.NET] Client/server communications.
- Design Tip 210. [XML/.NET] XML and .NET.
- Design Tip 207. [.NET] Treeviews for interest.
- Design Tip 206. [.NET/Design] Design, evaluate, design, .....
- Design Tip 205. [.NET] Treeviews.
- Design Tip 203. [.NET] Replacing menus with Treeviews.
- Design Tip 202. [.NET/Flash] .NET and Flash - the perfect pair.