{"id":"CVE-2026-12860","summary":"RSA PKCS#1 verification skips last two hash bytes in NULL-omitted path","details":"In Bouncy Castle for Java before 1.85, RSA PKCS#1 verification skips last two hash bytes in NULL-omitted path. This issue also affects Bouncy Castle for Java LTS before 2.73.12.","modified":"2026-08-14T18:56:30.689723793Z","published":"2026-08-03T02:55:58.379Z","related":["SUSE-SU-2026:23127-1","SUSE-SU-2026:23150-1","SUSE-SU-2026:3559-1","openSUSE-SU-2026:11445-1","openSUSE-SU-2026:21538-1"],"database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/12xxx/CVE-2026-12860.json","cna_assigner":"bcorg","cwe_ids":["CWE-347"]},"references":[{"type":"WEB","url":"https://www.bouncycastle.org/download/bouncy-castle-java-lts/"},{"type":"WEB","url":"https://www.bouncycastle.org/download/bouncy-castle-java/"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/12xxx/CVE-2026-12860.json"},{"type":"ADVISORY","url":"https://github.com/bcgit/bc-java/wiki/CVE%E2%80%902026%E2%80%9012860"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-12860"},{"type":"FIX","url":"https://github.com/bcgit/bc-java/commit/ea5970ea9b2fb91d763b904692fd21089ca3e396"},{"type":"PACKAGE","url":"https://github.com/bcgit/bc-java"},{"type":"PACKAGE","url":"https://github.com/bcgit/bc-lts-java"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/bcgit/bc-java","events":[{"introduced":"0"},{"fixed":"57fbd3c501f7a369f64eda311d6a709fc0bcae84"},{"fixed":"ea5970ea9b2fb91d763b904692fd21089ca3e396"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.85"}],"source":["DESCRIPTION","REFERENCES"]}},{"type":"GIT","repo":"https://github.com/bcgit/bc-lts-java","events":[{"introduced":"468b5082f3f0971e80bf9edb7029c17b39b9ba0c"},{"fixed":"f101b232c5d3e07ecdd504210a57e43831d6cd65"}],"database_specific":{"extracted_events":[{"introduced":"2.73.0"},{"fixed":"2.73.12"}],"source":"AFFECTED_FIELD"}}],"versions":["r1rv84","r1rv81","r1rv83","r1rv82","r1rv80","r1rv78","r1rv77","r1rv76","r1rv75","r1rv74","r1rv73","r2rv73dot11","r2rv73dot10","r2rv73dot9","r2rv73dot8","r2rv73dot6","r2rv73dot4","r2rv73dot3","r2rv73dot1","r2rv73dot0"],"database_specific":{"vanir_signatures_modified":"2026-08-12T15:33:29Z","vanir_signatures":[{"source":"https://github.com/bcgit/bc-java/commit/ea5970ea9b2fb91d763b904692fd21089ca3e396","target":{"file":"core/src/main/java/org/bouncycastle/crypto/signers/RSADigestSigner.java"},"deprecated":false,"digest":{"line_hashes":["5611821105480480002493896795181361887","206614374233145937923396890584867933075","163714429870128283419503549175425897371","17864387249599569544971015809818522030"],"threshold":0.9},"id":"CVE-2026-12860-17d26373","signature_type":"Line","signature_version":"v1"},{"source":"https://github.com/bcgit/bc-java/commit/ea5970ea9b2fb91d763b904692fd21089ca3e396","target":{"file":"core/src/test/java/org/bouncycastle/crypto/test/RSADigestSignerTest.java","function":"performTest"},"deprecated":false,"digest":{"function_hash":"93410348953507419320816936323015965502","length":3474},"id":"CVE-2026-12860-8560e1c2","signature_type":"Function","signature_version":"v1"},{"deprecated":false,"digest":{"function_hash":"258754839422204029531063916747410475740","length":984},"id":"CVE-2026-12860-ae6068fc","signature_type":"Function","signature_version":"v1","source":"https://github.com/bcgit/bc-java/commit/ea5970ea9b2fb91d763b904692fd21089ca3e396","target":{"file":"core/src/main/java/org/bouncycastle/crypto/signers/RSADigestSigner.java","function":"verifySignature"}},{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["108690284814566426704231951629510081609","197608660647380415510249712082339817840","173079048765313546866698394384836874550","240083361402276106155273580536978874679","107698163101833206373256843264976498451","163930171039528239075000106653880169526","35906746628211601233125645782864561960","206601313065153211406119791765086713362"]},"id":"CVE-2026-12860-bdae2adc","signature_type":"Line","signature_version":"v1","source":"https://github.com/bcgit/bc-java/commit/ea5970ea9b2fb91d763b904692fd21089ca3e396","target":{"file":"core/src/test/java/org/bouncycastle/crypto/test/RSADigestSignerTest.java"}}],"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-12860.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/U:Amber"}]}