<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openssl/providers/implementations, branch openssl-3.5.6</title>
<subtitle>TLS/SSL and crypto library.</subtitle>
<id>http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.5.6</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.5.6'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/'/>
<updated>2026-04-07T12:24:29Z</updated>
<entry>
<title>Copyright year updates</title>
<updated>2026-04-07T12:24:29Z</updated>
<author>
<name>openssl-machine</name>
<email>openssl-machine@openssl.org</email>
</author>
<published>2026-04-07T12:24:29Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=7a70e2916d1e800f22b140d131c2ec14f88205e7'/>
<id>urn:sha1:7a70e2916d1e800f22b140d131c2ec14f88205e7</id>
<content type='text'>
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
MergeDate: Tue Apr  7 12:24:30 2026
Release: yes
</content>
</entry>
<entry>
<title>rsa_kem: validate RSA_public_encrypt() result in RSASVE</title>
<updated>2026-04-06T19:51:02Z</updated>
<author>
<name>Nikola Pajkovsky</name>
<email>nikolap@openssl.org</email>
</author>
<published>2026-03-19T11:16:08Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=001e01db3e996e13ffc72386fe79d03a6683b5ac'/>
<id>urn:sha1:001e01db3e996e13ffc72386fe79d03a6683b5ac</id>
<content type='text'>
RSA_public_encrypt() returns the number of bytes written on success and
-1 on failure. With the existing `if (ret)` check, a provider-side RSA KEM
encapsulation can incorrectly succeed when the underlying RSA public
encrypt operation fails. In that case the code reports success, returns
lengths as if encapsulation completed normally, and leaves the freshly
generated secret available instead of discarding it.

Tighten the success condition so RSASVE only succeeds when
RSA_public_encrypt() returns a positive value equal to the modulus-sized
output expected for RSA_NO_PADDING. Any other return value is treated as
failure, and the generated secret is cleansed before returning.

Fixes CVE-2026-31790
Signed-off-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;

Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.foundation&gt;
MergeDate: Mon Apr  6 19:51:30 2026
</content>
</entry>
<entry>
<title>Apply clang-format to the source tree</title>
<updated>2026-04-03T14:48:44Z</updated>
<author>
<name>Eugene Syromiatnikov</name>
<email>esyr@openssl.org</email>
</author>
<published>2026-01-28T15:31:54Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=6a74b539b9245c3f0848c0579f32ff9f14038946'/>
<id>urn:sha1:6a74b539b9245c3f0848c0579f32ff9f14038946</id>
<content type='text'>
Ensure that all the source files are formatted with the current
.clang-format configuration, to avoid spurious clang-format checker
errors when arbitrary files are touched.

Signed-off-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;

Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.foundation&gt;
MergeDate: Fri Apr  3 14:49:00 2026
(Merged from https://github.com/openssl/openssl/pull/29822)
</content>
</entry>
<entry>
<title>Fix DSA sig dupctx pointer aliasing</title>
<updated>2026-03-24T15:57:52Z</updated>
<author>
<name>Viktor Dukhovni</name>
<email>openssl-users@dukhovni.org</email>
</author>
<published>2026-03-22T11:59:45Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=893439fa3d27a6d49940a7362ccfff7dfccf9edc'/>
<id>urn:sha1:893439fa3d27a6d49940a7362ccfff7dfccf9edc</id>
<content type='text'>
Same aliasing issue as with ECDSA in

    https://github.com/openssl/openssl/pull/30479

Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.foundation&gt;
MergeDate: Tue Mar 24 15:58:02 2026
(Merged from https://github.com/openssl/openssl/pull/30529)
</content>
</entry>
<entry>
<title>Fix ECDSA sig CTX dup "sig" aliasing, error paths</title>
<updated>2026-03-20T18:25:27Z</updated>
<author>
<name>Viktor Dukhovni</name>
<email>openssl-users@dukhovni.org</email>
</author>
<published>2026-03-16T00:51:45Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=8cbc011f02fb8e00db3f8e5c1f5b7a5296c908c1'/>
<id>urn:sha1:8cbc011f02fb8e00db3f8e5c1f5b7a5296c908c1</id>
<content type='text'>
- The context "sig" field ended up shared by both contexts
  after a dup, leading to a later double-free.

Reported by Stanislav Fort and Pavel Kohout of Aisle Research.

- Rare error paths could lead to a memory leak or to use-after-free
  and/or double-free.

Reported by Kenaz Wang.

Fixes: edd3b7a309f8 "Add ECDSA to providers"
Fixes: f68ba38e1890 "Refactor OpenSSL 'ECDSA' EVP_SIGNATURE to also include ECDSA+hash composites"

Reviewed-by: Tomas Mraz &lt;tomas@openssl.foundation&gt;
Reviewed-by: Shane Lontis &lt;shane.lontis@oracle.com&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
MergeDate: Fri Mar 20 18:25:35 2026
(Merged from https://github.com/openssl/openssl/pull/30479)
</content>
</entry>
<entry>
<title>Fix incorrect error return in ppc_aes_gcm_cipher_update decrypt path</title>
<updated>2026-03-18T07:05:25Z</updated>
<author>
<name>Scott</name>
<email>scott@elyanlabs.ai</email>
</author>
<published>2026-03-16T17:30:50Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=1734090eeea99afffd606a299facd0eea117960b'/>
<id>urn:sha1:1734090eeea99afffd606a299facd0eea117960b</id>
<content type='text'>
ppc_aes_gcm_cipher_update() returns 1 on success and 0 on failure.
The decrypt pre-alignment path (line 122) incorrectly returned -1
instead of 0 when CRYPTO_gcm128_decrypt() failed.

Since the caller checks `if (!hw-&gt;cipherupdate(...))`, and !(-1)
evaluates to 0 (false) in C, the error was silently swallowed and
GCM processing continued with potentially corrupt state.

The encrypt path at line 98 correctly returns 0. This was likely a
copy-paste error when the decrypt path was added.

Fixes #30380

CLA: trivial

Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
MergeDate: Wed Mar 18 07:05:30 2026
(Merged from https://github.com/openssl/openssl/pull/30452)
</content>
</entry>
<entry>
<title>Fix integer truncation in ppc_aes_gcm_crypt</title>
<updated>2026-03-17T09:45:11Z</updated>
<author>
<name>Scott</name>
<email>scott@elyanlabs.ai</email>
</author>
<published>2026-03-16T03:53:04Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=542c585efa6051eaa00a4bdb4641b919bcc7c336'/>
<id>urn:sha1:542c585efa6051eaa00a4bdb4641b919bcc7c336</id>
<content type='text'>
The assembly functions ppc_aes_gcm_encrypt and ppc_aes_gcm_decrypt
return size_t, but their return values were stored in int variables,
causing truncation on PPC64 where size_t is 64-bit. This could lead
to incorrect results when processing inputs larger than 2GB via
EVP_Cipher() which accepts unsigned int lengths.

Change the types of s and ndone from int to size_t to match the
function return type and the return type of ppc_aes_gcm_crypt itself.

Tested on POWER8 S824 (ppc64le) — all EVP and cipher tests pass,
AES-128-GCM benchmarks at 2.94 GB/s with hardware acceleration.

CLA: trivial

Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
MergeDate: Tue Mar 17 09:44:33 2026
(Merged from https://github.com/openssl/openssl/pull/30437)

(cherry picked from commit e443447588640d099a3e2f1001cf67dab921f935)
</content>
</entry>
<entry>
<title>ml-kem: wipe full seed buffer in ml_kem_gen_cleanup</title>
<updated>2026-03-13T08:42:35Z</updated>
<author>
<name>nkraetzschmar</name>
<email>9020053+nkraetzschmar@users.noreply.github.com</email>
</author>
<published>2026-03-10T21:33:59Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=7b1518b16738e9892fb1fd08ec2d0d62614f3b7a'/>
<id>urn:sha1:7b1518b16738e9892fb1fd08ec2d0d62614f3b7a</id>
<content type='text'>
The gen ctx stores seed material in uint8_t seedbuf[ML_KEM_SEED_BYTES],
where ML_KEM_SEED_BYTES = ML_KEM_RANDOM_BYTES * 2.
When cleanup runs and gctx-&gt;seed != NULL, it wiped ML_KEM_RANDOM_BYTES
so clearing only half of the seed buffer.

This change wipes the entire buffer instead.

CLA: trivial

Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
MergeDate: Fri Mar 13 08:42:41 2026
(Merged from https://github.com/openssl/openssl/pull/30355)
</content>
</entry>
<entry>
<title>Fix stack buffer over-read in DES OFB/CFB64 via unchecked num parameter</title>
<updated>2026-03-12T14:27:09Z</updated>
<author>
<name>OwenSanzas</name>
<email>zesheng@tamu.edu</email>
</author>
<published>2026-03-10T00:05:35Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=7802eee4d9e2f9926288999aa1689bc0fb703d9e'/>
<id>urn:sha1:7802eee4d9e2f9926288999aa1689bc0fb703d9e</id>
<content type='text'>
The `num` parameter in DES OFB64/CFB64 functions tracks the byte offset
within an 8-byte DES block, so valid values are 0-7. However, neither
the EVP set_params path nor the low-level DES functions validated this
bound, allowing an out-of-range `num` to cause a stack buffer over-read
when used as an array index into the 8-byte keystream buffer.

Fix at two levels:
1. Provider layer: reject num &gt;= blocksize in
   ossl_cipher_common_set_ctx_params() before it reaches the cipher.
2. Low-level DES: mask `*num` with `&amp; 0x07` on entry to
   DES_ofb64_encrypt, DES_ede3_ofb64_encrypt, DES_cfb64_encrypt,
   and DES_ede3_cfb64_encrypt, consistent with how `n` is already
   masked at the end of these functions before being written back.

Fixes #30284

Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
MergeDate: Thu Mar 12 14:24:12 2026
(Merged from https://github.com/openssl/openssl/pull/30332)

(cherry picked from commit 134342e194a23b1d3cc0687b05d97cfdd0f31c4a)
</content>
</entry>
<entry>
<title>Fix logic errors for HMAC-DRBG</title>
<updated>2026-03-03T20:05:57Z</updated>
<author>
<name>Andrew Dinh</name>
<email>andrewd@openssl.org</email>
</author>
<published>2026-03-02T16:11:47Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=6dd43dcaf1a38d93f6b57cebf00490599bb4d8a3'/>
<id>urn:sha1:6dd43dcaf1a38d93f6b57cebf00490599bb4d8a3</id>
<content type='text'>
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
MergeDate: Tue Mar  3 20:06:04 2026
(Merged from https://github.com/openssl/openssl/pull/30232)
</content>
</entry>
</feed>
