Create License Keys

You will learn to generate the public/secret key-pair that you need to authenticate with Roq’s license server.

Introduction

There are different ways to use Roq’s software

  • If you want to evaluate a limited version of the software: Just download and start using.

    Note

    The software does not contact Roq’s license server if you don’t add the --auth_keys_file flag.

  • If you want to evaluate the software for a short period of time: Contact Roq to get a test license.

  • If you want to use up to N gateways in production: Contact Roq to discuss a license agreement.

For the latter options, you need to create keys as described in this document.

Conda

Follow the next steps to create a conda environment. (You will need this to install the roq-tools package.)

Download Miniforge

$ curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"

Install Conda (does NOT require root access!)

$ bash Miniforge3-Linux-x86_64.sh -b -p opt/conda

Activate Conda’s root environment

$ source opt/conda/bin/activate

Create a new virtual environment

$ conda create -y -n test

Activate the new environment

$ conda activate test

Create the Keys

Install roq-tools from Roq’s unstable channel

$ conda install -y -c https://roq-trading.com/conda/unstable roq-tools

Use libsodium to generate the keys

$ roq-keygen > $HOME/roq_auth_keys.json

Extract the public key

$ sed -n 's/.*public_key":"\([a-zA-Z0-9+-=]*\)".*/\1\n/p' $HOME/roq_auth_keys.json

gV-eYO8TQqu4OGbNgsQu7F4vjzMcvhGA7td8MEEf3Bc=

Examples

Authenticate a gateway

$ roq-deribit --auth_keys_file $HOME/roq_auth_keys.json ...

Query the license server

$ roq-auth --auth_keys_file $HOME/roq_auth_keys.json deployment