Commit Graph

370 Commits

Author SHA1 Message Date
Daniel Pouzzner 60d1e222b2 globally fix all "BLAKE2" references (implicit BLAKE2B) to explicit "BLAKE2B":
* implement legacy compatibility in settings.h and configure.ac (adds --enable-blake2b while retaining --enable-blake2);
* fix incorrect Blake2 gates in wolfcrypt/src/hash.c wc_HashGetDigestSize() and wc_HashGetBlockSize();
* in wolfcrypt/test/test.c hash_test(), backfill missing Blake2 test coverage and separate blake2b from blake2s in typesHashBad[];
* in tests/api/test_hash.c, separate blake2b from blake2s in notCompiledHash[], sizeSupportedHash[], and sizeNotCompiledHash[].
2026-04-07 13:18:53 -05:00
Josh Holtrop aa33d7be35 Rust wrapper: chacha20_poly1305: add debug_assert checking in-place operation maximum length 2026-03-26 09:09:55 -04:00
Josh Holtrop 444f90553a Rust wrapper: document XChaCha20Poly1305 encrypt_in_place_detached maximum buffer length 2026-03-25 13:48:03 -04:00
Josh Holtrop 5d9439c581 Rust wrapper: aes: avoid overlapping Rust slices 2026-03-25 13:43:19 -04:00
Josh Holtrop 23cb7ae30c Rust wrapper: add cipher trait support 2026-03-25 10:51:06 -04:00
Josh Holtrop 873bc05cde Rust wrapper: add aead trait support 2026-03-25 10:51:00 -04:00
Josh Holtrop 07acf8d33d Rust wrapper: add rand_core trait support 2026-03-25 10:50:52 -04:00
Daniel Pouzzner 7efc962d04 Merge pull request #10031 from holtrop-wolfssl/rust-cross-compile-support
Rust wrapper: update build.rs to support cross-compiling and bare-metal targets
2026-03-25 09:46:40 -05:00
Josh Holtrop 34afd28541 Rust wrapper: build.rs improvements from code review 2026-03-25 09:00:28 -04:00
Josh Holtrop a511e45d30 Rust wrapper: build.rs improvements per code review 2026-03-25 08:15:42 -04:00
Tobias Frauenschläger 3fd13b819d Guard old non-ctx ML-DSA API by default 2026-03-24 11:16:22 +01:00
Josh Holtrop ffa466f463 Rust wrapper: minor build.rs improvements for cross-compiling 2026-03-23 11:22:47 -04:00
Josh Holtrop fa25a3818a Rust wrapper: update build.rs to support cross-compiling and bare-metal targets 2026-03-20 13:25:47 -04:00
David Garske be7bf60e38 Merge pull request #10010 from SparkiDev/dilithium_ctxlen_byte
Dilithium: fix API so that context length is byte
2026-03-19 12:26:42 -07:00
Sean Parkinson a8247bfd62 Dilithium: fix API so that context length is byte
Only allowed to have a context length of 0..255 bytes.
Make all context len parameters type byte.
2026-03-19 14:28:22 +10:00
Josh Holtrop b6584d1e96 Rust wrapper: wolfssl-wolfcrypt crate version 1.2.0 2026-03-13 08:08:23 -04:00
Josh Holtrop fa07db2cc6 Rust wrapper: add lms module 2026-03-06 10:19:12 -05:00
Josh Holtrop a87446ca9e Rust wrapper: mlkem: avoid unit test warnings 2026-03-02 11:49:14 -05:00
Josh Holtrop d12285cb6f Rust wrapper: mlkem: update ss buffer length requirement comment 2026-02-27 15:04:16 -05:00
Josh Holtrop 4235fa59b6 Add comments explaining ct.len() and ss.len() checks 2026-02-26 15:09:12 -05:00
Josh Holtrop 67c500ec87 Rust wrapper: add mlkem module 2026-02-25 14:16:20 -05:00
Josh Holtrop 7af0fa497a Rust wrapper: update dilithium module after review 2026-02-24 14:23:59 -05:00
Josh Holtrop 504617bbe9 Rust wrapper: add dilithium module 2026-02-23 10:54:21 -05:00
Josh Holtrop 3da3e12edc Rust wrapper: fix no_std support
Generate bindgen API with core instead of std
Replace C types using std:: with core::
Replace std::mem usage with core::mem
2026-02-20 07:10:01 -05:00
Josh Holtrop 2ada1a3629 Rust wrapper: add compatibility with older FIPS v5 package 2026-02-19 12:50:05 -05:00
JacobBarthelmeh a156ed7bc7 update Copyright year 2026-02-18 09:52:21 -07:00
Sean Parkinson bf86450c01 Merge pull request #9749 from holtrop-wolfssl/rust-wolfssl-wolfcrypt-crate-1.1.0
Rust wrapper: update wolfssl-wolfcrypt crate to v1.1.0
2026-02-10 21:21:15 +10:00
Juliusz Sosinowicz 40d3befa61 Extend Ada bindings
Add Ada bindings for SHA-256, RSA sign/verify, and AES-CBC from
wolfCrypt. Use XMALLOC/XFREE for dynamic allocation and add GNATprove
ownership annotations to enable static leak detection.

Refactor the Ada wrapper into a base package (wolfssl.ads) and a child
package (wolfssl-full_runtime) to separate code that depends on
Interfaces.C.Strings and GNAT.Sockets from zero-footprint-compatible
code.

Add standalone examples for SHA-256 hashing, RSA signature verification,
and AES encryption under wrapper/Ada/examples/.

Add AUnit test suites for SHA-256, RSA, and AES bindings under
wrapper/Ada/tests/ with Valgrind suppressions and Alire integration.

Move TLS client/server examples into wrapper/Ada/examples/src/ and
update build files (default.gpr, examples.gpr, include.am) accordingly.

Update CI (ada.yml) to build default.gpr, run AUnit tests, run the
client-server examples, and run GNATprove.

Co-authored-by: Joakim Strandberg <joakim@mequinox.se>
2026-02-09 13:44:35 +01:00
Josh Holtrop fbed7e8553 Rust wrapper: update CHANGELOG for wolfssl-wolfcrypt v1.1.0 2026-02-06 14:44:44 -05:00
Josh Holtrop 70a7f4d5de Rust wrapper: update wolfssl-wolfcrypt crate to v1.1.0 2026-02-06 13:18:18 -05:00
Josh Holtrop f9cea09f5b Rust wrapper: add FIPS support 2026-02-04 14:32:05 -05:00
Josh Holtrop 88b34a68d8 Rust wrapper: ECC: Allow import_private_*() calls with empty pub_buf slice 2026-01-29 10:32:50 -05:00
David Garske 46251bb401 Fix issue with NO_DES3_TLS_SUITES 2026-01-27 14:42:41 -08:00
Josh Holtrop 4a92ee31bb Rust HMAC-BLAKE2: require exact output buffer size 2026-01-20 15:31:58 -05:00
Josh Holtrop e59ddb95c7 Rust blake2: remove unnecessary cfg guards 2026-01-20 14:56:55 -05:00
Josh Holtrop a555d5290a Rust wrapper: add HMAC-BLAKE2[bs] wrappers 2026-01-20 08:10:16 -05:00
Daniel Pouzzner 1d247b744c wrapper/rust/: fix unit tests to avoid out-of-order wolfCrypt_Cleanup(). 2026-01-13 14:43:50 -06:00
Josh Holtrop a9b2e83d1c Rust wrapper: add one-shot XChaCha20-Poly1305 encrypt/decrypt functions 2026-01-07 11:43:08 -05:00
Josh Holtrop 9007d12d2a Rust wrapper: add wolfssl_wolfcrypt::chacha20_poly1305 module 2026-01-05 08:44:34 -05:00
Josh Holtrop 8c125df85e Rust wrapper: ensure curve25519_key struct will have free called after init 2025-12-30 10:46:44 -05:00
Josh Holtrop e971cb6942 Rust wrapper: avoid warning when neither blake2b nor blake2s is enabled 2025-12-29 14:33:25 -05:00
Josh Holtrop 0a834bed7a Rust wrapper: add wolfssl_wolfcrypt::curve25519 module 2025-12-29 14:33:25 -05:00
Josh Holtrop bbac280890 Rust wrapper: add wolfssl_wolfcrypt::blake2 module 2025-12-26 13:02:27 -05:00
Josh Holtrop 9020373405 Rust crate: update CHANGELOG for v1.0.0 2025-12-16 10:08:10 -05:00
Josh Holtrop 37fa1581d3 Rust crate: bump version to 1.0.0 2025-12-16 10:04:32 -05:00
Josh Holtrop 95e8276d55 Rust crate: add CHANGELOG.md 2025-12-16 09:06:07 -05:00
Josh Holtrop 52e7801939 Rust crate: bump version 2025-12-16 09:03:10 -05:00
Josh Holtrop 357b8952c6 Rust crate: only set link-search and link-arg for local repo build 2025-12-16 09:02:34 -05:00
Josh Holtrop a3cc7214e7 Update include.am for Rust crate rename 2025-12-15 16:28:26 -05:00
Josh Holtrop 447ba11379 Add README.md in wolfssl-wolfcrypt crate directory 2025-12-15 15:22:44 -05:00