CVE-2026-71892

Medium

Description

In Bouncy Castle for Java before 1.86, the opt-in key-size validation on CMS key-transport recipients, org.bouncycastle.cms.jcajce.JceKeyTransRecipient.setKeySizeValidation(true), never ran for a message using RFC 9709 content-encryption key derivation (id-alg-cek-hkdf-sha256). The branch that should have selected the actual content-encryption algorithm carried in the key derivation AlgorithmIdentifier's parameters compared the encrypted-key byte array against the id-alg-cek-hkdf-sha256 object identifier, a comparison between a byte array and an ASN1ObjectIdentifier that is false for every possible input, so the check fell through to a key-size lookup on the outer wrapper OID. That OID identifies a key-derivation construction rather than a cipher and has no registered key size, so the size comparison was skipped entirely. A key-transport EnvelopedData or AuthEnvelopedData whose transported, HKDF-derived content-encryption key did not match the key size of the advertised content-encryption algorithm was therefore accepted even with validation explicitly enabled, silently defeating the only mechanism the API offers for enforcing recovered key size. The recipient now dispatches on the content-encryption AlgorithmIdentifier's algorithm OID, so validation checks the recovered key against the inner content-encryption algorithm. Messages with a matching key size, non-HKDF messages, and recipients that do not enable validation are unaffected. This issue also affects Bouncy Castle for Java FIPS (BC-FJA) before bcpkix-fips 2.0.13 (2.0.X series) and 2.1.13 (2.1.X series).

SeverityMedium
CVSS6.9
Exploit probability—
ProductBC-FJA
PublishedOct 3, 2026
First seenOct 3, 2026
Weakness typeCWE-697CWE-697

How to fix

Update
  • Legion of the Bouncy Castle Inc. BC-FJA2.0.13, 2.1.13 or later
  • Legion of the Bouncy Castle Inc. BC-JAVA1.86 or later

Affected products

ProductAffected versionsFixed in
Legion of the Bouncy Castle Inc. BC-FJA2.0.7 ≤ v < 2.0.13, 2.1.0 ≤ v < 2.1.132.0.13, 2.1.13
Legion of the Bouncy Castle Inc. BC-JAVA1.78 ≤ v < 1.861.86

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.