SlideShare uma empresa Scribd logo
1 de 9
Abstract
An unprotected and unobfuscated .Net assembly is an easy target for piracy, reverse-engineering
and IP theft. Crypto Obfuscator is a popular obfuscator from LogicNP Software which protects
against these threats by using advanced software obfuscation, protection and encryption
techniques.


Code Protection and Obfuscation of .Net
 Software Using Crypto Obfuscator
Introduction
Most non-.Net compilers emit binary programs containing native CPU instructions which are
very hard to disassemble, decompile and reverse-engineer. However, all .Net compilers such as
C#, VB.Net, Managed C++, IronPython, etc emit compiled programs in MSIL (Microsoft
Intermediate Language) format. This format preserves a lot of high-level information about your
software such as class, field, method, property and parameter names and even the actual code in
a well-defined structure. This has facilitated the development of many decompilers and
dissassemblers which can extract this information from a .Net assembly. Some tools can even
reconstruct the actual structure of your code including loops, if statements, method calls, etc.
Needless to say, this means that an unprotected .Net assembly is an easy target for hackers,
crackers or competitors who can easily reverse-engineer your .Net code from the compiled
assembly. They can easily glean valuable trade secrets, algorithms, sensitive information such as
passwords, SQL queries, etc stored in strings, or even try to find security vulnerabilities and
change product functionality.

The solution to this problem is to obfuscate all your .Net assemblies before releasing them in the
wild. Crypto Obfuscator from LogicNP Software can be used very effectively by software
developers in their fight against piracy, reverse-engineering and IP theft, to which billions of
dollars are lost every year. Using powerful software obfuscation, protection and encryption
techniques, Crypto Obfuscator can help software companies shield their valuable code from
competitors, reverse-engineers and crackers.

Obfuscation & Protection Techniques
Crypto Obfuscator makes use of the following advanced obfuscation and protection techniques:

Symbol Renaming

Crypto Obfuscator renames the names of the classes, methods, properties, fields, events, etc in
your .Net assembly to a garbled unintelligible name. Depending on the symbol renaming scheme
chosen, this will result in either very long or very short names which have no relation to the
original names. The original names cannot be derived or guessed from the obfuscated names.
Since meaningful names are the most powerful ally when reverse-engineering a software, this
makes it very hard to determine the purpose and function of the renamed entity.

Before                                           After




Advanced Overload Renaming

Crypto Obfuscator renames fields or methods with different signatures to the same name. For
example two fields having types int and boolean will be given the same name. Similarly two
methods will different parameters will be given the same name. In the case of methods, the
method return type is also used in the signature even though high-level languages such as C# and
VB.Net do not support overloading by return type. The .Net runtime is able to differentiate
between the fields/methods without any problem since the signatures are different. Needless to
say, this scheme makes it even harder to reverse-engineer your code.

Before                                           After
Method Call Hiding

Crypto Obfuscator can hide calls to methods and properties from external assemblies such as
those from the .Net framework. In addition, it can also do the same for unrenamed methods and
properties from the assemblies which are being obfuscated. This provides very strong
obfuscation and makes it impossible to determine when, where and how such methods and
properties are used.

Before                                                      After




String Encryption
.Net assemblies contain all the literal strings used in your code in plain view for anybody to see.
Literal strings often contain sensitive information such as login information, passwords, SQL
queries, algorithm parameters. In addition, they also help in reverse-engineering your .Net code
by providing a marker. For example, someone wanting to remove license checking from your
software will search for all instances of strings like "license" or 'valid" or "invalid". Once they
have found such strings, they will examine the surrounding code to see if it is the licensing
checking code and if so, remove or disable it. Crypto Obfuscator solves all these issues by
encrypting all literal strings in your .Net code.

Before                                            After




Advanced Tamper Detection

Crypto Obfuscator can perform strong name verification of the assembly itself even if strong-
name verification has been turned OFF on the machine on which the assembly is running or if
the assembly has been registered in the verification 'skip-list' - this is typically done by hackers
or crackers. Furthermore, the strong name verification is done using the original key used to sign
the assembly when it was processed by Crypto Obfuscator. Thus, strong name verification fails
even if the key is removed or replaced - again something typically done by hackers or crackers.



Control Flow Obfuscation

In .Net assemblies, even the code is stored in a well structured manner using a published format.
This enables a sufficiently advanced decompiler to reconstruct to a pretty accurate degree the
exact structure of your code including the for/while loops, if statements, try-catch blocks, etc.
When doing control flow obfuscation on your code, Crypto Obfuscator changes the structure of
your code into spaghetti code while maintaining 100% the logic and output of the code. The
result is that decompilers are unable to reconstruct your code and output incorrect or garbage
code. Most of the times they crash while trying to do so. This provides powerful method body
protection for your software.
Before                                         After




ILDASM Suppression

ILDASM (Microsoft IL Dissassembler) is a free tool to disassembly any .Net assembly into
MSIL (Microsoft Intermediate Language) and extract the entire contents including the classes,
methods, code and resources from the assembly. Crypto Obfuscator can modify the assembly in
such a way that ILDASM refuses to disassemble the assembly.




Anti-Reflection Protection
Many decompilers, dissassemblers and memory dumpers use .Net Reflection mechanism to
extract information about a .Net assembly. Crypto Obfuscator can modify the assembly in such a
way that such tools will fail when trying to work on your assembly.

Before                                          After




Anti-Decompiler Protection

Advanced decompilers such as the freely available .Net Reflector are your enemy in the battle
against the hackers, crackers and competitors. Crypto Obfuscator can modify your assembly in
such a way that such tools fail to work on your assembly - many times they are not even able to
open your assembly, let alone examine it.

Before                                          After




Resource Encryption
Tools such as ILDASM, .Net Reflector and others can easily extract resources from your
assembly. Such resources often contain valuable, sensitive or copyrighted information such as
images, UI (WPF baml files), textual content, etc. Crypto Obfuscator can hide and encrypt all
such resources so that it is impossible to see them, let alone extract them from the assembly.

Before                                          After




Assembly Encryption

Crypto Obfuscator can encrypt all dependant assemblies and any additional assemblies used by
your software. This makes it impossible for someone to get their hands on individual assemblies.
You can use this feature to your advantage by separating all sensitive or important code and data
in a dependant assembly. In fact, this can be taken to an extreme - simply put ALL your
code/data in a separate assembly and use a shell assembly as a starter/loader assembly for your
application.

Before                                          After




Easy Of Use and VS Integration
One of the focus areas for Crypto Obfuscator is ease of use and integration to ensure that the
obfuscation step becomes a seamless part of the software development process. To this end,
Crypto Obfuscator offers features like command-line support, Visual Studio integration via Post-
Build events and MSBuild, automatic resigning of strong-named assemblies, and even automatic
code signing of obfuscated assemblies using Authenticode. This ensures that the obfuscation step
does not become a liability for developers and that developers do not develop a resistance to
something so vital to IP protection. Also supported is automatic and manual stack-trace
deobfuscation and automatic obfuscation of satellite assemblies.

Conclusion

Each of the above techniques on its own is pretty powerful and effective against hackers,
crackers and competitors. When combined and used together for the obfuscation and code
protection of your .Net software, they form an impenetrable shield which is extremely difficult to
break. Even if broken into by the most expert of hands, all they will see are garbage, encrypted
or obfuscated code, names and data.

Crypto Obfuscator arms .Net developers with a powerful code protection and obfuscation tool
which enable them to deploy their .Net software without fear of IP theft, reverse-engineering,
hacking, cracking and piracy.

Developer: LogicNP Software
Product Info & Fully Functional Trial Download: Crypto Obfuscator Website
Code Protection and Obfuscation of .Net Software Using Crypto Obfuscator

Mais conteúdo relacionado

Destaque

.Net Hijacking to Defend PowerShell BSidesSF2017
.Net Hijacking to Defend PowerShell BSidesSF2017 .Net Hijacking to Defend PowerShell BSidesSF2017
.Net Hijacking to Defend PowerShell BSidesSF2017 Amanda Rousseau
 
SETTING METHOD IN CONSIDERATION OF THE PCI/DSS
SETTING METHOD IN CONSIDERATION OF THE PCI/DSSSETTING METHOD IN CONSIDERATION OF THE PCI/DSS
SETTING METHOD IN CONSIDERATION OF THE PCI/DSShogehuga
 
Passive infrastructure of FTTH networks: an overview
Passive infrastructure of FTTH networks: an overviewPassive infrastructure of FTTH networks: an overview
Passive infrastructure of FTTH networks: an overviewLuc De Heyn
 
A very quick introduction to HFC, DOCSIS 3.0 and 3.1
A very quick introduction to HFC, DOCSIS 3.0 and 3.1A very quick introduction to HFC, DOCSIS 3.0 and 3.1
A very quick introduction to HFC, DOCSIS 3.0 and 3.1Erik Vloothuis
 
ColdFusion for Penetration Testers
ColdFusion for Penetration TestersColdFusion for Penetration Testers
ColdFusion for Penetration TestersChris Gates
 
DevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps ToolchainsDevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps ToolchainsChris Gates
 

Destaque (6)

.Net Hijacking to Defend PowerShell BSidesSF2017
.Net Hijacking to Defend PowerShell BSidesSF2017 .Net Hijacking to Defend PowerShell BSidesSF2017
.Net Hijacking to Defend PowerShell BSidesSF2017
 
SETTING METHOD IN CONSIDERATION OF THE PCI/DSS
SETTING METHOD IN CONSIDERATION OF THE PCI/DSSSETTING METHOD IN CONSIDERATION OF THE PCI/DSS
SETTING METHOD IN CONSIDERATION OF THE PCI/DSS
 
Passive infrastructure of FTTH networks: an overview
Passive infrastructure of FTTH networks: an overviewPassive infrastructure of FTTH networks: an overview
Passive infrastructure of FTTH networks: an overview
 
A very quick introduction to HFC, DOCSIS 3.0 and 3.1
A very quick introduction to HFC, DOCSIS 3.0 and 3.1A very quick introduction to HFC, DOCSIS 3.0 and 3.1
A very quick introduction to HFC, DOCSIS 3.0 and 3.1
 
ColdFusion for Penetration Testers
ColdFusion for Penetration TestersColdFusion for Penetration Testers
ColdFusion for Penetration Testers
 
DevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps ToolchainsDevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps Toolchains
 

Último

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Último (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Code Protection and Obfuscation of .Net Software Using Crypto Obfuscator

  • 1. Abstract An unprotected and unobfuscated .Net assembly is an easy target for piracy, reverse-engineering and IP theft. Crypto Obfuscator is a popular obfuscator from LogicNP Software which protects against these threats by using advanced software obfuscation, protection and encryption techniques. Code Protection and Obfuscation of .Net Software Using Crypto Obfuscator Introduction Most non-.Net compilers emit binary programs containing native CPU instructions which are very hard to disassemble, decompile and reverse-engineer. However, all .Net compilers such as C#, VB.Net, Managed C++, IronPython, etc emit compiled programs in MSIL (Microsoft Intermediate Language) format. This format preserves a lot of high-level information about your software such as class, field, method, property and parameter names and even the actual code in a well-defined structure. This has facilitated the development of many decompilers and dissassemblers which can extract this information from a .Net assembly. Some tools can even reconstruct the actual structure of your code including loops, if statements, method calls, etc. Needless to say, this means that an unprotected .Net assembly is an easy target for hackers, crackers or competitors who can easily reverse-engineer your .Net code from the compiled assembly. They can easily glean valuable trade secrets, algorithms, sensitive information such as passwords, SQL queries, etc stored in strings, or even try to find security vulnerabilities and change product functionality. The solution to this problem is to obfuscate all your .Net assemblies before releasing them in the wild. Crypto Obfuscator from LogicNP Software can be used very effectively by software developers in their fight against piracy, reverse-engineering and IP theft, to which billions of dollars are lost every year. Using powerful software obfuscation, protection and encryption techniques, Crypto Obfuscator can help software companies shield their valuable code from competitors, reverse-engineers and crackers. Obfuscation & Protection Techniques Crypto Obfuscator makes use of the following advanced obfuscation and protection techniques: Symbol Renaming Crypto Obfuscator renames the names of the classes, methods, properties, fields, events, etc in your .Net assembly to a garbled unintelligible name. Depending on the symbol renaming scheme chosen, this will result in either very long or very short names which have no relation to the
  • 2. original names. The original names cannot be derived or guessed from the obfuscated names. Since meaningful names are the most powerful ally when reverse-engineering a software, this makes it very hard to determine the purpose and function of the renamed entity. Before After Advanced Overload Renaming Crypto Obfuscator renames fields or methods with different signatures to the same name. For example two fields having types int and boolean will be given the same name. Similarly two methods will different parameters will be given the same name. In the case of methods, the method return type is also used in the signature even though high-level languages such as C# and VB.Net do not support overloading by return type. The .Net runtime is able to differentiate between the fields/methods without any problem since the signatures are different. Needless to say, this scheme makes it even harder to reverse-engineer your code. Before After
  • 3. Method Call Hiding Crypto Obfuscator can hide calls to methods and properties from external assemblies such as those from the .Net framework. In addition, it can also do the same for unrenamed methods and properties from the assemblies which are being obfuscated. This provides very strong obfuscation and makes it impossible to determine when, where and how such methods and properties are used. Before After String Encryption
  • 4. .Net assemblies contain all the literal strings used in your code in plain view for anybody to see. Literal strings often contain sensitive information such as login information, passwords, SQL queries, algorithm parameters. In addition, they also help in reverse-engineering your .Net code by providing a marker. For example, someone wanting to remove license checking from your software will search for all instances of strings like "license" or 'valid" or "invalid". Once they have found such strings, they will examine the surrounding code to see if it is the licensing checking code and if so, remove or disable it. Crypto Obfuscator solves all these issues by encrypting all literal strings in your .Net code. Before After Advanced Tamper Detection Crypto Obfuscator can perform strong name verification of the assembly itself even if strong- name verification has been turned OFF on the machine on which the assembly is running or if the assembly has been registered in the verification 'skip-list' - this is typically done by hackers or crackers. Furthermore, the strong name verification is done using the original key used to sign the assembly when it was processed by Crypto Obfuscator. Thus, strong name verification fails even if the key is removed or replaced - again something typically done by hackers or crackers. Control Flow Obfuscation In .Net assemblies, even the code is stored in a well structured manner using a published format. This enables a sufficiently advanced decompiler to reconstruct to a pretty accurate degree the exact structure of your code including the for/while loops, if statements, try-catch blocks, etc. When doing control flow obfuscation on your code, Crypto Obfuscator changes the structure of your code into spaghetti code while maintaining 100% the logic and output of the code. The result is that decompilers are unable to reconstruct your code and output incorrect or garbage code. Most of the times they crash while trying to do so. This provides powerful method body protection for your software.
  • 5. Before After ILDASM Suppression ILDASM (Microsoft IL Dissassembler) is a free tool to disassembly any .Net assembly into MSIL (Microsoft Intermediate Language) and extract the entire contents including the classes, methods, code and resources from the assembly. Crypto Obfuscator can modify the assembly in such a way that ILDASM refuses to disassemble the assembly. Anti-Reflection Protection
  • 6. Many decompilers, dissassemblers and memory dumpers use .Net Reflection mechanism to extract information about a .Net assembly. Crypto Obfuscator can modify the assembly in such a way that such tools will fail when trying to work on your assembly. Before After Anti-Decompiler Protection Advanced decompilers such as the freely available .Net Reflector are your enemy in the battle against the hackers, crackers and competitors. Crypto Obfuscator can modify your assembly in such a way that such tools fail to work on your assembly - many times they are not even able to open your assembly, let alone examine it. Before After Resource Encryption
  • 7. Tools such as ILDASM, .Net Reflector and others can easily extract resources from your assembly. Such resources often contain valuable, sensitive or copyrighted information such as images, UI (WPF baml files), textual content, etc. Crypto Obfuscator can hide and encrypt all such resources so that it is impossible to see them, let alone extract them from the assembly. Before After Assembly Encryption Crypto Obfuscator can encrypt all dependant assemblies and any additional assemblies used by your software. This makes it impossible for someone to get their hands on individual assemblies. You can use this feature to your advantage by separating all sensitive or important code and data in a dependant assembly. In fact, this can be taken to an extreme - simply put ALL your code/data in a separate assembly and use a shell assembly as a starter/loader assembly for your application. Before After Easy Of Use and VS Integration
  • 8. One of the focus areas for Crypto Obfuscator is ease of use and integration to ensure that the obfuscation step becomes a seamless part of the software development process. To this end, Crypto Obfuscator offers features like command-line support, Visual Studio integration via Post- Build events and MSBuild, automatic resigning of strong-named assemblies, and even automatic code signing of obfuscated assemblies using Authenticode. This ensures that the obfuscation step does not become a liability for developers and that developers do not develop a resistance to something so vital to IP protection. Also supported is automatic and manual stack-trace deobfuscation and automatic obfuscation of satellite assemblies. Conclusion Each of the above techniques on its own is pretty powerful and effective against hackers, crackers and competitors. When combined and used together for the obfuscation and code protection of your .Net software, they form an impenetrable shield which is extremely difficult to break. Even if broken into by the most expert of hands, all they will see are garbage, encrypted or obfuscated code, names and data. Crypto Obfuscator arms .Net developers with a powerful code protection and obfuscation tool which enable them to deploy their .Net software without fear of IP theft, reverse-engineering, hacking, cracking and piracy. Developer: LogicNP Software Product Info & Fully Functional Trial Download: Crypto Obfuscator Website