• ArmDot Home
  • Documentation
  • Tutorial
  • API
  • Download
Show / Hide Table of Contents
  • Getting Started
  • Tutorial
  • MSBuild Obfuscation Task
  • Embedded Files
    • Embedded Files
    • Predefined Directories
  • Key Generators
    • Key Generator for PHP
    • Key Generator for C/C++
  • Command Line Tools
    • ArmDotConsole.exe
  • API
    • ArmDot.Api.Keys
      • LicenseKey
      • LicenseKeyDecoderError
      • LicenseKeyDecoderException
    • ArmDot.Client
      • Api
      • Api.Hardware
      • Api.LicenseKeyState
      • EmbedFileAttribute
      • HideStringsAttribute
      • IntegrityCheckingAttribute
      • ObfuscateControlFlowAttribute
      • ObfuscateNamesAttribute
      • ObfuscateNamespacesAttribute
      • ProtectEmbeddedResourcesAttribute
      • VirtualizeCodeAttribute
    • ArmDot.Engine.MSBuildTasks
      • ObfuscateTask
  • Obfuscation Attributes
  • Stack Trace Deobfuscation
  • ArmDot Warnings
    • How to disable a warning?
    • Warning ARMDOT0001
    • Warning ARMDOT0002
    • Warning ARMDOT0003
    • Warning ARMDOT0004
    • Warning ARMDOT0005
    • Warning ARMDOT0006
    • Warning ARMDOT0007
    • Warning ARMDOT0008
  • Glossary
    • Hardware Id
  • License
  • Activation

ArmDotKeyGen.c

ArmDotKeyGen.c is a source code of a license key generator for ArmDot written in C/C++. One can build this code on a target machine that runs the license key generator.

ArmDotKeyGen.c is installed into ArmDot installation directory, by default ArmDotKeyGen.c is available via the path %ProgramFiles(x86)%\ArmDot\keygens\cpp\ArmDotKeyGen.c or %ProgramFiles%\ArmDot\keygens\cpp\ArmDotKeyGen.c.

Usage

First, you need two parameters, private exponent and modulus, from project file.

Just open *.armdotproj file in your favourite text editor and find the following at the beginning:

<ArmDotProject>
  <Cryptography Method="RSA" PrivateExponent="kR4IbNzzy1J0HKsbm8CfLJget8p8Kh5XeN6kbVXgnoff8YEFjvvvyxopXGbOBdRKCjM2eFNf2fN+8Ed4RJUuL0UnUa98268qFvxM4I3mnhhIgHi9KCCI6dulJlWCJLCwMpIzAq7GLJhdjhNKwS416YwuPsx3SYioybboudS1ok8A"
   Modulus="wbe+R3ci2f5nc/KhoiNfOprHft9dZF8FlpYoRMmpqSm2CiNq2u2QrS65yGm3b1SnoZb+FqdxrQkKjdxl9yQy7hLVzkcWQRfZ13NybN6ipFfV1MBNX6bDZ7q+J+Ka8dPaFBTha5zsO/lDw5aWeallsXj0Eg90bYgKtq3XLbIbEqwA" />

Syntax

ArmDotKeyGen parameters

Parameters

Option Description
--generate-license-key If specified, ArmDotKeyGen generates a license key and writes it to stdout.
--project-private-exponent private exponent Required, if --generate-license-key is used. A private exponent is taken from ArmDot project as shown in Usage section.
--project-modulus modulus Required, if --generate-license-key is used. A modulus is taken from ArmDot project as shown in Usage section.
--license-user-name user name Required, if --generate-license-key is used. ArmDotKeyGen uses this user name to generate a license key.
--license-user-email user email Required, if --generate-license-key is used. ArmDotKeyGen uses this user e-mail to generate a license key.
--license-expiration-date expiration date Optional. Expiration date of a license key. The format is described in Date Format section.
--license-maximum-build-date maximum build date Optional. A license key expires if build date of protected assembly is greater than maximum build date. The format is described in Date Format section.
--license-user-data-base64 user data in base64 Optional. Specifies additional data written to a license key encoded in base64.
--license-hardware-id hardware id Optional. Specifies hardware id to be written to a license key.
--help Displays usage.

Date Format

ArmDotKeyGen use the following format for dates: MM-DD-YYYY.

For example, use 05-01-2018 for 1st May 2018.

Examples

Example 1

ArmDotKeyGen --generate-license-key --license-user-name "username" --license-user-email "useremail" --license-user-data-base64 "MTIz" --license-expiration-date 10-20-2018 --license-maximum-build-date 11-10-2019 --project-private-exponent "edL8Ih6ujMtWwJzmWZLUbKe6Ss45XHaW32RLoakpRJ9RLUqFgCVtABYtFJA/YhSrZG3hVscQJ5mKJsfXrNTanAxrelmMu+31okNdwJzWpEwO/UDxMk/jLQEUj8HUG9FQk+IPr1MKEycfvmdejLpdgN3iyvpx83msdbRk2UsygaQA" --project-modulus "33YwlduPfFKjp1OFRz1LfdaB7i4wH8ebAg8KLY8erFQQZFKSGiFERPyLa4Bfu/nLdoOzlJ7+d7w8RWtyjFG/ye2blg21wQeH7umrKmZ8Q/n1OorTufYwsiegfLBU1MuB2OOTvjhO75RR7mmwlp4ynuKda1iK90DZGv1o5uJBh60A"

Generates a license key that contains user name "username", user e-mail "useremail", user data "123" ("MTIz" is "123" in base64), that expires on 20th October 2018 and doesn't expire for all builds made till 10th November 2019.

Back to top Armdot Home | Copyright © Softanics | Generated by DocFX