CVE-2026-5588
Broken Cryptographic Algorithm in BC-JAVA PKIX Enables Signature Bypass
Publication date: 2026-04-15
Last updated on: 2026-04-21
Assigner: bcorg
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| legion_of_the_bouncy_castle_inc | bc-java | From 1.49 (inc) to 1.84 (exc) |
| legion_of_the_bouncy_castle_inc | bc-java | From 1.67 (inc) to 1.83 (inc) |
| legion_of_the_bouncy_castle_inc | bc-java | 1.84 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-327 | The product uses a broken or risky cryptographic algorithm or protocol. |
Attack-Flow Graph
AI Powered Q&A
How can this vulnerability impact me? :
Because the vulnerability allows an empty signature sequence to be accepted as valid, an attacker could exploit this to bypass signature verification.
This could lead to unauthorized code execution, data tampering, or acceptance of malicious data or software as legitimate, compromising the security and integrity of applications using the affected Bouncy Castle versions.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, you should upgrade the Bouncy Castle Java library (bc-java) to version 1.84 or later, where the issue with the PKIX draft CompositeVerifier accepting empty signature sequences as valid has been fixed.
Can you explain this vulnerability to me?
CVE-2026-5588 is a security vulnerability in the Bouncy Castle Java library (bc-java) affecting versions 1.67 through 1.83. The issue involves the PKIX draft CompositeVerifier component, which incorrectly accepts an empty signature sequence as valid during signature verification.
This flaw means that the system may treat an unsigned or empty signature as if it were valid, potentially allowing attackers to bypass signature validation checks.