This project provides sample code to perform 5G suci-deconcealment with pqc profile
Luna PQC SUCI Deconcealment Samples provide sample codes for 5G crypto w/ ML-KEM-768 (SUCI-deconcealment) using cryptographic keys (X25519 and ML-KEM-768) on Luna Network HSMs with PQCFM.
These operations require to create partitions, register clients, initialize user roles, etc. These tasks can be performed using:
- Operating System:
- Linux RHEL 9 or similar
- Thales software:
- Client 10.7.1.
- Appliance 7.7.1 or later.
- Firmware 7.7.1 or later.
- PQC FM 3.1.
-
Development tools:
- Linux:
- gcc 11.3.1
- cmake3 3.20.2.
- common UNIX commands.
- Linux:
-
Pre-requisite software:
- OpenSSL 3.4.x
- liboqs 0.12.0
- oqs-provider 0.8.0
This project uses cmake. Following variables can be used to configure the build. Uses find_package() for requred packages
- Build configuration
- pqcfm_INCLUDES: (Required) /path/to/pqcfm-toolkit/include
- OPENSSL_ROOT_DIR: (Optional) /path/to/openssl-prefix/
- liboqs_INCLUDES: (Optional) /path/to/liboqs/includes/
- liboqs_LIBRARY_STATIC: (Optional) /path/to/liboqs/lib64/liboqs.a
-
Configure with cmake mkdir build && cd build cmake .. -Dpqcfm_INCLUDES=/root/630-000496-004_SW_LUNA_PQCFM_TOOLKIT_V3.1_CUSTOM_RELEASE/include -DCMAKE_BUILD_TYPE=Release -DOPENSSL_ROOT_DIR=/opt/openssl-3.4.1 -Dliboqs_INCLUDES=/opt/liboqs/include -Dliboqs_LIBRARY_STATIC=/opt/liboqs/lib64/liboqs.a
-
make
./sim_encrypt: To simulate encryption (suci-concealment) on 5G SIM ./hsm_decrypt: Decrypt ciphertext (suci-deconcealment) using Luna HSM /w PQC FM (Keys in HW) ./sw_decrypt: Decrypt ciphertext (suci-deconcealment) using OpenSSL (OpenSSL SW keys)
If you are interested in contributing to this project, please read the Contributing guide.
This software is provided under a permissive license.