Quantum Blockchains

Our implementation of CRYSTALS-Dilithium in Rust opens many new doors...

Lattice-based cryptography is a class of cryptographic methods that rely on the mathematical structure of lattice problems for their security. A lattice is a regular grid of points in a multi-dimensional space, and certain problems related to lattices are believed to be hard to solve, even with quantum computers. This makes lattice-based cryptography a promising alternative to traditional cryptographic methods that may be vulnerable to quantum attacks.

Dilithium is one of the lattice-based cryptographic schemes, specifically designed as a digital signature algorithm. Its security is based on the hardness of two lattice problems: the Short Integer Solution (SIS) problem and the Learning With Errors (LWE) problem. Both of these problems are considered hard to solve, even with quantum computers.

As of October 2023, NIST has not yet released any final PQC standards, but it has published draft standards for three of the four algorithms it selected in 2022: CRYSTALS-Dilithium, CRYSTALS-KYBER, and SPHINCS+. These draft standards are currently open for public comment until November 22, 2023.

In our cryptographic works we focus on Crystals. Dilithium was implemented for our QSB, while KYBER is used by pQKD.


Commands of “crypto” Rust made console app

generate – generate key pair:

crypto generate --algorithm dilithium5 --out key.pem

pull the public key from the pair:

crypto public --in key.pem --out pub.pem

sign a file:

crypto sign --sec key.pem --out signature --file <PATH>

verify the file:

crypto verify --sig signature --pub pub.pem --file <PATH>

If you are interested in our PQC implementations or would like to receive more information about them, please fill out the form below:

    Skip to content