Tutorial to Use qFALL Libraries
by Marvin Beckmann, Phil Milewski, Sven Kilian Moog, Marcel Luca Schmidt, and Jan Niklas Siemer.
This tutorial shall give you a brief introduction on how to work with the software developed by qFALL. qFALL is a group of students developing a prototyping library for lattice cryptography organized by the Codes and Cryptography research group in Paderborn.
Our libraries are written in Rust, as well as the following examples. Thus, we require some experience with Rust and its concepts to properly understand the following sections. Otherwise, we recommend starting with some hands-on experience with Rust by reading the Rust book.
First, we start with a guide on how to install and add our libraries to your project.
Afterward, we briefly describe the central concepts of our two co-developed libraries.
The first one is our math-crate, which contains all the mathematical features required to implement lattice-based cryptography and more.
The second library, called crypto-crate, includes an overview of the cryptographic schemes and specific mathematical primitives for lattice-based cryptography available so far.
At the end, we present some more advanced features like benchmarking and serialization features, which are available in both crates.