Hydra
A free and open-source .NET obfuscator using dnlib | AsmResolver .
Install / Use
/learn @DestroyerDarkNess/HydraREADME
HydraEngine
Hydra is a powerful tool for protecting .NET assemblies with various obfuscation and anti-debugging techniques. Focus on writing your code and let Hydra handle the protection! <br><br>
⚠️ I invite you to the community, where you can chat and suggest your ideas for this project. 💌
</div>⚡️ Quick start
First, ensure you have .NET Framework 4.8 or higher installed.
Download Hydra and have fun.
That's all you need to know to start! 🎉
🔨 Building from Source
If you want to compile Hydra from source code, follow these steps:
Prerequisites
- Visual Studio 2019 or later (with .NET Framework 4.8 support)
- .NET Framework 4.8 or higher
- Git for cloning the repository
Step-by-Step Build Process
📹 Complete build process demonstration:
https://github.com/user-attachments/assets/33ccfdd2-c3ed-4eba-9b11-313781aa1d59
Troubleshooting
- Ensure you have the correct .NET Framework version installed
- Make sure all NuGet packages are properly restored
- Check that you have sufficient permissions to build the project
⚙️ Features & Options
Listed below are all the features of Hydra:
| Feature| Description | .Net Framework | .Net Core |
| ------ | -------------------------------------------------------- | ---------------- | --------- |
| 🔄 Renamer | Obfuscates the original assembly by renaming Methods, Properties, Events, Classes, Fields, Namespaces and even the Module of the assembly. Supports exclusion via HydraNoObfuscate attribute. | ✅ | ✅ |
🚧 Under Construction. 🚧
🔄 Renamer - HydraNoObfuscate Attribute
The Renamer feature now supports excluding specific classes and methods from obfuscation using the HydraNoObfuscate attribute.
Usage Example:
// 1. Define the attribute in your code
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event)]
public class HydraNoObfuscateAttribute : Attribute
{
}
// 2. Apply to classes you want to exclude completely
[HydraNoObfuscate]
public class ImportantAPIClass
{
// All members of this class will be excluded from renaming
public void PublicMethod() { }
public string PublicProperty { get; set; }
public string PublicField;
}
// 3. Apply to specific members you want to exclude
public class MyClass
{
[HydraNoObfuscate]
public void DoNotRenameThisMethod()
{
// This method will keep its original name
}
public void ThisMethodWillBeRenamed()
{
// This method will be renamed normally
}
[HydraNoObfuscate]
public string ImportantProperty { get; set; }
[HydraNoObfuscate]
public string criticalField;
[HydraNoObfuscate]
public event EventHandler ImportantEvent;
}
Key Features:
- Hierarchical Protection: If a class has
[HydraNoObfuscate], all its members are automatically protected - Granular Control: Apply the attribute to specific methods, properties, fields, or events
- Flexible Naming: The attribute works with both
HydraNoObfuscateandHydraNoObfuscateAttributenames - Zero Configuration: Just add the attribute definition to your code and start using it
Documentation
⭐️ Project assistance
If you want to say thank you or/and support active development of Hydra:
- Add a GitHub Star to the project.
❗️ Support the author
You can support the author on Binance or Paypal s4lsalsoft@gmail.com. ❤️
🏆 A win-win cooperation
And now, I invite you to participate in this project!
- Issues: ask questions and submit your features.
- Pull requests: send your improvements to the current.
- Join our Discord community to discuss ideas and get help.
Together, we can make this project better every day! 😘
⚠️ License
Hydra is free and open-source software licensed under the MIT License.

