linphone-sdk/postquantumcryptoengine
2025-06-16 13:25:27 +07:00
..
doc 5.3.73 2025-06-16 13:25:27 +07:00
include 5.3.73 2025-06-16 13:25:27 +07:00
src 5.3.73 2025-06-16 13:25:27 +07:00
tester 5.3.73 2025-06-16 13:25:27 +07:00
CMakeLists.txt 5.3.73 2025-06-16 13:25:27 +07:00
config.h.cmake 5.3.73 2025-06-16 13:25:27 +07:00
LICENSE.txt 5.3.73 2025-06-16 13:25:27 +07:00
PostQuantumCryptoEngineConfig.cmake.in 5.3.73 2025-06-16 13:25:27 +07:00
README.md 5.3.73 2025-06-16 13:25:27 +07:00

pipeline status

PostQuantumCryptoEngine

Extension to the bctoolbox lib providing Post Quantum Cryptography. Provides:

  • Kyber 512, 768 and 1024
  • HQC 128, 192 and 256 (NIST round 3 version)
  • X25519 and X448 in KEM version and a way to combine two or more of theses.

Licensing

Copyright © Belledonne Communications

PostQuantumCryptoEngine is dual licensed, and is available either :

  • under a GNU/GPLv3 license, for free (open source). Please make sure that you understand and agree with the terms of this license before using it (see LICENSE.txt file for details).

  • under a proprietary license, for a fee, to be used in closed source applications. Contact Belledonne Communications for any question about costs and services.

Depends

  • liboqs[1]: implementation of a collection of Post Quantum algorithms
  • bctoolbox[2]

To compile

cmake . -DCMAKE_INSTALL_PREFIX=<install prefix> -DCMAKE_PREFIX_PATH=<search prefix>

make
make install

To make an rpm package

cmake . -DCMAKE_INSTALL_PREFIX=/usr -DCPACK_GENERATOR="RPM"

make package

Options

  • CMAKE_INSTALL_PREFIX=<string>: install prefix.
  • CMAKE_PREFIX_PATH=<string>: search path prefix for dependencies e.g. mbedtls.
  • ENABLE_STRICT=NO: do not build with strict compilator flags e.g. -Wall -Werror.
  • ENABLE_UNIT_TESTS=NO: do not build testing binaries.

Note for packagers

Our CMake scripts may automatically add some paths into research paths of generated binaries. To ensure that the installed binaries are striped of any rpath, use -DCMAKE_SKIP_INSTALL_RPATH=ON while you invoke cmake.