From d552e3a55985e5a2396545d744be0a01321ddbc3 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Sat, 9 Aug 2025 14:41:19 -0400 Subject: [PATCH 1/6] Version 0.14 Signed-off-by: Vlad Gheorghiu --- CHANGES.md | 8 ++++- RELEASE.md | 12 ++----- oqs/oqs.py | 93 ++++++++++++++++++++++++++++++++++++++++-------------- 3 files changed, 79 insertions(+), 34 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 0e9fd4e..f304b86 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,4 +1,4 @@ -# Pre-release +# Version 0.14.0 - August 9, 2025 - Added type checking and automatic linting/formatting, https://github.com/open-quantum-safe/liboqs-python/pull/97 - Added a utility function for de-structuring version strings in `oqs.py` @@ -6,6 +6,12 @@ containing the (major, minor, patch) versions - A warning is issued only if the liboqs-python version's major and minor numbers differ from those of liboqs, ignoring the patch version +- Added stateful signature support via the `StatefulSignature` class +- New enumeration helpers `get_enabled_stateful_sig_mechanisms()` and + `get_supported_stateful_sig_mechanisms()` +- ML-KEM keys can be generated from a seed via + `KeyEncapsulation.generate_keypair_seed()`. +- Minimum required Python 3 version bumped to 3.11 # Version 0.12.0 - January 15, 2025 diff --git a/RELEASE.md b/RELEASE.md index bdebfa6..c862b9b 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,14 +1,6 @@ # liboqs-python version 0.14.0 --- -# Added in version 0.14.0 July 2025 - -- Added stateful signature support via the `StatefulSignature` class. -- New enumeration helpers `get_enabled_stateful_sig_mechanisms()` and - `get_supported_stateful_sig_mechanisms()`. -- Updated to liboqs 0.14.0. -- ML-KEM keys can be generated from a seed via - `KeyEncapsulation.generate_keypair_seed()`. ## About @@ -32,7 +24,7 @@ See in particular limitations on intended use. ## Release notes -This release of liboqs-python was released on July 10, 2025. Its release +This release of liboqs-python was released on August 9, 2025. Its release page on GitHub is https://github.com/open-quantum-safe/liboqs-python/releases/tag/0.14.0. @@ -40,5 +32,5 @@ https://github.com/open-quantum-safe/liboqs-python/releases/tag/0.14.0. ## What's New -This is the 11th release of liboqs-python. For a list of changes see +This is the 12th release of liboqs-python. For a list of changes see [CHANGES.md](https://github.com/open-quantum-safe/liboqs-python/blob/main/CHANGES.md). diff --git a/oqs/oqs.py b/oqs/oqs.py index 9a24f0a..0f88dc6 100644 --- a/oqs/oqs.py +++ b/oqs/oqs.py @@ -36,6 +36,7 @@ cast, Optional, ) + if TYPE_CHECKING: from collections.abc import Sequence, Iterable from types import TracebackType @@ -244,7 +245,9 @@ def _load_liboqs() -> ct.CDLL: assert liboqs # noqa: S101 except RuntimeError: # We don't have liboqs, so we try to install it automatically - _install_liboqs(target_directory=oqs_install_dir, oqs_version_to_install=OQS_VERSION) + _install_liboqs( + target_directory=oqs_install_dir, oqs_version_to_install=OQS_VERSION + ) # Try loading it again try: liboqs = _load_shared_obj( @@ -283,9 +286,13 @@ def oqs_version() -> str: oqs_python_ver = oqs_python_version() if oqs_python_ver: - oqs_python_ver_major, oqs_python_ver_minor, oqs_python_ver_patch = version(oqs_python_ver) + oqs_python_ver_major, oqs_python_ver_minor, oqs_python_ver_patch = version( + oqs_python_ver + ) # Warn the user if the liboqs version differs from liboqs-python version - if not (oqs_ver_major == oqs_python_ver_major and oqs_ver_minor == oqs_python_ver_minor): + if not ( + oqs_ver_major == oqs_python_ver_major and oqs_ver_minor == oqs_python_ver_minor + ): warnings.warn( f"liboqs version (major, minor) {oqs_version()} differs from liboqs-python version " f"{oqs_python_version()}", @@ -296,7 +303,9 @@ def oqs_version() -> str: class MechanismNotSupportedError(Exception): """Exception raised when an algorithm is not supported by OQS.""" - def __init__(self, alg_name: str, supported: Optional[Iterable[str]] = None) -> None: + def __init__( + self, alg_name: str, supported: Optional[Iterable[str]] = None + ) -> None: """ Initialize the exception. @@ -363,7 +372,9 @@ class KeyEncapsulation(ct.Structure): ("decaps_cb", ct.c_void_p), ] - def __init__(self, alg_name: str, secret_key: Union[int, bytes, None] = None) -> None: + def __init__( + self, alg_name: str, secret_key: Union[int, bytes, None] = None + ) -> None: """ Create new KeyEncapsulation with the given algorithm. @@ -552,9 +563,13 @@ def is_kem_enabled(alg_name: str) -> bool: return native().OQS_KEM_alg_is_enabled(ct.create_string_buffer(alg_name.encode())) -_KEM_alg_ids = [native().OQS_KEM_alg_identifier(i) for i in range(native().OQS_KEM_alg_count())] -_supported_KEMs: tuple[str, ...] = tuple([i.decode() for i in _KEM_alg_ids]) # noqa: N816 -_enabled_KEMs: tuple[str, ...] = tuple([i for i in _supported_KEMs if is_kem_enabled(i)]) # noqa: N816 +_KEM_alg_ids = [ + native().OQS_KEM_alg_identifier(i) for i in range(native().OQS_KEM_alg_count()) +] +_supported_KEMs: tuple[str, ...] = tuple([i.decode() for i in _KEM_alg_ids]) +_enabled_KEMs: tuple[str, ...] = tuple( + [i for i in _supported_KEMs if is_kem_enabled(i)] +) def get_enabled_kem_mechanisms() -> tuple[str, ...]: @@ -603,7 +618,9 @@ class Signature(ct.Structure): ("verify_with_ctx_cb", ct.c_void_p), ] - def __init__(self, alg_name: str, secret_key: Union[int, bytes, None] = None) -> None: + def __init__( + self, alg_name: str, secret_key: Union[int, bytes, None] = None + ) -> None: """ Create new Signature with the given algorithm. @@ -746,8 +763,10 @@ def sign_with_ctx_str(self, message: bytes, context: bytes) -> bytes: :param message: the message to sign. """ if context and not self._sig.contents.sig_with_ctx_support: - msg = (f"Signing with context is not supported for: " - f"{self._sig.contents.method_name.decode()}") + msg = ( + f"Signing with context is not supported for: " + f"{self._sig.contents.method_name.decode()}" + ) raise RuntimeError(msg) # Provide length to avoid extra null char @@ -859,12 +878,18 @@ def sig_supports_context(alg_name: str) -> bool: :param alg_name: A signature mechanism algorithm name. """ - return bool(native().OQS_SIG_supports_ctx_str(ct.create_string_buffer(alg_name.encode()))) + return bool( + native().OQS_SIG_supports_ctx_str(ct.create_string_buffer(alg_name.encode())) + ) -_sig_alg_ids = [native().OQS_SIG_alg_identifier(i) for i in range(native().OQS_SIG_alg_count())] +_sig_alg_ids = [ + native().OQS_SIG_alg_identifier(i) for i in range(native().OQS_SIG_alg_count()) +] _supported_sigs: tuple[str, ...] = tuple([i.decode() for i in _sig_alg_ids]) -_enabled_sigs: tuple[str, ...] = tuple([i for i in _supported_sigs if is_sig_enabled(i)]) +_enabled_sigs: tuple[str, ...] = tuple( + [i for i in _supported_sigs if is_sig_enabled(i)] +) def get_enabled_sig_mechanisms() -> tuple[str, ...]: @@ -883,7 +908,9 @@ def get_supported_sig_mechanisms() -> tuple[str, ...]: def is_stateful_sig_enabled(alg_name: str) -> bool: """Check if a stateful signature algorithm is enabled.""" - return native().OQS_SIG_STFL_alg_is_enabled(ct.create_string_buffer(alg_name.encode())) + return native().OQS_SIG_STFL_alg_is_enabled( + ct.create_string_buffer(alg_name.encode()) + ) _supported_stateful_sigs: tuple[str, ...] = tuple( @@ -971,7 +998,9 @@ def __init__(self, alg_name: str, secret_key: Optional[bytes] = None) -> None: super().__init__() _check_alg(alg_name) - self._sig = native().OQS_SIG_STFL_new(ct.create_string_buffer(alg_name.encode())) + self._sig = native().OQS_SIG_STFL_new( + ct.create_string_buffer(alg_name.encode()) + ) if not self._sig: msg = f"Could not allocate OQS_SIG_STFL for {alg_name}" raise RuntimeError(msg) @@ -1008,7 +1037,9 @@ def _cb(buf: bytes, length: int, _: ct.c_void_p) -> int: return OQS_SUCCESS self._store_cb = _cb # keep ref - native().OQS_SIG_STFL_SECRET_KEY_SET_store_cb(self._secret_key, self._store_cb, None) + native().OQS_SIG_STFL_SECRET_KEY_SET_store_cb( + self._secret_key, self._store_cb, None + ) def _new_secret_key(self) -> None: """Create a new secret key for the stateful signature.""" @@ -1022,7 +1053,9 @@ def _load_secret_key(self, data: bytes) -> None: """Load a secret key from bytes.""" self._new_secret_key() buf = ct.create_string_buffer(data, len(data)) - rc = native().OQS_SIG_STFL_SECRET_KEY_deserialize(self._secret_key, buf, len(data), None) + rc = native().OQS_SIG_STFL_SECRET_KEY_deserialize( + self._secret_key, buf, len(data), None + ) if rc != OQS_SUCCESS: msg = "Secret‑key deserialization failed" raise RuntimeError(msg) @@ -1098,7 +1131,9 @@ def verify(self, message: bytes, signature: bytes, public_key: bytes) -> bool: msg = ct.create_string_buffer(message, len(message)) sig = ct.create_string_buffer(signature, len(signature)) pk = ct.create_string_buffer(public_key, len(public_key)) - rc = native().OQS_SIG_STFL_verify(self._sig, msg, len(message), sig, len(signature), pk) + rc = native().OQS_SIG_STFL_verify( + self._sig, msg, len(message), sig, len(signature), pk + ) return rc == OQS_SUCCESS def export_secret_key(self) -> bytes: @@ -1126,7 +1161,9 @@ def export_secret_key(self) -> bytes: def sigs_total(self) -> int: """Get the total number of signatures that can be made with the secret key.""" total = ct.c_uint64() - rc = native().OQS_SIG_STFL_sigs_total(self._sig, ct.byref(total), self._secret_key) + rc = native().OQS_SIG_STFL_sigs_total( + self._sig, ct.byref(total), self._secret_key + ) if rc != OQS_SUCCESS: msg = "Failed to get total signature count" raise RuntimeError(msg) @@ -1138,7 +1175,9 @@ def sigs_remaining(self) -> int: msg = "Secret key not initialised – call generate_keypair() first" raise ValueError(msg) remain = ct.c_uint64() - rc = native().OQS_SIG_STFL_sigs_remaining(self._sig, ct.byref(remain), self._secret_key) + rc = native().OQS_SIG_STFL_sigs_remaining( + self._sig, ct.byref(remain), self._secret_key + ) if rc != OQS_SUCCESS: msg = "Failed to get remaining signature count" raise ValueError(msg) @@ -1173,8 +1212,16 @@ def free(self) -> None: native().OQS_SIG_STFL_new.restype = ct.POINTER(StatefulSignature) native().OQS_SIG_STFL_SECRET_KEY_new.restype = ct.c_void_p native().OQS_SIG_STFL_SECRET_KEY_new.argtypes = [ct.c_char_p] -native().OQS_SIG_STFL_SECRET_KEY_SET_store_cb.argtypes = [ct.c_void_p, ct.c_void_p, ct.c_void_p] -native().OQS_SIG_STFL_keypair.argtypes = [ct.POINTER(StatefulSignature), ct.c_void_p, ct.c_void_p] +native().OQS_SIG_STFL_SECRET_KEY_SET_store_cb.argtypes = [ + ct.c_void_p, + ct.c_void_p, + ct.c_void_p, +] +native().OQS_SIG_STFL_keypair.argtypes = [ + ct.POINTER(StatefulSignature), + ct.c_void_p, + ct.c_void_p, +] native().OQS_SIG_STFL_sign.argtypes = [ ct.POINTER(StatefulSignature), ct.c_void_p, From 20cc8de00556d59ce4b902ecf3efa68174b338b1 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Sat, 9 Aug 2025 15:04:44 -0400 Subject: [PATCH 2/6] Formatting Signed-off-by: Vlad Gheorghiu --- examples/stfl_sig.py | 5 ++++- tests/test_sig.py | 4 ++-- tests/test_stfl_sig.py | 6 +++++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/examples/stfl_sig.py b/examples/stfl_sig.py index da312a2..1878215 100644 --- a/examples/stfl_sig.py +++ b/examples/stfl_sig.py @@ -22,7 +22,10 @@ # Create signer and verifier with sample signature mechanisms stfl_sigalg = "XMSS-SHA2_10_256" -with StatefulSignature(stfl_sigalg) as signer, StatefulSignature(stfl_sigalg) as verifier: +with ( + StatefulSignature(stfl_sigalg) as signer, + StatefulSignature(stfl_sigalg) as verifier, +): logger.info("Signature details:\n%s", pformat(signer.details)) # Signer generates its keypair diff --git a/tests/test_sig.py b/tests/test_sig.py index 185f6a2..2ff86b4 100644 --- a/tests/test_sig.py +++ b/tests/test_sig.py @@ -53,9 +53,9 @@ def test_sig_with_ctx_support_detection() -> None: with Signature(alg_name) as sig: # Check Python attribute matches C API c_api_result = native().OQS_SIG_supports_ctx_str(sig.method_name) - assert bool(sig.sig_with_ctx_support) == bool(c_api_result), ( # noqa: S101 + assert bool(sig.sig_with_ctx_support) == bool(c_api_result), ( f"sig_with_ctx_support mismatch for {alg_name}" - ) + ) # noqa: S101 # If not supported, sign_with_ctx_str should raise if not sig.sig_with_ctx_support: try: diff --git a/tests/test_stfl_sig.py b/tests/test_stfl_sig.py index c2459ed..433aa87 100644 --- a/tests/test_stfl_sig.py +++ b/tests/test_stfl_sig.py @@ -4,7 +4,11 @@ import oqs -_skip_names = ["LMS_SHA256_H20_W8_H10_W8", "LMS_SHA256_H20_W8_H15_W8", "LMS_SHA256_H20_W8_H20_W8"] +_skip_names = [ + "LMS_SHA256_H20_W8_H10_W8", + "LMS_SHA256_H20_W8_H15_W8", + "LMS_SHA256_H20_W8_H20_W8", +] # Sigs for which unit testing is disabled From be787208ff005b96139e8672a378caa11b6aecff Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Sun, 10 Aug 2025 14:26:10 -0400 Subject: [PATCH 3/6] Release date not yet fixed Signed-off-by: Vlad Gheorghiu --- CHANGES.md | 2 +- RELEASE.md | 2 +- a | 677 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 679 insertions(+), 2 deletions(-) create mode 100644 a diff --git a/CHANGES.md b/CHANGES.md index f304b86..dbf5d35 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,4 +1,4 @@ -# Version 0.14.0 - August 9, 2025 +# Version 0.14.0 - August xx, 2025 - Added type checking and automatic linting/formatting, https://github.com/open-quantum-safe/liboqs-python/pull/97 - Added a utility function for de-structuring version strings in `oqs.py` diff --git a/RELEASE.md b/RELEASE.md index c862b9b..1da57c9 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -24,7 +24,7 @@ See in particular limitations on intended use. ## Release notes -This release of liboqs-python was released on August 9, 2025. Its release +This release of liboqs-python was released on August xx, 2025. Its release page on GitHub is https://github.com/open-quantum-safe/liboqs-python/releases/tag/0.14.0. diff --git a/a b/a new file mode 100644 index 0000000..f1579dc --- /dev/null +++ b/a @@ -0,0 +1,677 @@ +/Users/vlad/GitHub/liboqs-python/oqs/__init__.py:1: UserWarning: liboqs version (major, minor) 0.14.1-dev differs from liboqs-python version 0.12.0 + from oqs.oqs import ( +tests.test_sig.test_not_enabled ... ok +tests.test_sig.test_not_supported ... ok +tests.test_sig.test_python_attributes ... ok +tests.test_sig.test_sig_with_ctx_support_detection ... ok +tests.test_sig.test_correctness:1 +'Dilithium2' ... ok +tests.test_sig.test_correctness:2 +'Dilithium3' ... ok +tests.test_sig.test_correctness:3 +'Dilithium5' ... ok +tests.test_sig.test_correctness:4 +'ML-DSA-44' ... ok +tests.test_sig.test_correctness:5 +'ML-DSA-65' ... ok +tests.test_sig.test_correctness:6 +'ML-DSA-87' ... ok +tests.test_sig.test_correctness:7 +'Falcon-512' ... ok +tests.test_sig.test_correctness:8 +'Falcon-1024' ... ok +tests.test_sig.test_correctness:9 +'Falcon-padded-512' ... ok +tests.test_sig.test_correctness:10 +'Falcon-padded-1024' ... ok +tests.test_sig.test_correctness:11 +'SPHINCS+-SHA2-128f-simple' ... ok +tests.test_sig.test_correctness:12 +'SPHINCS+-SHA2-128s-simple' ... ok +tests.test_sig.test_correctness:13 +'SPHINCS+-SHA2-192f-simple' ... ok +tests.test_sig.test_correctness:14 +'SPHINCS+-SHA2-192s-simple' ... ok +tests.test_sig.test_correctness:15 +'SPHINCS+-SHA2-256f-simple' ... ok +tests.test_sig.test_correctness:16 +'SPHINCS+-SHA2-256s-simple' ... ok +tests.test_sig.test_correctness:17 +'SPHINCS+-SHAKE-128f-simple' ... ok +tests.test_sig.test_correctness:18 +'SPHINCS+-SHAKE-128s-simple' ... ok +tests.test_sig.test_correctness:19 +'SPHINCS+-SHAKE-192f-simple' ... ok +tests.test_sig.test_correctness:20 +'SPHINCS+-SHAKE-192s-simple' ... ok +tests.test_sig.test_correctness:21 +'SPHINCS+-SHAKE-256f-simple' ... ok +tests.test_sig.test_correctness:22 +'SPHINCS+-SHAKE-256s-simple' ... ok +tests.test_sig.test_correctness:23 +'MAYO-1' ... ok +tests.test_sig.test_correctness:24 +'MAYO-2' ... ok +tests.test_sig.test_correctness:25 +'MAYO-3' ... ok +tests.test_sig.test_correctness:26 +'MAYO-5' ... ok +tests.test_sig.test_correctness:27 +'cross-rsdp-128-balanced' ... ok +tests.test_sig.test_correctness:28 +'cross-rsdp-128-fast' ... ok +tests.test_sig.test_correctness:29 +'cross-rsdp-128-small' ... ok +tests.test_sig.test_correctness:30 +'cross-rsdp-192-balanced' ... ok +tests.test_sig.test_correctness:31 +'cross-rsdp-192-fast' ... ok +tests.test_sig.test_correctness:32 +'cross-rsdp-192-small' ... ok +tests.test_sig.test_correctness:33 +'cross-rsdp-256-balanced' ... ok +tests.test_sig.test_correctness:34 +'cross-rsdp-256-fast' ... ok +tests.test_sig.test_correctness:35 +'cross-rsdp-256-small' ... ok +tests.test_sig.test_correctness:36 +'cross-rsdpg-128-balanced' ... ok +tests.test_sig.test_correctness:37 +'cross-rsdpg-128-fast' ... ok +tests.test_sig.test_correctness:38 +'cross-rsdpg-128-small' ... ok +tests.test_sig.test_correctness:39 +'cross-rsdpg-192-balanced' ... ok +tests.test_sig.test_correctness:40 +'cross-rsdpg-192-fast' ... ok +tests.test_sig.test_correctness:41 +'cross-rsdpg-192-small' ... ok +tests.test_sig.test_correctness:42 +'cross-rsdpg-256-balanced' ... ok +tests.test_sig.test_correctness:43 +'cross-rsdpg-256-fast' ... ok +tests.test_sig.test_correctness:44 +'cross-rsdpg-256-small' ... ok +tests.test_sig.test_correctness:45 +'OV-Is' ... ok +tests.test_sig.test_correctness:46 +'OV-Ip' ... ok +tests.test_sig.test_correctness:47 +'OV-III' ... ok +tests.test_sig.test_correctness:48 +'OV-V' ... ok +tests.test_sig.test_correctness:49 +'OV-Is-pkc' ... ok +tests.test_sig.test_correctness:50 +'OV-Ip-pkc' ... ok +tests.test_sig.test_correctness:51 +'OV-III-pkc' ... ok +tests.test_sig.test_correctness:52 +'OV-V-pkc' ... ok +tests.test_sig.test_correctness:53 +'OV-Is-pkc-skc' ... ok +tests.test_sig.test_correctness:54 +'OV-Ip-pkc-skc' ... ok +tests.test_sig.test_correctness:55 +'OV-III-pkc-skc' ... ok +tests.test_sig.test_correctness:56 +'OV-V-pkc-skc' ... ok +tests.test_sig.test_correctness:57 +'SNOVA_24_5_4' ... ok +tests.test_sig.test_correctness:58 +'SNOVA_24_5_4_SHAKE' ... ok +tests.test_sig.test_correctness:59 +'SNOVA_24_5_4_esk' ... ok +tests.test_sig.test_correctness:60 +'SNOVA_24_5_4_SHAKE_esk' ... ok +tests.test_sig.test_correctness:61 +'SNOVA_37_17_2' ... ok +tests.test_sig.test_correctness:62 +'SNOVA_25_8_3' ... ok +tests.test_sig.test_correctness:63 +'SNOVA_56_25_2' ... ok +tests.test_sig.test_correctness:64 +'SNOVA_49_11_3' ... ok +tests.test_sig.test_correctness:65 +'SNOVA_37_8_4' ... ok +tests.test_sig.test_correctness:66 +'SNOVA_24_5_5' ... ok +tests.test_sig.test_correctness:67 +'SNOVA_60_10_4' ... ok +tests.test_sig.test_correctness:68 +'SNOVA_29_6_5' ... ok +tests.test_sig.test_correctness_with_ctx_str:1 +'ML-DSA-44' ... ok +tests.test_sig.test_correctness_with_ctx_str:2 +'ML-DSA-65' ... ok +tests.test_sig.test_correctness_with_ctx_str:3 +'ML-DSA-87' ... ok +tests.test_sig.test_wrong_message:1 +'Dilithium2' ... ok +tests.test_sig.test_wrong_message:2 +'Dilithium3' ... ok +tests.test_sig.test_wrong_message:3 +'Dilithium5' ... ok +tests.test_sig.test_wrong_message:4 +'ML-DSA-44' ... ok +tests.test_sig.test_wrong_message:5 +'ML-DSA-65' ... ok +tests.test_sig.test_wrong_message:6 +'ML-DSA-87' ... ok +tests.test_sig.test_wrong_message:7 +'Falcon-512' ... ok +tests.test_sig.test_wrong_message:8 +'Falcon-1024' ... ok +tests.test_sig.test_wrong_message:9 +'Falcon-padded-512' ... ok +tests.test_sig.test_wrong_message:10 +'Falcon-padded-1024' ... ok +tests.test_sig.test_wrong_message:11 +'SPHINCS+-SHA2-128f-simple' ... ok +tests.test_sig.test_wrong_message:12 +'SPHINCS+-SHA2-128s-simple' ... ok +tests.test_sig.test_wrong_message:13 +'SPHINCS+-SHA2-192f-simple' ... ok +tests.test_sig.test_wrong_message:14 +'SPHINCS+-SHA2-192s-simple' ... ok +tests.test_sig.test_wrong_message:15 +'SPHINCS+-SHA2-256f-simple' ... ok +tests.test_sig.test_wrong_message:16 +'SPHINCS+-SHA2-256s-simple' ... ok +tests.test_sig.test_wrong_message:17 +'SPHINCS+-SHAKE-128f-simple' ... ok +tests.test_sig.test_wrong_message:18 +'SPHINCS+-SHAKE-128s-simple' ... ok +tests.test_sig.test_wrong_message:19 +'SPHINCS+-SHAKE-192f-simple' ... ok +tests.test_sig.test_wrong_message:20 +'SPHINCS+-SHAKE-192s-simple' ... ok +tests.test_sig.test_wrong_message:21 +'SPHINCS+-SHAKE-256f-simple' ... ok +tests.test_sig.test_wrong_message:22 +'SPHINCS+-SHAKE-256s-simple' ... ok +tests.test_sig.test_wrong_message:23 +'MAYO-1' ... ok +tests.test_sig.test_wrong_message:24 +'MAYO-2' ... ok +tests.test_sig.test_wrong_message:25 +'MAYO-3' ... ok +tests.test_sig.test_wrong_message:26 +'MAYO-5' ... ok +tests.test_sig.test_wrong_message:27 +'cross-rsdp-128-balanced' ... ok +tests.test_sig.test_wrong_message:28 +'cross-rsdp-128-fast' ... ok +tests.test_sig.test_wrong_message:29 +'cross-rsdp-128-small' ... ok +tests.test_sig.test_wrong_message:30 +'cross-rsdp-192-balanced' ... ok +tests.test_sig.test_wrong_message:31 +'cross-rsdp-192-fast' ... ok +tests.test_sig.test_wrong_message:32 +'cross-rsdp-192-small' ... ok +tests.test_sig.test_wrong_message:33 +'cross-rsdp-256-balanced' ... ok +tests.test_sig.test_wrong_message:34 +'cross-rsdp-256-fast' ... ok +tests.test_sig.test_wrong_message:35 +'cross-rsdp-256-small' ... ok +tests.test_sig.test_wrong_message:36 +'cross-rsdpg-128-balanced' ... ok +tests.test_sig.test_wrong_message:37 +'cross-rsdpg-128-fast' ... ok +tests.test_sig.test_wrong_message:38 +'cross-rsdpg-128-small' ... ok +tests.test_sig.test_wrong_message:39 +'cross-rsdpg-192-balanced' ... ok +tests.test_sig.test_wrong_message:40 +'cross-rsdpg-192-fast' ... ok +tests.test_sig.test_wrong_message:41 +'cross-rsdpg-192-small' ... ok +tests.test_sig.test_wrong_message:42 +'cross-rsdpg-256-balanced' ... ok +tests.test_sig.test_wrong_message:43 +'cross-rsdpg-256-fast' ... ok +tests.test_sig.test_wrong_message:44 +'cross-rsdpg-256-small' ... ok +tests.test_sig.test_wrong_message:45 +'OV-Is' ... ok +tests.test_sig.test_wrong_message:46 +'OV-Ip' ... ok +tests.test_sig.test_wrong_message:47 +'OV-III' ... ok +tests.test_sig.test_wrong_message:48 +'OV-V' ... ok +tests.test_sig.test_wrong_message:49 +'OV-Is-pkc' ... ok +tests.test_sig.test_wrong_message:50 +'OV-Ip-pkc' ... ok +tests.test_sig.test_wrong_message:51 +'OV-III-pkc' ... ok +tests.test_sig.test_wrong_message:52 +'OV-V-pkc' ... ok +tests.test_sig.test_wrong_message:53 +'OV-Is-pkc-skc' ... ok +tests.test_sig.test_wrong_message:54 +'OV-Ip-pkc-skc' ... ok +tests.test_sig.test_wrong_message:55 +'OV-III-pkc-skc' ... ok +tests.test_sig.test_wrong_message:56 +'OV-V-pkc-skc' ... ok +tests.test_sig.test_wrong_message:57 +'SNOVA_24_5_4' ... ok +tests.test_sig.test_wrong_message:58 +'SNOVA_24_5_4_SHAKE' ... ok +tests.test_sig.test_wrong_message:59 +'SNOVA_24_5_4_esk' ... ok +tests.test_sig.test_wrong_message:60 +'SNOVA_24_5_4_SHAKE_esk' ... ok +tests.test_sig.test_wrong_message:61 +'SNOVA_37_17_2' ... ok +tests.test_sig.test_wrong_message:62 +'SNOVA_25_8_3' ... ok +tests.test_sig.test_wrong_message:63 +'SNOVA_56_25_2' ... ok +tests.test_sig.test_wrong_message:64 +'SNOVA_49_11_3' ... ok +tests.test_sig.test_wrong_message:65 +'SNOVA_37_8_4' ... ok +tests.test_sig.test_wrong_message:66 +'SNOVA_24_5_5' ... ok +tests.test_sig.test_wrong_message:67 +'SNOVA_60_10_4' ... ok +tests.test_sig.test_wrong_message:68 +'SNOVA_29_6_5' ... ok +tests.test_sig.test_wrong_public_key:1 +'Dilithium2' ... ok +tests.test_sig.test_wrong_public_key:2 +'Dilithium3' ... ok +tests.test_sig.test_wrong_public_key:3 +'Dilithium5' ... ok +tests.test_sig.test_wrong_public_key:4 +'ML-DSA-44' ... ok +tests.test_sig.test_wrong_public_key:5 +'ML-DSA-65' ... ok +tests.test_sig.test_wrong_public_key:6 +'ML-DSA-87' ... ok +tests.test_sig.test_wrong_public_key:7 +'Falcon-512' ... ok +tests.test_sig.test_wrong_public_key:8 +'Falcon-1024' ... ok +tests.test_sig.test_wrong_public_key:9 +'Falcon-padded-512' ... ok +tests.test_sig.test_wrong_public_key:10 +'Falcon-padded-1024' ... ok +tests.test_sig.test_wrong_public_key:11 +'SPHINCS+-SHA2-128f-simple' ... ok +tests.test_sig.test_wrong_public_key:12 +'SPHINCS+-SHA2-128s-simple' ... ok +tests.test_sig.test_wrong_public_key:13 +'SPHINCS+-SHA2-192f-simple' ... ok +tests.test_sig.test_wrong_public_key:14 +'SPHINCS+-SHA2-192s-simple' ... ok +tests.test_sig.test_wrong_public_key:15 +'SPHINCS+-SHA2-256f-simple' ... ok +tests.test_sig.test_wrong_public_key:16 +'SPHINCS+-SHA2-256s-simple' ... ok +tests.test_sig.test_wrong_public_key:17 +'SPHINCS+-SHAKE-128f-simple' ... ok +tests.test_sig.test_wrong_public_key:18 +'SPHINCS+-SHAKE-128s-simple' ... ok +tests.test_sig.test_wrong_public_key:19 +'SPHINCS+-SHAKE-192f-simple' ... ok +tests.test_sig.test_wrong_public_key:20 +'SPHINCS+-SHAKE-192s-simple' ... ok +tests.test_sig.test_wrong_public_key:21 +'SPHINCS+-SHAKE-256f-simple' ... ok +tests.test_sig.test_wrong_public_key:22 +'SPHINCS+-SHAKE-256s-simple' ... ok +tests.test_sig.test_wrong_public_key:23 +'MAYO-1' ... ok +tests.test_sig.test_wrong_public_key:24 +'MAYO-2' ... ok +tests.test_sig.test_wrong_public_key:25 +'MAYO-3' ... ok +tests.test_sig.test_wrong_public_key:26 +'MAYO-5' ... ok +tests.test_sig.test_wrong_public_key:27 +'cross-rsdp-128-balanced' ... ok +tests.test_sig.test_wrong_public_key:28 +'cross-rsdp-128-fast' ... ok +tests.test_sig.test_wrong_public_key:29 +'cross-rsdp-128-small' ... ok +tests.test_sig.test_wrong_public_key:30 +'cross-rsdp-192-balanced' ... ok +tests.test_sig.test_wrong_public_key:31 +'cross-rsdp-192-fast' ... ok +tests.test_sig.test_wrong_public_key:32 +'cross-rsdp-192-small' ... ok +tests.test_sig.test_wrong_public_key:33 +'cross-rsdp-256-balanced' ... ok +tests.test_sig.test_wrong_public_key:34 +'cross-rsdp-256-fast' ... ok +tests.test_sig.test_wrong_public_key:35 +'cross-rsdp-256-small' ... ok +tests.test_sig.test_wrong_public_key:36 +'cross-rsdpg-128-balanced' ... ok +tests.test_sig.test_wrong_public_key:37 +'cross-rsdpg-128-fast' ... ok +tests.test_sig.test_wrong_public_key:38 +'cross-rsdpg-128-small' ... ok +tests.test_sig.test_wrong_public_key:39 +'cross-rsdpg-192-balanced' ... ok +tests.test_sig.test_wrong_public_key:40 +'cross-rsdpg-192-fast' ... ok +tests.test_sig.test_wrong_public_key:41 +'cross-rsdpg-192-small' ... ok +tests.test_sig.test_wrong_public_key:42 +'cross-rsdpg-256-balanced' ... ok +tests.test_sig.test_wrong_public_key:43 +'cross-rsdpg-256-fast' ... ok +tests.test_sig.test_wrong_public_key:44 +'cross-rsdpg-256-small' ... ok +tests.test_sig.test_wrong_public_key:45 +'OV-Is' ... ok +tests.test_sig.test_wrong_public_key:46 +'OV-Ip' ... ok +tests.test_sig.test_wrong_public_key:47 +'OV-III' ... ok +tests.test_sig.test_wrong_public_key:48 +'OV-V' ... ok +tests.test_sig.test_wrong_public_key:49 +'OV-Is-pkc' ... ok +tests.test_sig.test_wrong_public_key:50 +'OV-Ip-pkc' ... ok +tests.test_sig.test_wrong_public_key:51 +'OV-III-pkc' ... ok +tests.test_sig.test_wrong_public_key:52 +'OV-V-pkc' ... ok +tests.test_sig.test_wrong_public_key:53 +'OV-Is-pkc-skc' ... ok +tests.test_sig.test_wrong_public_key:54 +'OV-Ip-pkc-skc' ... ok +tests.test_sig.test_wrong_public_key:55 +'OV-III-pkc-skc' ... ok +tests.test_sig.test_wrong_public_key:56 +'OV-V-pkc-skc' ... ok +tests.test_sig.test_wrong_public_key:57 +'SNOVA_24_5_4' ... ok +tests.test_sig.test_wrong_public_key:58 +'SNOVA_24_5_4_SHAKE' ... ok +tests.test_sig.test_wrong_public_key:59 +'SNOVA_24_5_4_esk' ... ok +tests.test_sig.test_wrong_public_key:60 +'SNOVA_24_5_4_SHAKE_esk' ... ok +tests.test_sig.test_wrong_public_key:61 +'SNOVA_37_17_2' ... ok +tests.test_sig.test_wrong_public_key:62 +'SNOVA_25_8_3' ... ok +tests.test_sig.test_wrong_public_key:63 +'SNOVA_56_25_2' ... ok +tests.test_sig.test_wrong_public_key:64 +'SNOVA_49_11_3' ... ok +tests.test_sig.test_wrong_public_key:65 +'SNOVA_37_8_4' ... ok +tests.test_sig.test_wrong_public_key:66 +'SNOVA_24_5_5' ... ok +tests.test_sig.test_wrong_public_key:67 +'SNOVA_60_10_4' ... ok +tests.test_sig.test_wrong_public_key:68 +'SNOVA_29_6_5' ... ok +tests.test_sig.test_wrong_signature:1 +'Dilithium2' ... ok +tests.test_sig.test_wrong_signature:2 +'Dilithium3' ... ok +tests.test_sig.test_wrong_signature:3 +'Dilithium5' ... ok +tests.test_sig.test_wrong_signature:4 +'ML-DSA-44' ... ok +tests.test_sig.test_wrong_signature:5 +'ML-DSA-65' ... ok +tests.test_sig.test_wrong_signature:6 +'ML-DSA-87' ... ok +tests.test_sig.test_wrong_signature:7 +'Falcon-512' ... ok +tests.test_sig.test_wrong_signature:8 +'Falcon-1024' ... ok +tests.test_sig.test_wrong_signature:9 +'Falcon-padded-512' ... ok +tests.test_sig.test_wrong_signature:10 +'Falcon-padded-1024' ... ok +tests.test_sig.test_wrong_signature:11 +'SPHINCS+-SHA2-128f-simple' ... ok +tests.test_sig.test_wrong_signature:12 +'SPHINCS+-SHA2-128s-simple' ... ok +tests.test_sig.test_wrong_signature:13 +'SPHINCS+-SHA2-192f-simple' ... ok +tests.test_sig.test_wrong_signature:14 +'SPHINCS+-SHA2-192s-simple' ... ok +tests.test_sig.test_wrong_signature:15 +'SPHINCS+-SHA2-256f-simple' ... ok +tests.test_sig.test_wrong_signature:16 +'SPHINCS+-SHA2-256s-simple' ... ok +tests.test_sig.test_wrong_signature:17 +'SPHINCS+-SHAKE-128f-simple' ... ok +tests.test_sig.test_wrong_signature:18 +'SPHINCS+-SHAKE-128s-simple' ... ok +tests.test_sig.test_wrong_signature:19 +'SPHINCS+-SHAKE-192f-simple' ... ok +tests.test_sig.test_wrong_signature:20 +'SPHINCS+-SHAKE-192s-simple' ... ok +tests.test_sig.test_wrong_signature:21 +'SPHINCS+-SHAKE-256f-simple' ... ok +tests.test_sig.test_wrong_signature:22 +'SPHINCS+-SHAKE-256s-simple' ... ok +tests.test_sig.test_wrong_signature:23 +'MAYO-1' ... ok +tests.test_sig.test_wrong_signature:24 +'MAYO-2' ... ok +tests.test_sig.test_wrong_signature:25 +'MAYO-3' ... ok +tests.test_sig.test_wrong_signature:26 +'MAYO-5' ... ok +tests.test_sig.test_wrong_signature:27 +'cross-rsdp-128-balanced' ... ok +tests.test_sig.test_wrong_signature:28 +'cross-rsdp-128-fast' ... ok +tests.test_sig.test_wrong_signature:29 +'cross-rsdp-128-small' ... ok +tests.test_sig.test_wrong_signature:30 +'cross-rsdp-192-balanced' ... ok +tests.test_sig.test_wrong_signature:31 +'cross-rsdp-192-fast' ... ok +tests.test_sig.test_wrong_signature:32 +'cross-rsdp-192-small' ... ok +tests.test_sig.test_wrong_signature:33 +'cross-rsdp-256-balanced' ... ok +tests.test_sig.test_wrong_signature:34 +'cross-rsdp-256-fast' ... ok +tests.test_sig.test_wrong_signature:35 +'cross-rsdp-256-small' ... ok +tests.test_sig.test_wrong_signature:36 +'cross-rsdpg-128-balanced' ... ok +tests.test_sig.test_wrong_signature:37 +'cross-rsdpg-128-fast' ... ok +tests.test_sig.test_wrong_signature:38 +'cross-rsdpg-128-small' ... ok +tests.test_sig.test_wrong_signature:39 +'cross-rsdpg-192-balanced' ... ok +tests.test_sig.test_wrong_signature:40 +'cross-rsdpg-192-fast' ... ok +tests.test_sig.test_wrong_signature:41 +'cross-rsdpg-192-small' ... ok +tests.test_sig.test_wrong_signature:42 +'cross-rsdpg-256-balanced' ... ok +tests.test_sig.test_wrong_signature:43 +'cross-rsdpg-256-fast' ... ok +tests.test_sig.test_wrong_signature:44 +'cross-rsdpg-256-small' ... ok +tests.test_sig.test_wrong_signature:45 +'OV-Is' ... ok +tests.test_sig.test_wrong_signature:46 +'OV-Ip' ... ok +tests.test_sig.test_wrong_signature:47 +'OV-III' ... ok +tests.test_sig.test_wrong_signature:48 +'OV-V' ... ok +tests.test_sig.test_wrong_signature:49 +'OV-Is-pkc' ... ok +tests.test_sig.test_wrong_signature:50 +'OV-Ip-pkc' ... ok +tests.test_sig.test_wrong_signature:51 +'OV-III-pkc' ... ok +tests.test_sig.test_wrong_signature:52 +'OV-V-pkc' ... ok +tests.test_sig.test_wrong_signature:53 +'OV-Is-pkc-skc' ... ok +tests.test_sig.test_wrong_signature:54 +'OV-Ip-pkc-skc' ... ok +tests.test_sig.test_wrong_signature:55 +'OV-III-pkc-skc' ... ok +tests.test_sig.test_wrong_signature:56 +'OV-V-pkc-skc' ... ok +tests.test_sig.test_wrong_signature:57 +'SNOVA_24_5_4' ... ok +tests.test_sig.test_wrong_signature:58 +'SNOVA_24_5_4_SHAKE' ... ok +tests.test_sig.test_wrong_signature:59 +'SNOVA_24_5_4_esk' ... ok +tests.test_sig.test_wrong_signature:60 +'SNOVA_24_5_4_SHAKE_esk' ... ok +tests.test_sig.test_wrong_signature:61 +'SNOVA_37_17_2' ... ok +tests.test_sig.test_wrong_signature:62 +'SNOVA_25_8_3' ... ok +tests.test_sig.test_wrong_signature:63 +'SNOVA_56_25_2' ... ok +tests.test_sig.test_wrong_signature:64 +'SNOVA_49_11_3' ... ok +tests.test_sig.test_wrong_signature:65 +'SNOVA_37_8_4' ... ok +tests.test_sig.test_wrong_signature:66 +'SNOVA_24_5_5' ... ok +tests.test_sig.test_wrong_signature:67 +'SNOVA_60_10_4' ... ok +tests.test_sig.test_wrong_signature:68 +'SNOVA_29_6_5' ... ok +tests.test_kem.test_not_enabled ... ok +tests.test_kem.test_not_supported ... ok +tests.test_kem.test_python_attributes ... ok +tests.test_kem.test_correctness:1 +'BIKE-L1' ... ok +tests.test_kem.test_correctness:2 +'BIKE-L3' ... ok +tests.test_kem.test_correctness:3 +'BIKE-L5' ... ok +tests.test_kem.test_correctness:4 +'Classic-McEliece-348864' ... ok +tests.test_kem.test_correctness:5 +'Classic-McEliece-348864f' ... ok +tests.test_kem.test_correctness:6 +'Classic-McEliece-460896' ... ok +tests.test_kem.test_correctness:7 +'Classic-McEliece-460896f' ... ok +tests.test_kem.test_correctness:8 +'Classic-McEliece-6688128' ... ok +tests.test_kem.test_correctness:9 +'Classic-McEliece-6688128f' ... ok +tests.test_kem.test_correctness:10 +'Classic-McEliece-6960119' ... ok +tests.test_kem.test_correctness:11 +'Classic-McEliece-6960119f' ... ok +tests.test_kem.test_correctness:12 +'Classic-McEliece-8192128' ... ok +tests.test_kem.test_correctness:13 +'Classic-McEliece-8192128f' ... ok +tests.test_kem.test_correctness:14 +'Kyber512' ... ok +tests.test_kem.test_correctness:15 +'Kyber768' ... ok +tests.test_kem.test_correctness:16 +'Kyber1024' ... ok +tests.test_kem.test_correctness:17 +'ML-KEM-512' ... ok +tests.test_kem.test_correctness:18 +'ML-KEM-768' ... ok +tests.test_kem.test_correctness:19 +'ML-KEM-1024' ... ok +tests.test_kem.test_correctness:20 +'sntrup761' ... ok +tests.test_kem.test_correctness:21 +'FrodoKEM-640-AES' ... ok +tests.test_kem.test_correctness:22 +'FrodoKEM-640-SHAKE' ... ok +tests.test_kem.test_correctness:23 +'FrodoKEM-976-AES' ... ok +tests.test_kem.test_correctness:24 +'FrodoKEM-976-SHAKE' ... ok +tests.test_kem.test_correctness:25 +'FrodoKEM-1344-AES' ... ok +tests.test_kem.test_correctness:26 +'FrodoKEM-1344-SHAKE' ... ok +tests.test_kem.test_seed_generation:1 +'ML-KEM-512' ... ok +tests.test_kem.test_seed_generation:2 +'ML-KEM-768' ... ok +tests.test_kem.test_seed_generation:3 +'ML-KEM-1024' ... ok +tests.test_kem.test_wrong_ciphertext:1 +'BIKE-L1' ... ok +tests.test_kem.test_wrong_ciphertext:2 +'BIKE-L3' ... ok +tests.test_kem.test_wrong_ciphertext:3 +'BIKE-L5' ... ok +tests.test_kem.test_wrong_ciphertext:4 +'Classic-McEliece-348864' ... ok +tests.test_kem.test_wrong_ciphertext:5 +'Classic-McEliece-348864f' ... ok +tests.test_kem.test_wrong_ciphertext:6 +'Classic-McEliece-460896' ... ok +tests.test_kem.test_wrong_ciphertext:7 +'Classic-McEliece-460896f' ... ok +tests.test_kem.test_wrong_ciphertext:8 +'Classic-McEliece-6688128' ... ok +tests.test_kem.test_wrong_ciphertext:9 +'Classic-McEliece-6688128f' ... ok +tests.test_kem.test_wrong_ciphertext:10 +'Classic-McEliece-6960119' ... ok +tests.test_kem.test_wrong_ciphertext:11 +'Classic-McEliece-6960119f' ... ok +tests.test_kem.test_wrong_ciphertext:12 +'Classic-McEliece-8192128' ... ok +tests.test_kem.test_wrong_ciphertext:13 +'Classic-McEliece-8192128f' ... ok +tests.test_kem.test_wrong_ciphertext:14 +'Kyber512' ... ok +tests.test_kem.test_wrong_ciphertext:15 +'Kyber768' ... ok +tests.test_kem.test_wrong_ciphertext:16 +'Kyber1024' ... ok +tests.test_kem.test_wrong_ciphertext:17 +'ML-KEM-512' ... ok +tests.test_kem.test_wrong_ciphertext:18 +'ML-KEM-768' ... ok +tests.test_kem.test_wrong_ciphertext:19 +'ML-KEM-1024' ... ok +tests.test_kem.test_wrong_ciphertext:20 +'sntrup761' ... ok +tests.test_kem.test_wrong_ciphertext:21 +'FrodoKEM-640-AES' ... ok +tests.test_kem.test_wrong_ciphertext:22 +'FrodoKEM-640-SHAKE' ... ok +tests.test_kem.test_wrong_ciphertext:23 +'FrodoKEM-976-AES' ... ok +tests.test_kem.test_wrong_ciphertext:24 +'FrodoKEM-976-SHAKE' ... ok +tests.test_kem.test_wrong_ciphertext:25 +'FrodoKEM-1344-AES' ... ok +tests.test_kem.test_wrong_ciphertext:26 +'FrodoKEM-1344-SHAKE' ... ok +tests.test_stfl_sig.test_not_enabled ... ok +tests.test_stfl_sig.test_not_supported ... ok +tests.test_stfl_sig.test_python_attributes ... ok + +---------------------------------------------------------------------- +Ran 340 tests in 43.259s + +OK From 9162b4feeec522f7c80f18f44cc4056e5d21072a Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Wed, 13 Aug 2025 18:37:24 -0400 Subject: [PATCH 4/6] Removed stfl_sig.py example from python_simplified.yml CI Signed-off-by: Vlad Gheorghiu --- .github/workflows/python_simplified.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python_simplified.yml b/.github/workflows/python_simplified.yml index 18a0f8f..69e67c3 100644 --- a/.github/workflows/python_simplified.yml +++ b/.github/workflows/python_simplified.yml @@ -2,11 +2,11 @@ name: GitHub actions simplified on: push: - branches: [ "**" ] + branches: ["**"] pull_request: - branches: [ "**" ] + branches: ["**"] repository_dispatch: - types: [ "**" ] + types: ["**"] permissions: contents: read @@ -15,7 +15,7 @@ jobs: build: strategy: matrix: - os: [ ubuntu-latest, macos-latest, windows-latest ] + os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: @@ -37,7 +37,7 @@ jobs: uv run examples/kem.py uv run examples/sig.py uv run examples/rand.py - uv run examples/stfl_sig.py + # uv run examples/stfl_sig.py - name: Run unit tests run: | From b59ab782261c08f414e150667591b62be060b008 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Thu, 14 Aug 2025 11:46:18 -0400 Subject: [PATCH 5/6] Added back stfl_sig example Signed-off-by: Vlad Gheorghiu --- .github/workflows/python_simplified.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python_simplified.yml b/.github/workflows/python_simplified.yml index 69e67c3..def3d8e 100644 --- a/.github/workflows/python_simplified.yml +++ b/.github/workflows/python_simplified.yml @@ -37,7 +37,7 @@ jobs: uv run examples/kem.py uv run examples/sig.py uv run examples/rand.py - # uv run examples/stfl_sig.py + uv run examples/stfl_sig.py - name: Run unit tests run: | From f6f938d2787c7f29358d6fc268cdcfe4dc86eeab Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 26 Aug 2025 10:11:34 -0400 Subject: [PATCH 6/6] Removed aux file Signed-off-by: Vlad Gheorghiu --- a | 677 -------------------------------------------------------------- 1 file changed, 677 deletions(-) delete mode 100644 a diff --git a/a b/a deleted file mode 100644 index f1579dc..0000000 --- a/a +++ /dev/null @@ -1,677 +0,0 @@ -/Users/vlad/GitHub/liboqs-python/oqs/__init__.py:1: UserWarning: liboqs version (major, minor) 0.14.1-dev differs from liboqs-python version 0.12.0 - from oqs.oqs import ( -tests.test_sig.test_not_enabled ... ok -tests.test_sig.test_not_supported ... ok -tests.test_sig.test_python_attributes ... ok -tests.test_sig.test_sig_with_ctx_support_detection ... ok -tests.test_sig.test_correctness:1 -'Dilithium2' ... ok -tests.test_sig.test_correctness:2 -'Dilithium3' ... ok -tests.test_sig.test_correctness:3 -'Dilithium5' ... ok -tests.test_sig.test_correctness:4 -'ML-DSA-44' ... ok -tests.test_sig.test_correctness:5 -'ML-DSA-65' ... ok -tests.test_sig.test_correctness:6 -'ML-DSA-87' ... ok -tests.test_sig.test_correctness:7 -'Falcon-512' ... ok -tests.test_sig.test_correctness:8 -'Falcon-1024' ... ok -tests.test_sig.test_correctness:9 -'Falcon-padded-512' ... ok -tests.test_sig.test_correctness:10 -'Falcon-padded-1024' ... ok -tests.test_sig.test_correctness:11 -'SPHINCS+-SHA2-128f-simple' ... ok -tests.test_sig.test_correctness:12 -'SPHINCS+-SHA2-128s-simple' ... ok -tests.test_sig.test_correctness:13 -'SPHINCS+-SHA2-192f-simple' ... ok -tests.test_sig.test_correctness:14 -'SPHINCS+-SHA2-192s-simple' ... ok -tests.test_sig.test_correctness:15 -'SPHINCS+-SHA2-256f-simple' ... ok -tests.test_sig.test_correctness:16 -'SPHINCS+-SHA2-256s-simple' ... ok -tests.test_sig.test_correctness:17 -'SPHINCS+-SHAKE-128f-simple' ... ok -tests.test_sig.test_correctness:18 -'SPHINCS+-SHAKE-128s-simple' ... ok -tests.test_sig.test_correctness:19 -'SPHINCS+-SHAKE-192f-simple' ... ok -tests.test_sig.test_correctness:20 -'SPHINCS+-SHAKE-192s-simple' ... ok -tests.test_sig.test_correctness:21 -'SPHINCS+-SHAKE-256f-simple' ... ok -tests.test_sig.test_correctness:22 -'SPHINCS+-SHAKE-256s-simple' ... ok -tests.test_sig.test_correctness:23 -'MAYO-1' ... ok -tests.test_sig.test_correctness:24 -'MAYO-2' ... ok -tests.test_sig.test_correctness:25 -'MAYO-3' ... ok -tests.test_sig.test_correctness:26 -'MAYO-5' ... ok -tests.test_sig.test_correctness:27 -'cross-rsdp-128-balanced' ... ok -tests.test_sig.test_correctness:28 -'cross-rsdp-128-fast' ... ok -tests.test_sig.test_correctness:29 -'cross-rsdp-128-small' ... ok -tests.test_sig.test_correctness:30 -'cross-rsdp-192-balanced' ... ok -tests.test_sig.test_correctness:31 -'cross-rsdp-192-fast' ... ok -tests.test_sig.test_correctness:32 -'cross-rsdp-192-small' ... ok -tests.test_sig.test_correctness:33 -'cross-rsdp-256-balanced' ... ok -tests.test_sig.test_correctness:34 -'cross-rsdp-256-fast' ... ok -tests.test_sig.test_correctness:35 -'cross-rsdp-256-small' ... ok -tests.test_sig.test_correctness:36 -'cross-rsdpg-128-balanced' ... ok -tests.test_sig.test_correctness:37 -'cross-rsdpg-128-fast' ... ok -tests.test_sig.test_correctness:38 -'cross-rsdpg-128-small' ... ok -tests.test_sig.test_correctness:39 -'cross-rsdpg-192-balanced' ... ok -tests.test_sig.test_correctness:40 -'cross-rsdpg-192-fast' ... ok -tests.test_sig.test_correctness:41 -'cross-rsdpg-192-small' ... ok -tests.test_sig.test_correctness:42 -'cross-rsdpg-256-balanced' ... ok -tests.test_sig.test_correctness:43 -'cross-rsdpg-256-fast' ... ok -tests.test_sig.test_correctness:44 -'cross-rsdpg-256-small' ... ok -tests.test_sig.test_correctness:45 -'OV-Is' ... ok -tests.test_sig.test_correctness:46 -'OV-Ip' ... ok -tests.test_sig.test_correctness:47 -'OV-III' ... ok -tests.test_sig.test_correctness:48 -'OV-V' ... ok -tests.test_sig.test_correctness:49 -'OV-Is-pkc' ... ok -tests.test_sig.test_correctness:50 -'OV-Ip-pkc' ... ok -tests.test_sig.test_correctness:51 -'OV-III-pkc' ... ok -tests.test_sig.test_correctness:52 -'OV-V-pkc' ... ok -tests.test_sig.test_correctness:53 -'OV-Is-pkc-skc' ... ok -tests.test_sig.test_correctness:54 -'OV-Ip-pkc-skc' ... ok -tests.test_sig.test_correctness:55 -'OV-III-pkc-skc' ... ok -tests.test_sig.test_correctness:56 -'OV-V-pkc-skc' ... ok -tests.test_sig.test_correctness:57 -'SNOVA_24_5_4' ... ok -tests.test_sig.test_correctness:58 -'SNOVA_24_5_4_SHAKE' ... ok -tests.test_sig.test_correctness:59 -'SNOVA_24_5_4_esk' ... ok -tests.test_sig.test_correctness:60 -'SNOVA_24_5_4_SHAKE_esk' ... ok -tests.test_sig.test_correctness:61 -'SNOVA_37_17_2' ... ok -tests.test_sig.test_correctness:62 -'SNOVA_25_8_3' ... ok -tests.test_sig.test_correctness:63 -'SNOVA_56_25_2' ... ok -tests.test_sig.test_correctness:64 -'SNOVA_49_11_3' ... ok -tests.test_sig.test_correctness:65 -'SNOVA_37_8_4' ... ok -tests.test_sig.test_correctness:66 -'SNOVA_24_5_5' ... ok -tests.test_sig.test_correctness:67 -'SNOVA_60_10_4' ... ok -tests.test_sig.test_correctness:68 -'SNOVA_29_6_5' ... ok -tests.test_sig.test_correctness_with_ctx_str:1 -'ML-DSA-44' ... ok -tests.test_sig.test_correctness_with_ctx_str:2 -'ML-DSA-65' ... ok -tests.test_sig.test_correctness_with_ctx_str:3 -'ML-DSA-87' ... ok -tests.test_sig.test_wrong_message:1 -'Dilithium2' ... ok -tests.test_sig.test_wrong_message:2 -'Dilithium3' ... ok -tests.test_sig.test_wrong_message:3 -'Dilithium5' ... ok -tests.test_sig.test_wrong_message:4 -'ML-DSA-44' ... ok -tests.test_sig.test_wrong_message:5 -'ML-DSA-65' ... ok -tests.test_sig.test_wrong_message:6 -'ML-DSA-87' ... ok -tests.test_sig.test_wrong_message:7 -'Falcon-512' ... ok -tests.test_sig.test_wrong_message:8 -'Falcon-1024' ... ok -tests.test_sig.test_wrong_message:9 -'Falcon-padded-512' ... ok -tests.test_sig.test_wrong_message:10 -'Falcon-padded-1024' ... ok -tests.test_sig.test_wrong_message:11 -'SPHINCS+-SHA2-128f-simple' ... ok -tests.test_sig.test_wrong_message:12 -'SPHINCS+-SHA2-128s-simple' ... ok -tests.test_sig.test_wrong_message:13 -'SPHINCS+-SHA2-192f-simple' ... ok -tests.test_sig.test_wrong_message:14 -'SPHINCS+-SHA2-192s-simple' ... ok -tests.test_sig.test_wrong_message:15 -'SPHINCS+-SHA2-256f-simple' ... ok -tests.test_sig.test_wrong_message:16 -'SPHINCS+-SHA2-256s-simple' ... ok -tests.test_sig.test_wrong_message:17 -'SPHINCS+-SHAKE-128f-simple' ... ok -tests.test_sig.test_wrong_message:18 -'SPHINCS+-SHAKE-128s-simple' ... ok -tests.test_sig.test_wrong_message:19 -'SPHINCS+-SHAKE-192f-simple' ... ok -tests.test_sig.test_wrong_message:20 -'SPHINCS+-SHAKE-192s-simple' ... ok -tests.test_sig.test_wrong_message:21 -'SPHINCS+-SHAKE-256f-simple' ... ok -tests.test_sig.test_wrong_message:22 -'SPHINCS+-SHAKE-256s-simple' ... ok -tests.test_sig.test_wrong_message:23 -'MAYO-1' ... ok -tests.test_sig.test_wrong_message:24 -'MAYO-2' ... ok -tests.test_sig.test_wrong_message:25 -'MAYO-3' ... ok -tests.test_sig.test_wrong_message:26 -'MAYO-5' ... ok -tests.test_sig.test_wrong_message:27 -'cross-rsdp-128-balanced' ... ok -tests.test_sig.test_wrong_message:28 -'cross-rsdp-128-fast' ... ok -tests.test_sig.test_wrong_message:29 -'cross-rsdp-128-small' ... ok -tests.test_sig.test_wrong_message:30 -'cross-rsdp-192-balanced' ... ok -tests.test_sig.test_wrong_message:31 -'cross-rsdp-192-fast' ... ok -tests.test_sig.test_wrong_message:32 -'cross-rsdp-192-small' ... ok -tests.test_sig.test_wrong_message:33 -'cross-rsdp-256-balanced' ... ok -tests.test_sig.test_wrong_message:34 -'cross-rsdp-256-fast' ... ok -tests.test_sig.test_wrong_message:35 -'cross-rsdp-256-small' ... ok -tests.test_sig.test_wrong_message:36 -'cross-rsdpg-128-balanced' ... ok -tests.test_sig.test_wrong_message:37 -'cross-rsdpg-128-fast' ... ok -tests.test_sig.test_wrong_message:38 -'cross-rsdpg-128-small' ... ok -tests.test_sig.test_wrong_message:39 -'cross-rsdpg-192-balanced' ... ok -tests.test_sig.test_wrong_message:40 -'cross-rsdpg-192-fast' ... ok -tests.test_sig.test_wrong_message:41 -'cross-rsdpg-192-small' ... ok -tests.test_sig.test_wrong_message:42 -'cross-rsdpg-256-balanced' ... ok -tests.test_sig.test_wrong_message:43 -'cross-rsdpg-256-fast' ... ok -tests.test_sig.test_wrong_message:44 -'cross-rsdpg-256-small' ... ok -tests.test_sig.test_wrong_message:45 -'OV-Is' ... ok -tests.test_sig.test_wrong_message:46 -'OV-Ip' ... ok -tests.test_sig.test_wrong_message:47 -'OV-III' ... ok -tests.test_sig.test_wrong_message:48 -'OV-V' ... ok -tests.test_sig.test_wrong_message:49 -'OV-Is-pkc' ... ok -tests.test_sig.test_wrong_message:50 -'OV-Ip-pkc' ... ok -tests.test_sig.test_wrong_message:51 -'OV-III-pkc' ... ok -tests.test_sig.test_wrong_message:52 -'OV-V-pkc' ... ok -tests.test_sig.test_wrong_message:53 -'OV-Is-pkc-skc' ... ok -tests.test_sig.test_wrong_message:54 -'OV-Ip-pkc-skc' ... ok -tests.test_sig.test_wrong_message:55 -'OV-III-pkc-skc' ... ok -tests.test_sig.test_wrong_message:56 -'OV-V-pkc-skc' ... ok -tests.test_sig.test_wrong_message:57 -'SNOVA_24_5_4' ... ok -tests.test_sig.test_wrong_message:58 -'SNOVA_24_5_4_SHAKE' ... ok -tests.test_sig.test_wrong_message:59 -'SNOVA_24_5_4_esk' ... ok -tests.test_sig.test_wrong_message:60 -'SNOVA_24_5_4_SHAKE_esk' ... ok -tests.test_sig.test_wrong_message:61 -'SNOVA_37_17_2' ... ok -tests.test_sig.test_wrong_message:62 -'SNOVA_25_8_3' ... ok -tests.test_sig.test_wrong_message:63 -'SNOVA_56_25_2' ... ok -tests.test_sig.test_wrong_message:64 -'SNOVA_49_11_3' ... ok -tests.test_sig.test_wrong_message:65 -'SNOVA_37_8_4' ... ok -tests.test_sig.test_wrong_message:66 -'SNOVA_24_5_5' ... ok -tests.test_sig.test_wrong_message:67 -'SNOVA_60_10_4' ... ok -tests.test_sig.test_wrong_message:68 -'SNOVA_29_6_5' ... ok -tests.test_sig.test_wrong_public_key:1 -'Dilithium2' ... ok -tests.test_sig.test_wrong_public_key:2 -'Dilithium3' ... ok -tests.test_sig.test_wrong_public_key:3 -'Dilithium5' ... ok -tests.test_sig.test_wrong_public_key:4 -'ML-DSA-44' ... ok -tests.test_sig.test_wrong_public_key:5 -'ML-DSA-65' ... ok -tests.test_sig.test_wrong_public_key:6 -'ML-DSA-87' ... ok -tests.test_sig.test_wrong_public_key:7 -'Falcon-512' ... ok -tests.test_sig.test_wrong_public_key:8 -'Falcon-1024' ... ok -tests.test_sig.test_wrong_public_key:9 -'Falcon-padded-512' ... ok -tests.test_sig.test_wrong_public_key:10 -'Falcon-padded-1024' ... ok -tests.test_sig.test_wrong_public_key:11 -'SPHINCS+-SHA2-128f-simple' ... ok -tests.test_sig.test_wrong_public_key:12 -'SPHINCS+-SHA2-128s-simple' ... ok -tests.test_sig.test_wrong_public_key:13 -'SPHINCS+-SHA2-192f-simple' ... ok -tests.test_sig.test_wrong_public_key:14 -'SPHINCS+-SHA2-192s-simple' ... ok -tests.test_sig.test_wrong_public_key:15 -'SPHINCS+-SHA2-256f-simple' ... ok -tests.test_sig.test_wrong_public_key:16 -'SPHINCS+-SHA2-256s-simple' ... ok -tests.test_sig.test_wrong_public_key:17 -'SPHINCS+-SHAKE-128f-simple' ... ok -tests.test_sig.test_wrong_public_key:18 -'SPHINCS+-SHAKE-128s-simple' ... ok -tests.test_sig.test_wrong_public_key:19 -'SPHINCS+-SHAKE-192f-simple' ... ok -tests.test_sig.test_wrong_public_key:20 -'SPHINCS+-SHAKE-192s-simple' ... ok -tests.test_sig.test_wrong_public_key:21 -'SPHINCS+-SHAKE-256f-simple' ... ok -tests.test_sig.test_wrong_public_key:22 -'SPHINCS+-SHAKE-256s-simple' ... ok -tests.test_sig.test_wrong_public_key:23 -'MAYO-1' ... ok -tests.test_sig.test_wrong_public_key:24 -'MAYO-2' ... ok -tests.test_sig.test_wrong_public_key:25 -'MAYO-3' ... ok -tests.test_sig.test_wrong_public_key:26 -'MAYO-5' ... ok -tests.test_sig.test_wrong_public_key:27 -'cross-rsdp-128-balanced' ... ok -tests.test_sig.test_wrong_public_key:28 -'cross-rsdp-128-fast' ... ok -tests.test_sig.test_wrong_public_key:29 -'cross-rsdp-128-small' ... ok -tests.test_sig.test_wrong_public_key:30 -'cross-rsdp-192-balanced' ... ok -tests.test_sig.test_wrong_public_key:31 -'cross-rsdp-192-fast' ... ok -tests.test_sig.test_wrong_public_key:32 -'cross-rsdp-192-small' ... ok -tests.test_sig.test_wrong_public_key:33 -'cross-rsdp-256-balanced' ... ok -tests.test_sig.test_wrong_public_key:34 -'cross-rsdp-256-fast' ... ok -tests.test_sig.test_wrong_public_key:35 -'cross-rsdp-256-small' ... ok -tests.test_sig.test_wrong_public_key:36 -'cross-rsdpg-128-balanced' ... ok -tests.test_sig.test_wrong_public_key:37 -'cross-rsdpg-128-fast' ... ok -tests.test_sig.test_wrong_public_key:38 -'cross-rsdpg-128-small' ... ok -tests.test_sig.test_wrong_public_key:39 -'cross-rsdpg-192-balanced' ... ok -tests.test_sig.test_wrong_public_key:40 -'cross-rsdpg-192-fast' ... ok -tests.test_sig.test_wrong_public_key:41 -'cross-rsdpg-192-small' ... ok -tests.test_sig.test_wrong_public_key:42 -'cross-rsdpg-256-balanced' ... ok -tests.test_sig.test_wrong_public_key:43 -'cross-rsdpg-256-fast' ... ok -tests.test_sig.test_wrong_public_key:44 -'cross-rsdpg-256-small' ... ok -tests.test_sig.test_wrong_public_key:45 -'OV-Is' ... ok -tests.test_sig.test_wrong_public_key:46 -'OV-Ip' ... ok -tests.test_sig.test_wrong_public_key:47 -'OV-III' ... ok -tests.test_sig.test_wrong_public_key:48 -'OV-V' ... ok -tests.test_sig.test_wrong_public_key:49 -'OV-Is-pkc' ... ok -tests.test_sig.test_wrong_public_key:50 -'OV-Ip-pkc' ... ok -tests.test_sig.test_wrong_public_key:51 -'OV-III-pkc' ... ok -tests.test_sig.test_wrong_public_key:52 -'OV-V-pkc' ... ok -tests.test_sig.test_wrong_public_key:53 -'OV-Is-pkc-skc' ... ok -tests.test_sig.test_wrong_public_key:54 -'OV-Ip-pkc-skc' ... ok -tests.test_sig.test_wrong_public_key:55 -'OV-III-pkc-skc' ... ok -tests.test_sig.test_wrong_public_key:56 -'OV-V-pkc-skc' ... ok -tests.test_sig.test_wrong_public_key:57 -'SNOVA_24_5_4' ... ok -tests.test_sig.test_wrong_public_key:58 -'SNOVA_24_5_4_SHAKE' ... ok -tests.test_sig.test_wrong_public_key:59 -'SNOVA_24_5_4_esk' ... ok -tests.test_sig.test_wrong_public_key:60 -'SNOVA_24_5_4_SHAKE_esk' ... ok -tests.test_sig.test_wrong_public_key:61 -'SNOVA_37_17_2' ... ok -tests.test_sig.test_wrong_public_key:62 -'SNOVA_25_8_3' ... ok -tests.test_sig.test_wrong_public_key:63 -'SNOVA_56_25_2' ... ok -tests.test_sig.test_wrong_public_key:64 -'SNOVA_49_11_3' ... ok -tests.test_sig.test_wrong_public_key:65 -'SNOVA_37_8_4' ... ok -tests.test_sig.test_wrong_public_key:66 -'SNOVA_24_5_5' ... ok -tests.test_sig.test_wrong_public_key:67 -'SNOVA_60_10_4' ... ok -tests.test_sig.test_wrong_public_key:68 -'SNOVA_29_6_5' ... ok -tests.test_sig.test_wrong_signature:1 -'Dilithium2' ... ok -tests.test_sig.test_wrong_signature:2 -'Dilithium3' ... ok -tests.test_sig.test_wrong_signature:3 -'Dilithium5' ... ok -tests.test_sig.test_wrong_signature:4 -'ML-DSA-44' ... ok -tests.test_sig.test_wrong_signature:5 -'ML-DSA-65' ... ok -tests.test_sig.test_wrong_signature:6 -'ML-DSA-87' ... ok -tests.test_sig.test_wrong_signature:7 -'Falcon-512' ... ok -tests.test_sig.test_wrong_signature:8 -'Falcon-1024' ... ok -tests.test_sig.test_wrong_signature:9 -'Falcon-padded-512' ... ok -tests.test_sig.test_wrong_signature:10 -'Falcon-padded-1024' ... ok -tests.test_sig.test_wrong_signature:11 -'SPHINCS+-SHA2-128f-simple' ... ok -tests.test_sig.test_wrong_signature:12 -'SPHINCS+-SHA2-128s-simple' ... ok -tests.test_sig.test_wrong_signature:13 -'SPHINCS+-SHA2-192f-simple' ... ok -tests.test_sig.test_wrong_signature:14 -'SPHINCS+-SHA2-192s-simple' ... ok -tests.test_sig.test_wrong_signature:15 -'SPHINCS+-SHA2-256f-simple' ... ok -tests.test_sig.test_wrong_signature:16 -'SPHINCS+-SHA2-256s-simple' ... ok -tests.test_sig.test_wrong_signature:17 -'SPHINCS+-SHAKE-128f-simple' ... ok -tests.test_sig.test_wrong_signature:18 -'SPHINCS+-SHAKE-128s-simple' ... ok -tests.test_sig.test_wrong_signature:19 -'SPHINCS+-SHAKE-192f-simple' ... ok -tests.test_sig.test_wrong_signature:20 -'SPHINCS+-SHAKE-192s-simple' ... ok -tests.test_sig.test_wrong_signature:21 -'SPHINCS+-SHAKE-256f-simple' ... ok -tests.test_sig.test_wrong_signature:22 -'SPHINCS+-SHAKE-256s-simple' ... ok -tests.test_sig.test_wrong_signature:23 -'MAYO-1' ... ok -tests.test_sig.test_wrong_signature:24 -'MAYO-2' ... ok -tests.test_sig.test_wrong_signature:25 -'MAYO-3' ... ok -tests.test_sig.test_wrong_signature:26 -'MAYO-5' ... ok -tests.test_sig.test_wrong_signature:27 -'cross-rsdp-128-balanced' ... ok -tests.test_sig.test_wrong_signature:28 -'cross-rsdp-128-fast' ... ok -tests.test_sig.test_wrong_signature:29 -'cross-rsdp-128-small' ... ok -tests.test_sig.test_wrong_signature:30 -'cross-rsdp-192-balanced' ... ok -tests.test_sig.test_wrong_signature:31 -'cross-rsdp-192-fast' ... ok -tests.test_sig.test_wrong_signature:32 -'cross-rsdp-192-small' ... ok -tests.test_sig.test_wrong_signature:33 -'cross-rsdp-256-balanced' ... ok -tests.test_sig.test_wrong_signature:34 -'cross-rsdp-256-fast' ... ok -tests.test_sig.test_wrong_signature:35 -'cross-rsdp-256-small' ... ok -tests.test_sig.test_wrong_signature:36 -'cross-rsdpg-128-balanced' ... ok -tests.test_sig.test_wrong_signature:37 -'cross-rsdpg-128-fast' ... ok -tests.test_sig.test_wrong_signature:38 -'cross-rsdpg-128-small' ... ok -tests.test_sig.test_wrong_signature:39 -'cross-rsdpg-192-balanced' ... ok -tests.test_sig.test_wrong_signature:40 -'cross-rsdpg-192-fast' ... ok -tests.test_sig.test_wrong_signature:41 -'cross-rsdpg-192-small' ... ok -tests.test_sig.test_wrong_signature:42 -'cross-rsdpg-256-balanced' ... ok -tests.test_sig.test_wrong_signature:43 -'cross-rsdpg-256-fast' ... ok -tests.test_sig.test_wrong_signature:44 -'cross-rsdpg-256-small' ... ok -tests.test_sig.test_wrong_signature:45 -'OV-Is' ... ok -tests.test_sig.test_wrong_signature:46 -'OV-Ip' ... ok -tests.test_sig.test_wrong_signature:47 -'OV-III' ... ok -tests.test_sig.test_wrong_signature:48 -'OV-V' ... ok -tests.test_sig.test_wrong_signature:49 -'OV-Is-pkc' ... ok -tests.test_sig.test_wrong_signature:50 -'OV-Ip-pkc' ... ok -tests.test_sig.test_wrong_signature:51 -'OV-III-pkc' ... ok -tests.test_sig.test_wrong_signature:52 -'OV-V-pkc' ... ok -tests.test_sig.test_wrong_signature:53 -'OV-Is-pkc-skc' ... ok -tests.test_sig.test_wrong_signature:54 -'OV-Ip-pkc-skc' ... ok -tests.test_sig.test_wrong_signature:55 -'OV-III-pkc-skc' ... ok -tests.test_sig.test_wrong_signature:56 -'OV-V-pkc-skc' ... ok -tests.test_sig.test_wrong_signature:57 -'SNOVA_24_5_4' ... ok -tests.test_sig.test_wrong_signature:58 -'SNOVA_24_5_4_SHAKE' ... ok -tests.test_sig.test_wrong_signature:59 -'SNOVA_24_5_4_esk' ... ok -tests.test_sig.test_wrong_signature:60 -'SNOVA_24_5_4_SHAKE_esk' ... ok -tests.test_sig.test_wrong_signature:61 -'SNOVA_37_17_2' ... ok -tests.test_sig.test_wrong_signature:62 -'SNOVA_25_8_3' ... ok -tests.test_sig.test_wrong_signature:63 -'SNOVA_56_25_2' ... ok -tests.test_sig.test_wrong_signature:64 -'SNOVA_49_11_3' ... ok -tests.test_sig.test_wrong_signature:65 -'SNOVA_37_8_4' ... ok -tests.test_sig.test_wrong_signature:66 -'SNOVA_24_5_5' ... ok -tests.test_sig.test_wrong_signature:67 -'SNOVA_60_10_4' ... ok -tests.test_sig.test_wrong_signature:68 -'SNOVA_29_6_5' ... ok -tests.test_kem.test_not_enabled ... ok -tests.test_kem.test_not_supported ... ok -tests.test_kem.test_python_attributes ... ok -tests.test_kem.test_correctness:1 -'BIKE-L1' ... ok -tests.test_kem.test_correctness:2 -'BIKE-L3' ... ok -tests.test_kem.test_correctness:3 -'BIKE-L5' ... ok -tests.test_kem.test_correctness:4 -'Classic-McEliece-348864' ... ok -tests.test_kem.test_correctness:5 -'Classic-McEliece-348864f' ... ok -tests.test_kem.test_correctness:6 -'Classic-McEliece-460896' ... ok -tests.test_kem.test_correctness:7 -'Classic-McEliece-460896f' ... ok -tests.test_kem.test_correctness:8 -'Classic-McEliece-6688128' ... ok -tests.test_kem.test_correctness:9 -'Classic-McEliece-6688128f' ... ok -tests.test_kem.test_correctness:10 -'Classic-McEliece-6960119' ... ok -tests.test_kem.test_correctness:11 -'Classic-McEliece-6960119f' ... ok -tests.test_kem.test_correctness:12 -'Classic-McEliece-8192128' ... ok -tests.test_kem.test_correctness:13 -'Classic-McEliece-8192128f' ... ok -tests.test_kem.test_correctness:14 -'Kyber512' ... ok -tests.test_kem.test_correctness:15 -'Kyber768' ... ok -tests.test_kem.test_correctness:16 -'Kyber1024' ... ok -tests.test_kem.test_correctness:17 -'ML-KEM-512' ... ok -tests.test_kem.test_correctness:18 -'ML-KEM-768' ... ok -tests.test_kem.test_correctness:19 -'ML-KEM-1024' ... ok -tests.test_kem.test_correctness:20 -'sntrup761' ... ok -tests.test_kem.test_correctness:21 -'FrodoKEM-640-AES' ... ok -tests.test_kem.test_correctness:22 -'FrodoKEM-640-SHAKE' ... ok -tests.test_kem.test_correctness:23 -'FrodoKEM-976-AES' ... ok -tests.test_kem.test_correctness:24 -'FrodoKEM-976-SHAKE' ... ok -tests.test_kem.test_correctness:25 -'FrodoKEM-1344-AES' ... ok -tests.test_kem.test_correctness:26 -'FrodoKEM-1344-SHAKE' ... ok -tests.test_kem.test_seed_generation:1 -'ML-KEM-512' ... ok -tests.test_kem.test_seed_generation:2 -'ML-KEM-768' ... ok -tests.test_kem.test_seed_generation:3 -'ML-KEM-1024' ... ok -tests.test_kem.test_wrong_ciphertext:1 -'BIKE-L1' ... ok -tests.test_kem.test_wrong_ciphertext:2 -'BIKE-L3' ... ok -tests.test_kem.test_wrong_ciphertext:3 -'BIKE-L5' ... ok -tests.test_kem.test_wrong_ciphertext:4 -'Classic-McEliece-348864' ... ok -tests.test_kem.test_wrong_ciphertext:5 -'Classic-McEliece-348864f' ... ok -tests.test_kem.test_wrong_ciphertext:6 -'Classic-McEliece-460896' ... ok -tests.test_kem.test_wrong_ciphertext:7 -'Classic-McEliece-460896f' ... ok -tests.test_kem.test_wrong_ciphertext:8 -'Classic-McEliece-6688128' ... ok -tests.test_kem.test_wrong_ciphertext:9 -'Classic-McEliece-6688128f' ... ok -tests.test_kem.test_wrong_ciphertext:10 -'Classic-McEliece-6960119' ... ok -tests.test_kem.test_wrong_ciphertext:11 -'Classic-McEliece-6960119f' ... ok -tests.test_kem.test_wrong_ciphertext:12 -'Classic-McEliece-8192128' ... ok -tests.test_kem.test_wrong_ciphertext:13 -'Classic-McEliece-8192128f' ... ok -tests.test_kem.test_wrong_ciphertext:14 -'Kyber512' ... ok -tests.test_kem.test_wrong_ciphertext:15 -'Kyber768' ... ok -tests.test_kem.test_wrong_ciphertext:16 -'Kyber1024' ... ok -tests.test_kem.test_wrong_ciphertext:17 -'ML-KEM-512' ... ok -tests.test_kem.test_wrong_ciphertext:18 -'ML-KEM-768' ... ok -tests.test_kem.test_wrong_ciphertext:19 -'ML-KEM-1024' ... ok -tests.test_kem.test_wrong_ciphertext:20 -'sntrup761' ... ok -tests.test_kem.test_wrong_ciphertext:21 -'FrodoKEM-640-AES' ... ok -tests.test_kem.test_wrong_ciphertext:22 -'FrodoKEM-640-SHAKE' ... ok -tests.test_kem.test_wrong_ciphertext:23 -'FrodoKEM-976-AES' ... ok -tests.test_kem.test_wrong_ciphertext:24 -'FrodoKEM-976-SHAKE' ... ok -tests.test_kem.test_wrong_ciphertext:25 -'FrodoKEM-1344-AES' ... ok -tests.test_kem.test_wrong_ciphertext:26 -'FrodoKEM-1344-SHAKE' ... ok -tests.test_stfl_sig.test_not_enabled ... ok -tests.test_stfl_sig.test_not_supported ... ok -tests.test_stfl_sig.test_python_attributes ... ok - ----------------------------------------------------------------------- -Ran 340 tests in 43.259s - -OK