Last Modified September 26, 2026

Intro to software_DNA Version 6

  1. DNA Library Version 6 Features
  2. Continue using previous versions ?
  3. Upgrade to Version 6

Version 6 of software_DNA introduces several new capabilities that expands the reach of software_DNA across all connected platforms, including mobile platforms such as Android, and SAAS Web-based Applications.

Version 5.02 Libraries continue to be available and supported for existing and new projects where the Version 6 capabilities are not required, although we recommend that new projects move to the Version 6 platform.

Version 6 also introduces a web-based API Activation process, Web Activation which requires no DNA Library, and uses only HTTPS API Calls to implement software_DNA, and is recommended for SAAS Web-based Applications and for Apps on devices not supported by one of our DNA Libraries.
See WEB SAAS Activation   for details.

 

DNA Library Version 6 Features

Android Support
  • A set of DNA Libraries for the Android platform (ARM 32-bit, ARM 64-bit, Intel 32-bit) that is compatible with Android 5.1 (Lollipop - API22) to the latest Android 11 (API30)
  • Code Sample in Android Studio available for download
  • Guide to add software_DNA to a Android Studio project
MAC OSX - CDM Location with Code Signing

With OSX Code Signing and App Sandbox, the CDM License file cannot be stored in the Package Contents directory of the App, and must be stored in a "User" directory such as the Users directory, accessible only by that "User".

To allow a One License for multiple Users strategy, the <UserID> property can be used to create a unique <machineID> for the different "Users" on the computer.

See CDM Location   for details.

Windows Update transition Support
  • changes the <machineID> algorithm for Windows such that future Windows updates do not trigger a License re-activation
  • ensures that existing Licenses, when performing their next DNA Server Validation, transition to the new <machineID> algorithm without a re-activation
DNA_SetProperties API

A new API to set configuration properties used by the DNA Library providing more flexibility when implementing software_DNA and allows support of special scenarios such as Docker Containers :

  • <CDMPathName> and <INIPathName>
  • <Computer_Name>, used as display information in the DNA Control Panel and the License Manager portal - replaces the default used by the DNA Library
  • properties to control the <machineID> used by the DNA Library and uniquely identifies the device:
    • <deviceID>
    • <UserID>
    • <Computer_Name>

See DNA_SetProperties()   for details.

Windows Do-All

The generic screens of the Windows Do-All have been enhanced for display on 4K monitors

Tweaks and Fixes
  • creation of the <CDMPathName> directory during a DNA_ActivateOffline() API call if the directory does not exist
  • for Level 3 CDM License’s, when past the <validation_limit> and the computer is not connected to the internet, DNA_Validate() will return ERR_CDM _HAS_EXPIRED (15), instead of ERR_NO_CONNECTION (1)
  • if the <product_key> parameter of any API call is not of the correct format, the API call will return ERR_INVALID_PRODUCT_KEY (5) instead of exiting. Note that this would only occur during the initial implementation and design of software_DNA in the App
  • format validation of the <activation_code> during a DNA_ActivateOffline() API call

 

Continue using previous versions ?

If you do not require any of the new Version 6 features, then there is no requirement to migrate to Version 6 as we continue to support the previous versions.

For the following situations, we highly recommend migrating to Version 6:

  • All Windows Applications to eliminate possible license re-activations after a Windows Update

For the following situations, you should consider migrating to Version 6:

  • MAC OSX Applications with Code Signing, offering a "One License per Computer" and wanting to support having multiple "Users" on the same MAC Computer

 

Upgrade to Version 6

Because Version 6 is completely backward compatible to Version 5.02, it’s easy to update your App to Version 6:

  • update the DNA Library in your project
  • update the DNA_INT file in your project
  • update the MD5 or SHA1 Hash code if you are authenticating the DNA Library
  • re-compile and test
  • ensure your installation script keeps the existing CDM License file to avoid a License re-activation
  • release

If updating from Version 4, then Users would need to re-activate their license as Version 5.02 introduced a change in the <machineID> hash.