Skip to content

Requirements Setup

Qrypt edited this page Sep 23, 2022 · 6 revisions

This page should help you get set up with all of the requirements to build and use qryptoki!

Third-party libraries

libcurl, OpenSSL, and RapidJSON

On Ubuntu:

apt update
apt install libcurl4-openssl-dev libssl-dev rapidjson-dev

On Fedora...

dnf install libcurl-devel openssl-devel rapidjson-devel

CMake

If you have CMake>=3.19 already, skip. Otherwise, download the latest version from the official website. Remember to add the executable to your PATH. Here's an example install (it would make sense to start one level above this project's root directory):

wget https://cmake.org/files/v3.24/cmake-3.24.1-linux-x86_64.tar.gz
tar -xzvf cmake-3.24.1-linux-x86_64.tar.gz && rm -f cmake-3.24.1-linux-x86_64.tar.gz
export PATH="$PATH:/absolute/path/to/cmake-3.24.1-linux-x86_64/bin"
cmake --version

GTest and GMock

Again, consider starting one level above this project's root directory.

apt-get -y install git build-essential
git clone https://github.com/google/googletest -b release-1.12.0
cd googletest
mkdir build && cd build
cmake .. && make && sudo make install

Base HSM Example: SoftHSM

(If you already have a PKCS#11 library for qryptoki to wrap, go ahead and skip this step.)

SoftHSM is an open-source PKCS#11 library that needs no special hardware, so it is a great way to get started with qryptoki! Grab the latest release from their website and follow the installation instructions on GitHub.

Quick version (again starting one level above this project's root directory):

wget https://dist.opendnssec.org/source/softhsm-2.6.1.tar.gz
tar -xzvf softhsm-2.6.1.tar.gz && rm softhsm-2.6.1.tar.gz
cd softhsm-2.6.1
./configure
make
sudo make install

Obtain a Qrypt Entropy Token

  • Sign in to portal.qrypt.com. (If you don't already have an account, create one for free!)
  • Go to the Tokens page.
  • Fill out a Token Name, set Scope to "Entropy", and choose a Duration.
  • Click Generate token.
Screen Shot 2022-08-19 at 4 16 38 PM
Clone this wiki locally