Download the PHP package guycalledseven/php-ext-oqs without Composer

On this page you can find all versions of the php package guycalledseven/php-ext-oqs. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package php-ext-oqs

php-ext-oqs: post-quantum cryptography for PHP

alt text

Native PHP extension for post-quantum key encapsulation (ML-KEM) and signatures (ML-DSA, SLH-DSA), with liboqs built in.

php-ext-oqs is a native extension (no FFI) built on the C library liboqs from the Open Quantum Safe (OQS) project. The prebuilt binaries contain liboqs, so there is no system library to install.

Status: experimental. liboqs states that it is meant for research and prototyping and is not currently recommended for production use or for protecting sensitive data. The same applies to this extension, which has not been independently audited.

It provides an object-oriented API for the NIST-standardized PQC algorithms ML-KEM (Kyber), ML-DSA (Dilithium), SLH-DSA (SPHINCS+), and other algorithms supported by liboqs.

Influenced and inspired by great DEF CON 33 - Post Quantum Panic talk by K Karagiannis.

Features

Requirements

Project files

Roadmap

Development Notes

Installation

Every release ships prebuilt binaries. They contain liboqs, so there is nothing to compile and no library to install.

Platform PHP Asset
Linux x86_64 (glibc 2.34+: Debian 12+, Ubuntu 22.04+, RHEL 9+, official php Docker images) 8.1 - 8.5 NTS php_oqs-<version>_php<X.Y>-x86_64-linux-glibc.zip
Linux arm64 (same) 8.1 - 8.5 NTS php_oqs-<version>_php<X.Y>-arm64-linux-glibc.zip
macOS 13+ Apple Silicon 8.1 - 8.5 NTS php_oqs-<version>_php<X.Y>-arm64-darwin-bsdlibc.zip

Not covered yet: Alpine (musl), thread-safe (ZTS) PHP, Intel Macs, Windows. On those, build from source (below).

With PIE

PIE picks the right binary for your PHP, installs it and enables it:

If there is no binary for your platform, PIE falls back to a source build. That needs liboqs on the system and its location: pie install guycalledseven/php-ext-oqs --with-oqs=/usr/local.

Manual download

Then enable it by adding extension=oqs to a php.ini (php --ini lists the files in use), and check:

macOS only: a file downloaded with a browser is quarantined, clear that once with xattr -d com.apple.quarantine "$(php -r 'echo ini_get("extension_dir");')/oqs.so".

In a Dockerfile

Building from source

The release binaries are produced by ci/build.sh, which builds liboqs and the extension in a scratch directory, runs the tests and writes the zip to dist/:

The manual steps follow.

Debian:

macOS:

Build liboqs for static linking

Install liboqs into a prefix outside this directory. make clean deletes every *.a below the extension directory, which would silently remove a liboqs installed inside it.

build php extension

An explicit --with-oqs=DIR always wins over pkg-config. If DIR/lib/liboqs.a exists it is linked statically (-force_load on macOS, --whole-archive on Linux); configure fails if DIR contains no liboqs at all.

confirm if static

Check which liboqs actually got linked (headers and library versions must agree):

Build the extension with dynamically linked liboqs (optional)

Build liboqs

Build extension

Test and use

php -q --info

test in browser with phpinfo

macOS config after setup

A Stub & Docs Generator Script

Generate the IDE stub file:

Generate the Markdown file: (This command is unchanged)

Test if working

Debugging

macOS:

linux:

Important Security Point - clarification of the role of a KDF

KEM implementation returns a raw shared secret. In practice, this shared secret should almost never be used directly as an encryption key. It should be used as input to a Key Derivation Function (KDF) like HKDF to produce keys of the desired length and properties.

It is strongly recommended to use PHP's built-in hash_hkdf() function.

Quick start

3. Algorithm Details

You can retrieve detailed metadata about an algorithm using the details() method.

PHP API test

Comparation with similar php extension php-liboqs:

Global Constants

These constants provide version information for the underlying liboqs C library that the extension was compiled against.

Constant Name Value
Oqs\VERSION_MAJOR 0
Oqs\VERSION_MINOR 16
Oqs\VERSION_PATCH 0
Oqs\VERSION_TEXT 0.16.0

Oqs\Kem Constants

Constant Name Algorithm Value
ALG_BIKE_L1 BIKE-L1
ALG_BIKE_L3 BIKE-L3
ALG_BIKE_L5 BIKE-L5
ALG_CLASSIC_MCELIECE_348864 Classic-McEliece-348864
ALG_CLASSIC_MCELIECE_348864F Classic-McEliece-348864f
ALG_CLASSIC_MCELIECE_460896 Classic-McEliece-460896
ALG_CLASSIC_MCELIECE_460896F Classic-McEliece-460896f
ALG_CLASSIC_MCELIECE_6688128 Classic-McEliece-6688128
ALG_CLASSIC_MCELIECE_6688128F Classic-McEliece-6688128f
ALG_CLASSIC_MCELIECE_6960119 Classic-McEliece-6960119
ALG_CLASSIC_MCELIECE_6960119F Classic-McEliece-6960119f
ALG_CLASSIC_MCELIECE_8192128 Classic-McEliece-8192128
ALG_CLASSIC_MCELIECE_8192128F Classic-McEliece-8192128f
ALG_EFRODOKEM_1344_AES eFrodoKEM-1344-AES
ALG_EFRODOKEM_1344_SHAKE eFrodoKEM-1344-SHAKE
ALG_EFRODOKEM_640_AES eFrodoKEM-640-AES
ALG_EFRODOKEM_640_SHAKE eFrodoKEM-640-SHAKE
ALG_EFRODOKEM_976_AES eFrodoKEM-976-AES
ALG_EFRODOKEM_976_SHAKE eFrodoKEM-976-SHAKE
ALG_FRODOKEM_1344_AES FrodoKEM-1344-AES
ALG_FRODOKEM_1344_SHAKE FrodoKEM-1344-SHAKE
ALG_FRODOKEM_640_AES FrodoKEM-640-AES
ALG_FRODOKEM_640_SHAKE FrodoKEM-640-SHAKE
ALG_FRODOKEM_976_AES FrodoKEM-976-AES
ALG_FRODOKEM_976_SHAKE FrodoKEM-976-SHAKE
ALG_HQC_1 HQC-1
ALG_HQC_3 HQC-3
ALG_HQC_5 HQC-5
ALG_KYBER1024 Kyber1024
ALG_KYBER512 Kyber512
ALG_KYBER768 Kyber768
ALG_ML_KEM_1024 ML-KEM-1024
ALG_ML_KEM_512 ML-KEM-512
ALG_ML_KEM_768 ML-KEM-768
ALG_NTRU_HPS_2048_509 NTRU-HPS-2048-509
ALG_NTRU_HPS_2048_677 NTRU-HPS-2048-677
ALG_NTRU_HPS_4096_1229 NTRU-HPS-4096-1229
ALG_NTRU_HPS_4096_821 NTRU-HPS-4096-821
ALG_NTRU_HRSS_1373 NTRU-HRSS-1373
ALG_NTRU_HRSS_701 NTRU-HRSS-701
ALG_SNTRUP761 sntrup761

Oqs\Sig Constants

Constant Name Algorithm Value
ALG_CROSS_RSDPG_128_BALANCED cross-rsdpg-128-balanced
ALG_CROSS_RSDPG_128_FAST cross-rsdpg-128-fast
ALG_CROSS_RSDPG_128_SMALL cross-rsdpg-128-small
ALG_CROSS_RSDPG_192_BALANCED cross-rsdpg-192-balanced
ALG_CROSS_RSDPG_192_FAST cross-rsdpg-192-fast
ALG_CROSS_RSDPG_192_SMALL cross-rsdpg-192-small
ALG_CROSS_RSDPG_256_BALANCED cross-rsdpg-256-balanced
ALG_CROSS_RSDPG_256_FAST cross-rsdpg-256-fast
ALG_CROSS_RSDPG_256_SMALL cross-rsdpg-256-small
ALG_CROSS_RSDP_128_BALANCED cross-rsdp-128-balanced
ALG_CROSS_RSDP_128_FAST cross-rsdp-128-fast
ALG_CROSS_RSDP_128_SMALL cross-rsdp-128-small
ALG_CROSS_RSDP_192_BALANCED cross-rsdp-192-balanced
ALG_CROSS_RSDP_192_FAST cross-rsdp-192-fast
ALG_CROSS_RSDP_192_SMALL cross-rsdp-192-small
ALG_CROSS_RSDP_256_BALANCED cross-rsdp-256-balanced
ALG_CROSS_RSDP_256_FAST cross-rsdp-256-fast
ALG_CROSS_RSDP_256_SMALL cross-rsdp-256-small
ALG_FALCON_1024 Falcon-1024
ALG_FALCON_512 Falcon-512
ALG_FALCON_PADDED_1024 Falcon-padded-1024
ALG_FALCON_PADDED_512 Falcon-padded-512
ALG_MAYO_1 MAYO-1
ALG_MAYO_2 MAYO-2
ALG_MAYO_3 MAYO-3
ALG_MAYO_5 MAYO-5
ALG_ML_DSA_44 ML-DSA-44
ALG_ML_DSA_65 ML-DSA-65
ALG_ML_DSA_87 ML-DSA-87
ALG_MQOM2_CAT1_GF16_FAST_R3 mqom2_cat1_gf16_fast_r3
ALG_MQOM2_CAT1_GF16_FAST_R5 mqom2_cat1_gf16_fast_r5
ALG_MQOM2_CAT1_GF16_SHORT_R3 mqom2_cat1_gf16_short_r3
ALG_MQOM2_CAT1_GF16_SHORT_R5 mqom2_cat1_gf16_short_r5
ALG_MQOM2_CAT3_GF16_FAST_R3 mqom2_cat3_gf16_fast_r3
ALG_MQOM2_CAT3_GF16_FAST_R5 mqom2_cat3_gf16_fast_r5
ALG_MQOM2_CAT3_GF16_SHORT_R3 mqom2_cat3_gf16_short_r3
ALG_MQOM2_CAT3_GF16_SHORT_R5 mqom2_cat3_gf16_short_r5
ALG_MQOM2_CAT5_GF16_FAST_R3 mqom2_cat5_gf16_fast_r3
ALG_MQOM2_CAT5_GF16_FAST_R5 mqom2_cat5_gf16_fast_r5
ALG_MQOM2_CAT5_GF16_SHORT_R3 mqom2_cat5_gf16_short_r3
ALG_MQOM2_CAT5_GF16_SHORT_R5 mqom2_cat5_gf16_short_r5
ALG_OV_III OV-III
ALG_OV_III_PKC OV-III-pkc
ALG_OV_III_PKC_SKC OV-III-pkc-skc
ALG_OV_IP OV-Ip
ALG_OV_IP_PKC OV-Ip-pkc
ALG_OV_IP_PKC_SKC OV-Ip-pkc-skc
ALG_OV_IS OV-Is
ALG_OV_IS_PKC OV-Is-pkc
ALG_OV_IS_PKC_SKC OV-Is-pkc-skc
ALG_OV_V OV-V
ALG_OV_V_PKC OV-V-pkc
ALG_OV_V_PKC_SKC OV-V-pkc-skc
ALG_SLH_DSA_PURE_SHA2_128F SLH_DSA_PURE_SHA2_128F
ALG_SLH_DSA_PURE_SHA2_128S SLH_DSA_PURE_SHA2_128S
ALG_SLH_DSA_PURE_SHA2_192F SLH_DSA_PURE_SHA2_192F
ALG_SLH_DSA_PURE_SHA2_192S SLH_DSA_PURE_SHA2_192S
ALG_SLH_DSA_PURE_SHA2_256F SLH_DSA_PURE_SHA2_256F
ALG_SLH_DSA_PURE_SHA2_256S SLH_DSA_PURE_SHA2_256S
ALG_SLH_DSA_PURE_SHAKE_128F SLH_DSA_PURE_SHAKE_128F
ALG_SLH_DSA_PURE_SHAKE_128S SLH_DSA_PURE_SHAKE_128S
ALG_SLH_DSA_PURE_SHAKE_192F SLH_DSA_PURE_SHAKE_192F
ALG_SLH_DSA_PURE_SHAKE_192S SLH_DSA_PURE_SHAKE_192S
ALG_SLH_DSA_PURE_SHAKE_256F SLH_DSA_PURE_SHAKE_256F
ALG_SLH_DSA_PURE_SHAKE_256S SLH_DSA_PURE_SHAKE_256S
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_128F SLH_DSA_SHA2_224_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_128S SLH_DSA_SHA2_224_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_192F SLH_DSA_SHA2_224_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_192S SLH_DSA_SHA2_224_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_256F SLH_DSA_SHA2_224_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_224_PREHASH_SHA2_256S SLH_DSA_SHA2_224_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_128F SLH_DSA_SHA2_224_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_128S SLH_DSA_SHA2_224_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_192F SLH_DSA_SHA2_224_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_192S SLH_DSA_SHA2_224_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_256F SLH_DSA_SHA2_224_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_224_PREHASH_SHAKE_256S SLH_DSA_SHA2_224_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_128F SLH_DSA_SHA2_256_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_128S SLH_DSA_SHA2_256_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_192F SLH_DSA_SHA2_256_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_192S SLH_DSA_SHA2_256_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_256F SLH_DSA_SHA2_256_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_256_PREHASH_SHA2_256S SLH_DSA_SHA2_256_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_128F SLH_DSA_SHA2_256_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_128S SLH_DSA_SHA2_256_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_192F SLH_DSA_SHA2_256_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_192S SLH_DSA_SHA2_256_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_256F SLH_DSA_SHA2_256_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_256_PREHASH_SHAKE_256S SLH_DSA_SHA2_256_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_128F SLH_DSA_SHA2_384_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_128S SLH_DSA_SHA2_384_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_192F SLH_DSA_SHA2_384_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_192S SLH_DSA_SHA2_384_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_256F SLH_DSA_SHA2_384_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_384_PREHASH_SHA2_256S SLH_DSA_SHA2_384_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_128F SLH_DSA_SHA2_384_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_128S SLH_DSA_SHA2_384_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_192F SLH_DSA_SHA2_384_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_192S SLH_DSA_SHA2_384_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_256F SLH_DSA_SHA2_384_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_384_PREHASH_SHAKE_256S SLH_DSA_SHA2_384_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_128F SLH_DSA_SHA2_512_224_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_128S SLH_DSA_SHA2_512_224_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_192F SLH_DSA_SHA2_512_224_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_192S SLH_DSA_SHA2_512_224_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_256F SLH_DSA_SHA2_512_224_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHA2_256S SLH_DSA_SHA2_512_224_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128F SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128S SLH_DSA_SHA2_512_224_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192F SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192S SLH_DSA_SHA2_512_224_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256F SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256S SLH_DSA_SHA2_512_224_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_128F SLH_DSA_SHA2_512_256_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_128S SLH_DSA_SHA2_512_256_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_192F SLH_DSA_SHA2_512_256_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_192S SLH_DSA_SHA2_512_256_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_256F SLH_DSA_SHA2_512_256_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHA2_256S SLH_DSA_SHA2_512_256_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128F SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128S SLH_DSA_SHA2_512_256_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192F SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192S SLH_DSA_SHA2_512_256_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256F SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256S SLH_DSA_SHA2_512_256_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_128F SLH_DSA_SHA2_512_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_128S SLH_DSA_SHA2_512_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_192F SLH_DSA_SHA2_512_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_192S SLH_DSA_SHA2_512_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_256F SLH_DSA_SHA2_512_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA2_512_PREHASH_SHA2_256S SLH_DSA_SHA2_512_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_128F SLH_DSA_SHA2_512_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_128S SLH_DSA_SHA2_512_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_192F SLH_DSA_SHA2_512_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_192S SLH_DSA_SHA2_512_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_256F SLH_DSA_SHA2_512_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA2_512_PREHASH_SHAKE_256S SLH_DSA_SHA2_512_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_128F SLH_DSA_SHA3_224_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_128S SLH_DSA_SHA3_224_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_192F SLH_DSA_SHA3_224_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_192S SLH_DSA_SHA3_224_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_256F SLH_DSA_SHA3_224_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA3_224_PREHASH_SHA2_256S SLH_DSA_SHA3_224_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_128F SLH_DSA_SHA3_224_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_128S SLH_DSA_SHA3_224_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_192F SLH_DSA_SHA3_224_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_192S SLH_DSA_SHA3_224_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_256F SLH_DSA_SHA3_224_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA3_224_PREHASH_SHAKE_256S SLH_DSA_SHA3_224_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_128F SLH_DSA_SHA3_256_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_128S SLH_DSA_SHA3_256_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_192F SLH_DSA_SHA3_256_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_192S SLH_DSA_SHA3_256_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_256F SLH_DSA_SHA3_256_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA3_256_PREHASH_SHA2_256S SLH_DSA_SHA3_256_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_128F SLH_DSA_SHA3_256_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_128S SLH_DSA_SHA3_256_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_192F SLH_DSA_SHA3_256_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_192S SLH_DSA_SHA3_256_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_256F SLH_DSA_SHA3_256_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA3_256_PREHASH_SHAKE_256S SLH_DSA_SHA3_256_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_128F SLH_DSA_SHA3_384_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_128S SLH_DSA_SHA3_384_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_192F SLH_DSA_SHA3_384_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_192S SLH_DSA_SHA3_384_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_256F SLH_DSA_SHA3_384_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA3_384_PREHASH_SHA2_256S SLH_DSA_SHA3_384_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_128F SLH_DSA_SHA3_384_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_128S SLH_DSA_SHA3_384_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_192F SLH_DSA_SHA3_384_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_192S SLH_DSA_SHA3_384_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_256F SLH_DSA_SHA3_384_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA3_384_PREHASH_SHAKE_256S SLH_DSA_SHA3_384_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_128F SLH_DSA_SHA3_512_PREHASH_SHA2_128F
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_128S SLH_DSA_SHA3_512_PREHASH_SHA2_128S
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_192F SLH_DSA_SHA3_512_PREHASH_SHA2_192F
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_192S SLH_DSA_SHA3_512_PREHASH_SHA2_192S
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_256F SLH_DSA_SHA3_512_PREHASH_SHA2_256F
ALG_SLH_DSA_SHA3_512_PREHASH_SHA2_256S SLH_DSA_SHA3_512_PREHASH_SHA2_256S
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_128F SLH_DSA_SHA3_512_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_128S SLH_DSA_SHA3_512_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_192F SLH_DSA_SHA3_512_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_192S SLH_DSA_SHA3_512_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_256F SLH_DSA_SHA3_512_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHA3_512_PREHASH_SHAKE_256S SLH_DSA_SHA3_512_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_128F SLH_DSA_SHAKE_128_PREHASH_SHA2_128F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_128S SLH_DSA_SHAKE_128_PREHASH_SHA2_128S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_192F SLH_DSA_SHAKE_128_PREHASH_SHA2_192F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_192S SLH_DSA_SHAKE_128_PREHASH_SHA2_192S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_256F SLH_DSA_SHAKE_128_PREHASH_SHA2_256F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHA2_256S SLH_DSA_SHAKE_128_PREHASH_SHA2_256S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_128F SLH_DSA_SHAKE_128_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_128S SLH_DSA_SHAKE_128_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_192F SLH_DSA_SHAKE_128_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_192S SLH_DSA_SHAKE_128_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_256F SLH_DSA_SHAKE_128_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHAKE_128_PREHASH_SHAKE_256S SLH_DSA_SHAKE_128_PREHASH_SHAKE_256S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_128F SLH_DSA_SHAKE_256_PREHASH_SHA2_128F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_128S SLH_DSA_SHAKE_256_PREHASH_SHA2_128S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_192F SLH_DSA_SHAKE_256_PREHASH_SHA2_192F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_192S SLH_DSA_SHAKE_256_PREHASH_SHA2_192S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_256F SLH_DSA_SHAKE_256_PREHASH_SHA2_256F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHA2_256S SLH_DSA_SHAKE_256_PREHASH_SHA2_256S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_128F SLH_DSA_SHAKE_256_PREHASH_SHAKE_128F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_128S SLH_DSA_SHAKE_256_PREHASH_SHAKE_128S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_192F SLH_DSA_SHAKE_256_PREHASH_SHAKE_192F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_192S SLH_DSA_SHAKE_256_PREHASH_SHAKE_192S
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_256F SLH_DSA_SHAKE_256_PREHASH_SHAKE_256F
ALG_SLH_DSA_SHAKE_256_PREHASH_SHAKE_256S SLH_DSA_SHAKE_256_PREHASH_SHAKE_256S
ALG_SNOVA_24_5_4 SNOVA_24_5_4
ALG_SNOVA_24_5_4_ESK SNOVA_24_5_4_esk
ALG_SNOVA_24_5_4_SHAKE SNOVA_24_5_4_SHAKE
ALG_SNOVA_24_5_4_SHAKE_ESK SNOVA_24_5_4_SHAKE_esk
ALG_SNOVA_24_5_5 SNOVA_24_5_5
ALG_SNOVA_25_8_3 SNOVA_25_8_3
ALG_SNOVA_29_6_5 SNOVA_29_6_5
ALG_SNOVA_37_17_2 SNOVA_37_17_2
ALG_SNOVA_37_8_4 SNOVA_37_8_4
ALG_SNOVA_49_11_3 SNOVA_49_11_3
ALG_SNOVA_56_25_2 SNOVA_56_25_2
ALG_SNOVA_60_10_4 SNOVA_60_10_4

All versions of php-ext-oqs with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package guycalledseven/php-ext-oqs contains the following files

Loading the files please wait ...