1-- Copyright 2022 The OpenSSL Project Authors. All Rights Reserved. 2-- 3-- Licensed under the Apache License 2.0 (the "License"). You may not use 4-- this file except in compliance with the License. You can obtain a copy 5-- in the file LICENSE in the source distribution or at 6-- https://www.openssl.org/source/license.html 7 8-- ------------------------------------------------------------------- 9-- Taken from RFC 3279, 3 ASN.1 Module 10-- (https://www.rfc-editor.org/rfc/rfc3279.html#section-3) 11 12ansi-X9-62 OBJECT IDENTIFIER ::= { 13 iso(1) member-body(2) us(840) 10045 } 14 15-- Arc for ECDSA signature OIDS 16 17id-ecSigType OBJECT IDENTIFIER ::= { ansi-X9-62 signatures(4) } 18 19-- OID for ECDSA signatures with SHA-1 20 21ecdsa-with-SHA1 OBJECT IDENTIFIER ::= { id-ecSigType 1 } 22 23id-publicKeyType OBJECT IDENTIFIER ::= { ansi-X9-62 keyType(2) } 24 25id-ecPublicKey OBJECT IDENTIFIER ::= { id-publicKeyType 1 } 26 27-- Named Elliptic Curves in ANSI X9.62. 28 29ellipticCurve OBJECT IDENTIFIER ::= { ansi-X9-62 curves(3) } 30 31c-TwoCurve OBJECT IDENTIFIER ::= { 32 ellipticCurve characteristicTwo(0) } 33 34c2pnb163v1 OBJECT IDENTIFIER ::= { c-TwoCurve 1 } 35c2pnb163v2 OBJECT IDENTIFIER ::= { c-TwoCurve 2 } 36c2pnb163v3 OBJECT IDENTIFIER ::= { c-TwoCurve 3 } 37c2pnb176w1 OBJECT IDENTIFIER ::= { c-TwoCurve 4 } 38c2tnb191v1 OBJECT IDENTIFIER ::= { c-TwoCurve 5 } 39c2tnb191v2 OBJECT IDENTIFIER ::= { c-TwoCurve 6 } 40c2tnb191v3 OBJECT IDENTIFIER ::= { c-TwoCurve 7 } 41c2onb191v4 OBJECT IDENTIFIER ::= { c-TwoCurve 8 } 42c2onb191v5 OBJECT IDENTIFIER ::= { c-TwoCurve 9 } 43c2pnb208w1 OBJECT IDENTIFIER ::= { c-TwoCurve 10 } 44c2tnb239v1 OBJECT IDENTIFIER ::= { c-TwoCurve 11 } 45c2tnb239v2 OBJECT IDENTIFIER ::= { c-TwoCurve 12 } 46c2tnb239v3 OBJECT IDENTIFIER ::= { c-TwoCurve 13 } 47c2onb239v4 OBJECT IDENTIFIER ::= { c-TwoCurve 14 } 48c2onb239v5 OBJECT IDENTIFIER ::= { c-TwoCurve 15 } 49c2pnb272w1 OBJECT IDENTIFIER ::= { c-TwoCurve 16 } 50c2pnb304w1 OBJECT IDENTIFIER ::= { c-TwoCurve 17 } 51c2tnb359v1 OBJECT IDENTIFIER ::= { c-TwoCurve 18 } 52c2pnb368w1 OBJECT IDENTIFIER ::= { c-TwoCurve 19 } 53c2tnb431r1 OBJECT IDENTIFIER ::= { c-TwoCurve 20 } 54 55primeCurve OBJECT IDENTIFIER ::= { ellipticCurve prime(1) } 56 57prime192v1 OBJECT IDENTIFIER ::= { primeCurve 1 } 58prime192v2 OBJECT IDENTIFIER ::= { primeCurve 2 } 59prime192v3 OBJECT IDENTIFIER ::= { primeCurve 3 } 60prime239v1 OBJECT IDENTIFIER ::= { primeCurve 4 } 61prime239v2 OBJECT IDENTIFIER ::= { primeCurve 5 } 62prime239v3 OBJECT IDENTIFIER ::= { primeCurve 6 } 63prime256v1 OBJECT IDENTIFIER ::= { primeCurve 7 } 64 65-- ------------------------------------------------------------------- 66-- Taken from RFC 5758, 3.2. ECDSA Signature Algorithm 67-- (https://www.rfc-editor.org/rfc/rfc5758.html#section-3.2) 68 69ecdsa-with-SHA224 OBJECT IDENTIFIER ::= { iso(1) member-body(2) 70 us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 1 } 71 72ecdsa-with-SHA256 OBJECT IDENTIFIER ::= { iso(1) member-body(2) 73 us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 2 } 74 75ecdsa-with-SHA384 OBJECT IDENTIFIER ::= { iso(1) member-body(2) 76 us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 3 } 77 78ecdsa-with-SHA512 OBJECT IDENTIFIER ::= { iso(1) member-body(2) 79 us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 4 } 80 81-- ------------------------------------------------------------------- 82-- Taken from https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration 83 84sigAlgs OBJECT IDENTIFIER ::= { 2 16 840 1 101 3 4 3 } 85 86id-ecdsa-with-sha3-224 OBJECT IDENTIFIER ::= { sigAlgs 9 } 87id-ecdsa-with-sha3-256 OBJECT IDENTIFIER ::= { sigAlgs 10 } 88id-ecdsa-with-sha3-384 OBJECT IDENTIFIER ::= { sigAlgs 11 } 89id-ecdsa-with-sha3-512 OBJECT IDENTIFIER ::= { sigAlgs 12 } 90 91