A permutation defines a unique one way transformation that Code Protector will use to transform the CIL code of your assemblies so that the protected assemblies cannot be reverse engineered. The permutation also contains the runtime components required to run protected and/or licensed code.
Before you can implement code protection or licensing in your application you will need to create a permutation that will be used to protect and/or license your product.
It is recommended that a separate permutation is used to protect/license each product defined in the Software Potential service.
To create a Permutation that will be used to protect your application:
- Select Develop → Manage Permutations in the main navigation.
- Click the + New button to launch New Permutation form.
- Enter a name for your permutation and click Save. (This name is purely a nickname used to identify it on menus, grids or tables should you have multiple permutations in your account. We recommend you use a name related to the product you'll be protecting.)
It may take a minute or so for your permutation to generate. Click Refresh periodically to check the progress of the generation process.
When the Status field shows Done the permutation has been successfully generated. You can see the new version number in the Version column.
Each permutation is uniquely identified by its Short Code which consists of the first five characters of the Permutation ID field. For example, a Permutation whose ID is e9dc24g07-d195-4658-a312-82132945711d has a Short Code of e9dc2.
To avail of new functionality in the Runtime or Code Protector tooling you need to first update your permutation(s) in the Software Potential Service.
If you are using the older SLP Runtime (aka Microsoft.Licensing runtime) the new version of the permutation will replace the previous version. Once the permutation is updated you cannot download the runtime and Code Protector components of the previous version. It is recommended you take a backup of the currently installed Code Protector MSI and Permutation file BEFORE you update your permutation.
To update a permutation:
- Select Develop and then Manage Permutations in main navigation panel.
This will display a table of all available permutations with the permutation version shown in the Version column in the table.
- Select the permutation to be upgraded – the selected permutation will be highlighted in the table of available permutations.
- Click Update – the Status field of the permutation should change to Pending.
It may take a minute or so for your permutation to update. Click Refresh periodically to check the progress of the update process.
When the Status field shows Done the permutation has been successfully updated. You can see the new version number in the Version column.
Access the Permutation Tooling and Runtime Components
You can access the SpAgent tooling and runtime components of the permutation via the Software Potential NuGet feed as per the Installing NuGet Packages section in either Getting Started With Protection or Getting started With Licensing.
If you are using the older SLP Runtime (aka Microsoft.Licensing runtime) you should follow the steps outlined in Install Code Protector and Permutation.