Deterministic Obfuscation

Deterministic system

Eazfuscator.NET gained the ability to perform deterministic obfuscation since version 2021.1.

Read more »

Availability of Eazfuscator.NET SDK NuGet Package

Software Development Kit Starting with Eazfuscator.NET version 2021.1, the Software Development Kit (SDK) for .NET is available as a public NuGet package.

Read more »

Managing Stack Trace Passwords

Since its inception, Eazfuscator.NET has offered the ability to encrypt the names of types, members, and other assembly symbols with a secret password. Once encryption is applied, the assembly remains obfuscated but the original symbol names can be retrieved back whenever such neccessity arises. The most common usage scenario is…

Read more »

Homomorphic Encryption of Code

Previously we announced that we discovered a novel way of cryptographically secure obfuscation of software. This article gives a brief illustrated overview of discovery. It also provides some practical examples based on existing implementation of technology in Eazfuscator.NET obfuscator for .NET platform. Introduction Obfuscation is relatively new field of cryptography…

Read more »

Improved NuGet Integration

NuGet became an essential part of the development for .NET platform over the recent years, as it provided the convenience of creating and consuming the packages.

The packages are easy to discover and use with the help of Package Manager UI in Visual Studio. In reality, adding a package reference to a project often comes down to a single line:

    <!-- The line below adds Contoso.HelpfulLibrary NuGet package to the project -->
    <PackageReference Include="Contoso.HelpfulLibrary" Version="1.3.0" />

Once the package reference is in place, Contoso.HelpfulLibrary can be used by the code.

NuGet does all the heavy lifting. It automatically downloads the package (if it is not downloaded yet), adds an assembly reference to the project, copies required package files at the build time and so on.

Development tends to be much easier with NuGet. And even more so since it also allows to consume tools.

Read more »

Automatic Handling of Windows Forms Data Binding

Many users of Eazfuscator.NET use Windows Forms technology to build application UI. Windows Forms provides a set of controls that allows to display data and interact with a user. Sometimes, the displayed data is not set to UI controls directly. A common practice is to use a data binding mechanism that allows to tie the object properties by name. To get property values by name, data binding uses Reflection API.

Consider a simple code that creates a list of products:

class Product  
   public int ID { get; set; }
   public string Title { get; set; }
   public string Description { get; set; }

// …

var products = new List<Product>  
   new Product { ID = 1, Title = "Juice", Description = "Juice description" },
   new Product { ID = 2, Title = "Tea", Description = "Tea description" },
   new Product { ID = 3, Title = "Coffee", Description = "Coffee description" }

Read more »