Path: blob/main/crypto/openssl/providers/common/include/prov/der_ec.h
107173 views
/*1* WARNING: do not edit!2* Generated by Makefile from providers/common/include/prov/der_ec.h.in3*4* Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved.5*6* Licensed under the Apache License 2.0 (the "License"). You may not use7* this file except in compliance with the License. You can obtain a copy8* in the file LICENSE in the source distribution or at9* https://www.openssl.org/source/license.html10*/1112#include "crypto/ec.h"13#include "internal/der.h"1415/* Well known OIDs precompiled */16/* clang-format off */1718/*19* ecdsa-with-SHA1 OBJECT IDENTIFIER ::= { id-ecSigType 1 }20*/21#define DER_OID_V_ecdsa_with_SHA1 DER_P_OBJECT, 7, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x0122#define DER_OID_SZ_ecdsa_with_SHA1 923extern const unsigned char ossl_der_oid_ecdsa_with_SHA1[DER_OID_SZ_ecdsa_with_SHA1];2425/*26* id-ecPublicKey OBJECT IDENTIFIER ::= { id-publicKeyType 1 }27*/28#define DER_OID_V_id_ecPublicKey DER_P_OBJECT, 7, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x0129#define DER_OID_SZ_id_ecPublicKey 930extern const unsigned char ossl_der_oid_id_ecPublicKey[DER_OID_SZ_id_ecPublicKey];3132/*33* c2pnb163v1 OBJECT IDENTIFIER ::= { c-TwoCurve 1 }34*/35#define DER_OID_V_c2pnb163v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0136#define DER_OID_SZ_c2pnb163v1 1037extern const unsigned char ossl_der_oid_c2pnb163v1[DER_OID_SZ_c2pnb163v1];3839/*40* c2pnb163v2 OBJECT IDENTIFIER ::= { c-TwoCurve 2 }41*/42#define DER_OID_V_c2pnb163v2 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0243#define DER_OID_SZ_c2pnb163v2 1044extern const unsigned char ossl_der_oid_c2pnb163v2[DER_OID_SZ_c2pnb163v2];4546/*47* c2pnb163v3 OBJECT IDENTIFIER ::= { c-TwoCurve 3 }48*/49#define DER_OID_V_c2pnb163v3 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0350#define DER_OID_SZ_c2pnb163v3 1051extern const unsigned char ossl_der_oid_c2pnb163v3[DER_OID_SZ_c2pnb163v3];5253/*54* c2pnb176w1 OBJECT IDENTIFIER ::= { c-TwoCurve 4 }55*/56#define DER_OID_V_c2pnb176w1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0457#define DER_OID_SZ_c2pnb176w1 1058extern const unsigned char ossl_der_oid_c2pnb176w1[DER_OID_SZ_c2pnb176w1];5960/*61* c2tnb191v1 OBJECT IDENTIFIER ::= { c-TwoCurve 5 }62*/63#define DER_OID_V_c2tnb191v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0564#define DER_OID_SZ_c2tnb191v1 1065extern const unsigned char ossl_der_oid_c2tnb191v1[DER_OID_SZ_c2tnb191v1];6667/*68* c2tnb191v2 OBJECT IDENTIFIER ::= { c-TwoCurve 6 }69*/70#define DER_OID_V_c2tnb191v2 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0671#define DER_OID_SZ_c2tnb191v2 1072extern const unsigned char ossl_der_oid_c2tnb191v2[DER_OID_SZ_c2tnb191v2];7374/*75* c2tnb191v3 OBJECT IDENTIFIER ::= { c-TwoCurve 7 }76*/77#define DER_OID_V_c2tnb191v3 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0778#define DER_OID_SZ_c2tnb191v3 1079extern const unsigned char ossl_der_oid_c2tnb191v3[DER_OID_SZ_c2tnb191v3];8081/*82* c2onb191v4 OBJECT IDENTIFIER ::= { c-TwoCurve 8 }83*/84#define DER_OID_V_c2onb191v4 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0885#define DER_OID_SZ_c2onb191v4 1086extern const unsigned char ossl_der_oid_c2onb191v4[DER_OID_SZ_c2onb191v4];8788/*89* c2onb191v5 OBJECT IDENTIFIER ::= { c-TwoCurve 9 }90*/91#define DER_OID_V_c2onb191v5 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0992#define DER_OID_SZ_c2onb191v5 1093extern const unsigned char ossl_der_oid_c2onb191v5[DER_OID_SZ_c2onb191v5];9495/*96* c2pnb208w1 OBJECT IDENTIFIER ::= { c-TwoCurve 10 }97*/98#define DER_OID_V_c2pnb208w1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0A99#define DER_OID_SZ_c2pnb208w1 10100extern const unsigned char ossl_der_oid_c2pnb208w1[DER_OID_SZ_c2pnb208w1];101102/*103* c2tnb239v1 OBJECT IDENTIFIER ::= { c-TwoCurve 11 }104*/105#define DER_OID_V_c2tnb239v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0B106#define DER_OID_SZ_c2tnb239v1 10107extern const unsigned char ossl_der_oid_c2tnb239v1[DER_OID_SZ_c2tnb239v1];108109/*110* c2tnb239v2 OBJECT IDENTIFIER ::= { c-TwoCurve 12 }111*/112#define DER_OID_V_c2tnb239v2 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0C113#define DER_OID_SZ_c2tnb239v2 10114extern const unsigned char ossl_der_oid_c2tnb239v2[DER_OID_SZ_c2tnb239v2];115116/*117* c2tnb239v3 OBJECT IDENTIFIER ::= { c-TwoCurve 13 }118*/119#define DER_OID_V_c2tnb239v3 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0D120#define DER_OID_SZ_c2tnb239v3 10121extern const unsigned char ossl_der_oid_c2tnb239v3[DER_OID_SZ_c2tnb239v3];122123/*124* c2onb239v4 OBJECT IDENTIFIER ::= { c-TwoCurve 14 }125*/126#define DER_OID_V_c2onb239v4 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0E127#define DER_OID_SZ_c2onb239v4 10128extern const unsigned char ossl_der_oid_c2onb239v4[DER_OID_SZ_c2onb239v4];129130/*131* c2onb239v5 OBJECT IDENTIFIER ::= { c-TwoCurve 15 }132*/133#define DER_OID_V_c2onb239v5 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x0F134#define DER_OID_SZ_c2onb239v5 10135extern const unsigned char ossl_der_oid_c2onb239v5[DER_OID_SZ_c2onb239v5];136137/*138* c2pnb272w1 OBJECT IDENTIFIER ::= { c-TwoCurve 16 }139*/140#define DER_OID_V_c2pnb272w1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x10141#define DER_OID_SZ_c2pnb272w1 10142extern const unsigned char ossl_der_oid_c2pnb272w1[DER_OID_SZ_c2pnb272w1];143144/*145* c2pnb304w1 OBJECT IDENTIFIER ::= { c-TwoCurve 17 }146*/147#define DER_OID_V_c2pnb304w1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x11148#define DER_OID_SZ_c2pnb304w1 10149extern const unsigned char ossl_der_oid_c2pnb304w1[DER_OID_SZ_c2pnb304w1];150151/*152* c2tnb359v1 OBJECT IDENTIFIER ::= { c-TwoCurve 18 }153*/154#define DER_OID_V_c2tnb359v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x12155#define DER_OID_SZ_c2tnb359v1 10156extern const unsigned char ossl_der_oid_c2tnb359v1[DER_OID_SZ_c2tnb359v1];157158/*159* c2pnb368w1 OBJECT IDENTIFIER ::= { c-TwoCurve 19 }160*/161#define DER_OID_V_c2pnb368w1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x13162#define DER_OID_SZ_c2pnb368w1 10163extern const unsigned char ossl_der_oid_c2pnb368w1[DER_OID_SZ_c2pnb368w1];164165/*166* c2tnb431r1 OBJECT IDENTIFIER ::= { c-TwoCurve 20 }167*/168#define DER_OID_V_c2tnb431r1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x00, 0x14169#define DER_OID_SZ_c2tnb431r1 10170extern const unsigned char ossl_der_oid_c2tnb431r1[DER_OID_SZ_c2tnb431r1];171172/*173* prime192v1 OBJECT IDENTIFIER ::= { primeCurve 1 }174*/175#define DER_OID_V_prime192v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x01176#define DER_OID_SZ_prime192v1 10177extern const unsigned char ossl_der_oid_prime192v1[DER_OID_SZ_prime192v1];178179/*180* prime192v2 OBJECT IDENTIFIER ::= { primeCurve 2 }181*/182#define DER_OID_V_prime192v2 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x02183#define DER_OID_SZ_prime192v2 10184extern const unsigned char ossl_der_oid_prime192v2[DER_OID_SZ_prime192v2];185186/*187* prime192v3 OBJECT IDENTIFIER ::= { primeCurve 3 }188*/189#define DER_OID_V_prime192v3 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x03190#define DER_OID_SZ_prime192v3 10191extern const unsigned char ossl_der_oid_prime192v3[DER_OID_SZ_prime192v3];192193/*194* prime239v1 OBJECT IDENTIFIER ::= { primeCurve 4 }195*/196#define DER_OID_V_prime239v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x04197#define DER_OID_SZ_prime239v1 10198extern const unsigned char ossl_der_oid_prime239v1[DER_OID_SZ_prime239v1];199200/*201* prime239v2 OBJECT IDENTIFIER ::= { primeCurve 5 }202*/203#define DER_OID_V_prime239v2 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x05204#define DER_OID_SZ_prime239v2 10205extern const unsigned char ossl_der_oid_prime239v2[DER_OID_SZ_prime239v2];206207/*208* prime239v3 OBJECT IDENTIFIER ::= { primeCurve 6 }209*/210#define DER_OID_V_prime239v3 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x06211#define DER_OID_SZ_prime239v3 10212extern const unsigned char ossl_der_oid_prime239v3[DER_OID_SZ_prime239v3];213214/*215* prime256v1 OBJECT IDENTIFIER ::= { primeCurve 7 }216*/217#define DER_OID_V_prime256v1 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07218#define DER_OID_SZ_prime256v1 10219extern const unsigned char ossl_der_oid_prime256v1[DER_OID_SZ_prime256v1];220221/*222* ecdsa-with-SHA224 OBJECT IDENTIFIER ::= { iso(1) member-body(2)223* us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 1 }224*/225#define DER_OID_V_ecdsa_with_SHA224 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x01226#define DER_OID_SZ_ecdsa_with_SHA224 10227extern const unsigned char ossl_der_oid_ecdsa_with_SHA224[DER_OID_SZ_ecdsa_with_SHA224];228229/*230* ecdsa-with-SHA256 OBJECT IDENTIFIER ::= { iso(1) member-body(2)231* us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 2 }232*/233#define DER_OID_V_ecdsa_with_SHA256 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02234#define DER_OID_SZ_ecdsa_with_SHA256 10235extern const unsigned char ossl_der_oid_ecdsa_with_SHA256[DER_OID_SZ_ecdsa_with_SHA256];236237/*238* ecdsa-with-SHA384 OBJECT IDENTIFIER ::= { iso(1) member-body(2)239* us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 3 }240*/241#define DER_OID_V_ecdsa_with_SHA384 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x03242#define DER_OID_SZ_ecdsa_with_SHA384 10243extern const unsigned char ossl_der_oid_ecdsa_with_SHA384[DER_OID_SZ_ecdsa_with_SHA384];244245/*246* ecdsa-with-SHA512 OBJECT IDENTIFIER ::= { iso(1) member-body(2)247* us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 4 }248*/249#define DER_OID_V_ecdsa_with_SHA512 DER_P_OBJECT, 8, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x04250#define DER_OID_SZ_ecdsa_with_SHA512 10251extern const unsigned char ossl_der_oid_ecdsa_with_SHA512[DER_OID_SZ_ecdsa_with_SHA512];252253/*254* id-ecdsa-with-sha3-224 OBJECT IDENTIFIER ::= { sigAlgs 9 }255*/256#define DER_OID_V_id_ecdsa_with_sha3_224 DER_P_OBJECT, 9, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x09257#define DER_OID_SZ_id_ecdsa_with_sha3_224 11258extern const unsigned char ossl_der_oid_id_ecdsa_with_sha3_224[DER_OID_SZ_id_ecdsa_with_sha3_224];259260/*261* id-ecdsa-with-sha3-256 OBJECT IDENTIFIER ::= { sigAlgs 10 }262*/263#define DER_OID_V_id_ecdsa_with_sha3_256 DER_P_OBJECT, 9, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x0A264#define DER_OID_SZ_id_ecdsa_with_sha3_256 11265extern const unsigned char ossl_der_oid_id_ecdsa_with_sha3_256[DER_OID_SZ_id_ecdsa_with_sha3_256];266267/*268* id-ecdsa-with-sha3-384 OBJECT IDENTIFIER ::= { sigAlgs 11 }269*/270#define DER_OID_V_id_ecdsa_with_sha3_384 DER_P_OBJECT, 9, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x0B271#define DER_OID_SZ_id_ecdsa_with_sha3_384 11272extern const unsigned char ossl_der_oid_id_ecdsa_with_sha3_384[DER_OID_SZ_id_ecdsa_with_sha3_384];273274/*275* id-ecdsa-with-sha3-512 OBJECT IDENTIFIER ::= { sigAlgs 12 }276*/277#define DER_OID_V_id_ecdsa_with_sha3_512 DER_P_OBJECT, 9, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x0C278#define DER_OID_SZ_id_ecdsa_with_sha3_512 11279extern const unsigned char ossl_der_oid_id_ecdsa_with_sha3_512[DER_OID_SZ_id_ecdsa_with_sha3_512];280281/* clang-format on */282283/* Subject Public Key Info */284int ossl_DER_w_algorithmIdentifier_EC(WPACKET *pkt, int cont, EC_KEY *ec);285/* Signature */286int ossl_DER_w_algorithmIdentifier_ECDSA_with_MD(WPACKET *pkt, int cont,287EC_KEY *ec, int mdnid);288289290