Prerequisites
What you need to build and test the service. This applies to the current state of this repository; the build is verified with Rust 1.88.
For both forms
- Rust through
rustup, stable channel, edition 2021. - OpenSSL 3.5 or later. OpenSSL includes ML-DSA and ML-KEM starting with 3.5. The delivered packages are built with 3.6.0. OpenSSL 3.0 through 3.4, as shipped by many Linux distributions, isn't enough: every post-quantum request then fails with an error.
- Python 3.8 or later, only for the check scripts in
tools/.
L4Re form
The L4Re form doesn't need a separately installed OpenSSL. By default, it builds OpenSSL 3.5.4 from source. For that you need:
| Host | Tools |
|---|---|
| Windows | Visual Studio 2022 or the Build Tools with the “Desktop development with C++” workload; Strawberry Perl. The Perl that ships with Git for Windows or MSYS2 won't work. |
| Linux | gcc, make, perl |
| Linux, aarch64 target | additionally gcc-aarch64-linux-gnu and rustup target add aarch64-unknown-linux-gnu |
The first build compiles OpenSSL and therefore takes considerably longer than later builds.
To actually run on L4Re, you also need the L4Re SDK, a Rust target for L4Re, and your platform vendor's
DataspaceEndpoint library; see Deployment forms compared.
Windows form
- Visual Studio 2022 or the Build Tools with the “Desktop development with C++” workload.
- A prebuilt OpenSSL 3.5 or later for Windows x64 with headers (
include\) and libraries (lib\libcrypto.lib,lib\libssl.lib). A runtime-only installation that contains just DLLs isn't enough. For how to point the build at it, see Use your own OpenSSL build.
Next step
en/wiki/pqcrypt/svc/getting-started/prerequisites.txt · Last modified: by Wolfgang van der Stille