Help Desk
HomeDashboardLog inRegister
master
master
  • NETGuard.IO - Help Desk
  • Getting started
  • Obfuscation Features
    • MSIL Code Encryption
    • Constants Protection
    • DRM Protection
    • Hide Call Protection
    • Code Flow Protection
    • Name Protection
    • Anti Debug Protection
    • Anti Dump Protection
    • Native Shield Protection
  • F.A.Q
    • Payment
      • Pricing Plans
      • What are the payment methods ?
      • I don't use this service anymore, refund ?
      • What is a 'token' ?
      • Obfuscation failed, refund ?
    • Obfuscated file
      • "Could not create SSL/TLS secure channel" error
      • Protected file is detected as a virus ?
    • Personal Data
      • Is my personal data safe ?
  • Obfuscation Tips
    • Updating my protected file ?
    • Program that uses JSON data
    • Protect multi-threading tasks
    • You also use VMProtect ?
    • Adding more security ?
Powered by GitBook
On this page
  • Description
  • Code Example
  • Obfuscation Impacts

Was this helpful?

  1. Obfuscation Features

Name Protection

Rename all of your functions and properties smartly.

PreviousCode Flow ProtectionNextAnti Debug Protection

Last updated 5 years ago

Was this helpful?

Description

Names are what hackers and reverse engineer looks for when they want to trace your code in a decompiler and infer meaning of your methods. NETGuard.IO renaming pattern uses real names grabbed from .NET Framework library files to confuse them.

NETGuard.IO prevent the renaming of public members for library (.dll) files, while still renaming private and internal members. On executable (.exe) files NETGuard.IO apply a global renaming rules to rename every classes and methods in your project.

Names are also used a decoding key for specific back-ground algorithm, therefore if the file got passed in de4dot and gets renamed, it will not run anymore.

Code Example

internal class LoginForm
{
    public LoginForm(Action<string, long, long, TimeSpan> statu)
    {
        this.SessionStatu= statu;
    }
    private Action<string, long, long, TimeSpan> Sessio;
}
internal class TypeInitializationException
{
    public TypeInitializationException(Action<string, long, long, TimeSpan> updateProgress)
    {
        this.DefaultDependencyAttribute = updateProgress;
    }
    private Action<string, long, long, TimeSpan> DefaultDependencyAttribute;
}

Obfuscation Impacts

Targets : Classes, Functions and Methods, Properties, Resources

Strength : ⭐⭐⭐⭐⭐

Make sure to mark JSON classes with the [Serialize] attribuute !