Security advisory
A side-channel issue was discovered in Botan before 2.9.0. An attacker capable of precisely measuring the time taken for ECC key generation may be able to derive information about the high bits of the secret key, as the function to derive the public point from the secret scalar uses an unblinded Montgomery ladder whose loop iteration count depends on the bitlength of the secret. This issue affects only key generation, not ECDSA signatures or ECDH key agreement.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2018-20187
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 07:34 UTC · Revision 1
Source evidence
A side-channel issue was discovered in Botan before 2.9.0. An attacker capable of precisely measuring the time taken for ECC key generation may be able to derive information about the high bits of the secret key, as the function to derive the public point from the secret scalar uses an unblinded Montgomery ladder whose loop iteration count depends on the bitlength of the secret. This issue affects only key generation, not ECDSA signatures or ECDH key agreement.
osv:CVE-2018-20187
Complete source record
{
"id": "540b1781b68110864053b90bef82486a9ec1bffa1a3544b15210a5f70273af2b",
"url": "https://osv.dev/vulnerability/CVE-2018-20187",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2018-20187",
"summary": "A side-channel issue was discovered in Botan before 2.9.0. An attacker capable of precisely measuring the time taken for ECC key generation may be able to derive information about the high bits of the secret key, as the function to derive the public point from the secret scalar uses an unblinded Montgomery ladder whose loop iteration count depends on the bitlength of the secret. This issue affects only key generation, not ECDSA signatures or ECDH key agreement.",
"evidence": "osv:CVE-2018-20187",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2018-20187",
"aliases": [
"CVE-2018-20187"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/randombit/botan",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "a95c67a5a1fd8c9afd9cb69770cb1542f558f163"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:botan_project:botan:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "2.9.0"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"2.8.0",
"2.7.0",
"2.6.0",
"2.5.0",
"2.4.0",
"2.3.0",
"2.2.0",
"2.1.0",
"2.0.1",
"2.0.0",
"1.11.34",
"1.11.33",
"1.11.32",
"1.11.31",
"1.11.30",
"1.11.29",
"1.11.28",
"1.11.27",
"1.11.26",
"1.11.25",
"1.11.24",
"1.11.23",
"1.11.22",
"1.11.21",
"1.11.20",
"1.11.19",
"1.11.18",
"1.11.17",
"1.11.16",
"1.11.15",
"1.11.14",
"1.11.13",
"1.11.12",
"1.11.11",
"1.11.10",
"1.11.9",
"1.11.8",
"1.11.7",
"1.11.6",
"1.11.5",
"1.11.3",
"1.11.2",
"1.11.0",
"1.10.1",
"1.10.0",
"1.9.18",
"1.9.17",
"1.9.16",
"1.9.15",
"1.10.0-rc1",
"1.9.14",
"1.9.13",
"1.9.12",
"1.9.11",
"1.9.10",
"1.9.9",
"1.9.8",
"1.9.7",
"1.9.6",
"1.9.5",
"1.9.4",
"1.9.3",
"1.8.8",
"1.8.7",
"1.8.6",
"1.8.5",
"1.8.4",
"1.8.3",
"1.8.2",
"1.7.24",
"1.7.23",
"1.7.22",
"1.7.21",
"1.7.20",
"1.7.19",
"1.7.18",
"1.7.17",
"1.7.16",
"1.7.15",
"1.7.11",
"1.7.10",
"1.7.9",
"1.7.8",
"1.7.7",
"1.7.6",
"1.7.5",
"1.7.4",
"1.7.3",
"1.7.1",
"1.7.0",
"1.6.1",
"1.6.0",
"1.5.13",
"1.5.12",
"1.5.11",
"1.5.10",
"1.5.9",
"1.5.8",
"1.5.7",
"1.5.6"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2018-20187.json"
}
}
],
"modified": "2026-10-24T10:30:55.156592235Z",
"provider": "osv",
"references": [
"https://botan.randombit.net/news.html",
"https://botan.randombit.net/security.html",
"https://github.com/crocs-muni/ECTester"
],
"provider_metadata": {}
},
"related_cves": [
{
"value": "CVE-2018-20187",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 438351,
"published_at": "2019-03-08T19:29:00.25+00:00"
}