oid.h
mbedtls/private_access.h
mbedtls/build_info.h
mbedtls/asn1.h
mbedtls/pk.h
stddef.h
mbedtls/cipher.h
mbedtls/md.h
mbedtls/asn1.h
mbedtls/bignum.h
mbedtls/build_info.h
mbedtls/ccm.h
mbedtls/chacha20.h
mbedtls/chachapoly.h
mbedtls/check_config.h
mbedtls/cipher.h
mbedtls/cmac.h
mbedtls/config_adjust_legacy_crypto.h
mbedtls/config_adjust_psa_from_legacy.h
mbedtls/config_adjust_psa_superset_legacy.h
mbedtls/config_adjust_ssl.h
mbedtls/config_adjust_x509.h
mbedtls/config_psa.h
mbedtls/ecdsa.h
mbedtls/ecjpake.h
mbedtls/ecp.h
mbedtls/gcm.h
mbedtls/mbedtls_config.h
mbedtls/md.h
mbedtls/md5.h
oid.h
mbedtls/pk.h
mbedtls/platform_time.h
mbedtls/platform_util.h
mbedtls/poly1305.h
mbedtls/private_access.h
mbedtls/ripemd160.h
mbedtls/rsa.h
mbedtls/sha1.h
mbedtls/sha256.h
mbedtls/sha3.h
mbedtls/sha512.h
mbedtls/threading.h
psa/build_info.h
psa/crypto.h
psa/crypto_adjust_auto_enabled.h
psa/crypto_adjust_config_dependencies.h
psa/crypto_adjust_config_key_pair_types.h
psa/crypto_adjust_config_synonyms.h
psa/crypto_builtin_composites.h
psa/crypto_builtin_key_derivation.h
psa/crypto_builtin_primitives.h
crypto_compat.h
psa/crypto_driver_common.h
psa/crypto_driver_contexts_composites.h
psa/crypto_driver_contexts_key_derivation.h
psa/crypto_driver_contexts_primitives.h
crypto_extra.h
psa/crypto_legacy.h
crypto_platform.h
crypto_sizes.h
crypto_struct.h
crypto_types.h
crypto_values.h
inttypes.h
limits.h
pthread.h
stddef.h
stdint.h
stdio.h
stdlib.h
time.h
mbedtls_oid_descriptor_t
MBEDTLS_ERR_OID_NOT_FOUND
-0x002E

OID is not found.

MBEDTLS_ERR_OID_BUF_TOO_SMALL
-0x000B

output buffer is too small

MBEDTLS_OID_X509_EXT_AUTHORITY_KEY_IDENTIFIER
(1 << 0)
MBEDTLS_OID_X509_EXT_SUBJECT_KEY_IDENTIFIER
(1 << 1)
MBEDTLS_OID_X509_EXT_KEY_USAGE
(1 << 2)
MBEDTLS_OID_X509_EXT_CERTIFICATE_POLICIES
(1 << 3)
MBEDTLS_OID_X509_EXT_POLICY_MAPPINGS
(1 << 4)
MBEDTLS_OID_X509_EXT_SUBJECT_ALT_NAME
(1 << 5)
MBEDTLS_OID_X509_EXT_ISSUER_ALT_NAME
(1 << 6)
MBEDTLS_OID_X509_EXT_SUBJECT_DIRECTORY_ATTRS
(1 << 7)
MBEDTLS_OID_X509_EXT_BASIC_CONSTRAINTS
(1 << 8)
MBEDTLS_OID_X509_EXT_NAME_CONSTRAINTS
(1 << 9)
MBEDTLS_OID_X509_EXT_POLICY_CONSTRAINTS
(1 << 10)
MBEDTLS_OID_X509_EXT_EXTENDED_KEY_USAGE
(1 << 11)
MBEDTLS_OID_X509_EXT_CRL_DISTRIBUTION_POINTS
(1 << 12)
MBEDTLS_OID_X509_EXT_INIHIBIT_ANYPOLICY
(1 << 13)
MBEDTLS_OID_X509_EXT_FRESHEST_CRL
(1 << 14)
MBEDTLS_OID_X509_EXT_NS_CERT_TYPE
(1 << 16)
MBEDTLS_OID_MAX_COMPONENTS
128
MBEDTLS_OID_ISO_MEMBER_BODIES
"\x2a" /* {iso(1) member-body(2)} */
MBEDTLS_OID_ISO_IDENTIFIED_ORG
"\x2b" /* {iso(1) identified-organization(3)} */
MBEDTLS_OID_ISO_CCITT_DS
"\x55" /* {joint-iso-ccitt(2) ds(5)} */
MBEDTLS_OID_ISO_ITU_COUNTRY
"\x60" /* {joint-iso-itu-t(2) country(16)} */
MBEDTLS_OID_COUNTRY_US
"\x86\x48" /* {us(840)} */
MBEDTLS_OID_ORG_RSA_DATA_SECURITY
"\x86\xf7\x0d" /* {rsadsi(113549)} */
MBEDTLS_OID_RSA_COMPANY
MBEDTLS_OID_ISO_MEMBER_BODIES
MBEDTLS_OID_COUNTRY_US
\ MBEDTLS_OID_ORG_RSA_DATA_SECURITY /* {iso(1) member-body(2) us(840) rsadsi(113549)} */
MBEDTLS_OID_ORG_ANSI_X9_62
"\xce\x3d" /* ansi-X9-62(10045) */
MBEDTLS_OID_ANSI_X9_62
MBEDTLS_OID_ISO_MEMBER_BODIES
MBEDTLS_OID_COUNTRY_US
\ MBEDTLS_OID_ORG_ANSI_X9_62
MBEDTLS_OID_ORG_DOD
"\x06" /* {dod(6)} */
MBEDTLS_OID_ORG_OIW
"\x0e"
MBEDTLS_OID_OIW_SECSIG
MBEDTLS_OID_ORG_OIW
"\x03"
MBEDTLS_OID_OIW_SECSIG_ALG
MBEDTLS_OID_OIW_SECSIG
"\x02"
MBEDTLS_OID_OIW_SECSIG_SHA1
MBEDTLS_OID_OIW_SECSIG_ALG
"\x1a"
MBEDTLS_OID_ORG_THAWTE
"\x65" /* thawte(101) */
MBEDTLS_OID_THAWTE
MBEDTLS_OID_ISO_IDENTIFIED_ORG
\ MBEDTLS_OID_ORG_THAWTE
MBEDTLS_OID_ORG_CERTICOM
"\x81\x04" /* certicom(132) */
MBEDTLS_OID_CERTICOM
MBEDTLS_OID_ISO_IDENTIFIED_ORG
\ MBEDTLS_OID_ORG_CERTICOM
MBEDTLS_OID_ORG_TELETRUST
"\x24" /* teletrust(36) */
MBEDTLS_OID_TELETRUST
MBEDTLS_OID_ISO_IDENTIFIED_ORG
\ MBEDTLS_OID_ORG_TELETRUST
MBEDTLS_OID_ORGANIZATION
"\x01" /* {organization(1)} */
MBEDTLS_OID_ISO_ITU_US_ORG
MBEDTLS_OID_ISO_ITU_COUNTRY
MBEDTLS_OID_COUNTRY_US
\ MBEDTLS_OID_ORGANIZATION /* {joint-iso-itu-t(2) country(16) us(840) organization(1)} */
MBEDTLS_OID_ORG_GOV
"\x65" /* {gov(101)} */
MBEDTLS_OID_GOV
MBEDTLS_OID_ISO_ITU_US_ORG
MBEDTLS_OID_ORG_GOV
/* {joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101)} */
MBEDTLS_OID_ORG_NETSCAPE
"\x86\xF8\x42" /* {netscape(113730)} */
MBEDTLS_OID_NETSCAPE
MBEDTLS_OID_ISO_ITU_US_ORG
MBEDTLS_OID_ORG_NETSCAPE
/* Netscape OID {joint-iso-itu-t(2) country(16) us(840) organization(1) netscape(113730)} */
MBEDTLS_OID_ID_CE
MBEDTLS_OID_ISO_CCITT_DS
"\x1D"

id-ce OBJECT IDENTIFIER ::= {joint-iso-ccitt(2) ds(5) 29}

MBEDTLS_OID_NIST_ALG
MBEDTLS_OID_GOV
"\x03\x04" /** { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithm(4) */
MBEDTLS_OID_INTERNET
MBEDTLS_OID_ISO_IDENTIFIED_ORG
MBEDTLS_OID_ORG_DOD
\ "\x01"

Private Internet Extensions { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) }

MBEDTLS_OID_PKIX
MBEDTLS_OID_INTERNET
"\x05\x05\x07"
MBEDTLS_OID_AT
MBEDTLS_OID_ISO_CCITT_DS
"\x04"

id-at OBJECT IDENTIFIER ::= {joint-iso-ccitt(2) ds(5) 4}

MBEDTLS_OID_AT_CN
MBEDTLS_OID_AT
"\x03"

id-at-commonName AttributeType:= {id-at 3}

MBEDTLS_OID_AT_SUR_NAME
MBEDTLS_OID_AT
"\x04"

id-at-surName AttributeType:= {id-at 4}

MBEDTLS_OID_AT_SERIAL_NUMBER
MBEDTLS_OID_AT
"\x05"

id-at-serialNumber AttributeType:= {id-at 5}

MBEDTLS_OID_AT_COUNTRY
MBEDTLS_OID_AT
"\x06"

id-at-countryName AttributeType:= {id-at 6}

MBEDTLS_OID_AT_LOCALITY
MBEDTLS_OID_AT
"\x07"

id-at-locality AttributeType:= {id-at 7}

MBEDTLS_OID_AT_STATE
MBEDTLS_OID_AT
"\x08"

id-at-state AttributeType:= {id-at 8}

MBEDTLS_OID_AT_ORGANIZATION
MBEDTLS_OID_AT
"\x0A"

id-at-organizationName AttributeType:= {id-at 10}

MBEDTLS_OID_AT_ORG_UNIT
MBEDTLS_OID_AT
"\x0B"

id-at-organizationalUnitName AttributeType:= {id-at 11}

MBEDTLS_OID_AT_TITLE
MBEDTLS_OID_AT
"\x0C"

id-at-title AttributeType:= {id-at 12}

MBEDTLS_OID_AT_POSTAL_ADDRESS
MBEDTLS_OID_AT
"\x10"

id-at-postalAddress AttributeType:= {id-at 16}

MBEDTLS_OID_AT_POSTAL_CODE
MBEDTLS_OID_AT
"\x11"

id-at-postalCode AttributeType:= {id-at 17}

MBEDTLS_OID_AT_GIVEN_NAME
MBEDTLS_OID_AT
"\x2A"

id-at-givenName AttributeType:= {id-at 42}

MBEDTLS_OID_AT_INITIALS
MBEDTLS_OID_AT
"\x2B"

id-at-initials AttributeType:= {id-at 43}

MBEDTLS_OID_AT_GENERATION_QUALIFIER
MBEDTLS_OID_AT
"\x2C"

id-at-generationQualifier AttributeType:= {id-at 44}

MBEDTLS_OID_AT_UNIQUE_IDENTIFIER
MBEDTLS_OID_AT
"\x2D"

id-at-uniqueIdentifier AttributeType:= {id-at 45}

MBEDTLS_OID_AT_DN_QUALIFIER
MBEDTLS_OID_AT
"\x2E"

id-at-dnQualifier AttributeType:= {id-at 46}

MBEDTLS_OID_AT_PSEUDONYM
MBEDTLS_OID_AT
"\x41"

id-at-pseudonym AttributeType:= {id-at 65}

MBEDTLS_OID_UID
"\x09\x92\x26\x89\x93\xF2\x2C\x64\x01\x01" /** id-domainComponent AttributeType:= {itu-t(0) data(9) pss(2342) ucl(19200300) pilot(100) pilotAttributeType(1) uid(1)} */
MBEDTLS_OID_DOMAIN_COMPONENT
"\x09\x92\x26\x89\x93\xF2\x2C\x64\x01\x19" /** id-domainComponent AttributeType:= {itu-t(0) data(9) pss(2342) ucl(19200300) pilot(100) pilotAttributeType(1) domainComponent(25)} */
MBEDTLS_OID_AUTHORITY_KEY_IDENTIFIER
MBEDTLS_OID_ID_CE
"\x23"

id-ce-authorityKeyIdentifier OBJECT IDENTIFIER ::= { id-ce 35 }

MBEDTLS_OID_SUBJECT_KEY_IDENTIFIER
MBEDTLS_OID_ID_CE
"\x0E"

id-ce-subjectKeyIdentifier OBJECT IDENTIFIER ::= { id-ce 14 }

MBEDTLS_OID_KEY_USAGE
MBEDTLS_OID_ID_CE
"\x0F"

id-ce-keyUsage OBJECT IDENTIFIER ::= { id-ce 15 }

MBEDTLS_OID_CERTIFICATE_POLICIES
MBEDTLS_OID_ID_CE
"\x20"

id-ce-certificatePolicies OBJECT IDENTIFIER ::= { id-ce 32 }

MBEDTLS_OID_POLICY_MAPPINGS
MBEDTLS_OID_ID_CE
"\x21"

id-ce-policyMappings OBJECT IDENTIFIER ::= { id-ce 33 }

MBEDTLS_OID_SUBJECT_ALT_NAME
MBEDTLS_OID_ID_CE
"\x11"

id-ce-subjectAltName OBJECT IDENTIFIER ::= { id-ce 17 }

MBEDTLS_OID_ISSUER_ALT_NAME
MBEDTLS_OID_ID_CE
"\x12"

id-ce-issuerAltName OBJECT IDENTIFIER ::= { id-ce 18 }

MBEDTLS_OID_SUBJECT_DIRECTORY_ATTRS
MBEDTLS_OID_ID_CE
"\x09"

id-ce-subjectDirectoryAttributes OBJECT IDENTIFIER ::= { id-ce 9 }

MBEDTLS_OID_BASIC_CONSTRAINTS
MBEDTLS_OID_ID_CE
"\x13"

id-ce-basicConstraints OBJECT IDENTIFIER ::= { id-ce 19 }

MBEDTLS_OID_NAME_CONSTRAINTS
MBEDTLS_OID_ID_CE
"\x1E"

id-ce-nameConstraints OBJECT IDENTIFIER ::= { id-ce 30 }

MBEDTLS_OID_POLICY_CONSTRAINTS
MBEDTLS_OID_ID_CE
"\x24"

id-ce-policyConstraints OBJECT IDENTIFIER ::= { id-ce 36 }

MBEDTLS_OID_EXTENDED_KEY_USAGE
MBEDTLS_OID_ID_CE
"\x25"

id-ce-extKeyUsage OBJECT IDENTIFIER ::= { id-ce 37 }

MBEDTLS_OID_CRL_DISTRIBUTION_POINTS
MBEDTLS_OID_ID_CE
"\x1F"

id-ce-cRLDistributionPoints OBJECT IDENTIFIER ::= { id-ce 31 }

MBEDTLS_OID_INIHIBIT_ANYPOLICY
MBEDTLS_OID_ID_CE
"\x36"

id-ce-inhibitAnyPolicy OBJECT IDENTIFIER ::= { id-ce 54 }

MBEDTLS_OID_FRESHEST_CRL
MBEDTLS_OID_ID_CE
"\x2E"

id-ce-freshestCRL OBJECT IDENTIFIER ::= { id-ce 46 }

MBEDTLS_OID_ANY_POLICY
MBEDTLS_OID_CERTIFICATE_POLICIES
"\x00"

anyPolicy OBJECT IDENTIFIER ::= { id-ce-certificatePolicies 0 }

MBEDTLS_OID_NS_CERT
MBEDTLS_OID_NETSCAPE
"\x01"
MBEDTLS_OID_NS_CERT_TYPE
MBEDTLS_OID_NS_CERT
"\x01"
MBEDTLS_OID_NS_BASE_URL
MBEDTLS_OID_NS_CERT
"\x02"
MBEDTLS_OID_NS_REVOCATION_URL
MBEDTLS_OID_NS_CERT
"\x03"
MBEDTLS_OID_NS_CA_REVOCATION_URL
MBEDTLS_OID_NS_CERT
"\x04"
MBEDTLS_OID_NS_RENEWAL_URL
MBEDTLS_OID_NS_CERT
"\x07"
MBEDTLS_OID_NS_CA_POLICY_URL
MBEDTLS_OID_NS_CERT
"\x08"
MBEDTLS_OID_NS_SSL_SERVER_NAME
MBEDTLS_OID_NS_CERT
"\x0C"
MBEDTLS_OID_NS_COMMENT
MBEDTLS_OID_NS_CERT
"\x0D"
MBEDTLS_OID_NS_DATA_TYPE
MBEDTLS_OID_NETSCAPE
"\x02"
MBEDTLS_OID_NS_CERT_SEQUENCE
MBEDTLS_OID_NS_DATA_TYPE
"\x05"
MBEDTLS_OID_PRIVATE_KEY_USAGE_PERIOD
MBEDTLS_OID_ID_CE
"\x10"
MBEDTLS_OID_CRL_NUMBER
MBEDTLS_OID_ID_CE
"\x14"

id-ce-cRLNumber OBJECT IDENTIFIER ::= { id-ce 20 }

MBEDTLS_OID_ANY_EXTENDED_KEY_USAGE
MBEDTLS_OID_EXTENDED_KEY_USAGE
"\x00"

anyExtendedKeyUsage OBJECT IDENTIFIER ::= { id-ce-extKeyUsage 0 }

MBEDTLS_OID_KP
MBEDTLS_OID_PKIX
"\x03"

id-kp OBJECT IDENTIFIER ::= { id-pkix 3 }

MBEDTLS_OID_SERVER_AUTH
MBEDTLS_OID_KP
"\x01"

id-kp-serverAuth OBJECT IDENTIFIER ::= { id-kp 1 }

MBEDTLS_OID_CLIENT_AUTH
MBEDTLS_OID_KP
"\x02"

id-kp-clientAuth OBJECT IDENTIFIER ::= { id-kp 2 }

MBEDTLS_OID_CODE_SIGNING
MBEDTLS_OID_KP
"\x03"

id-kp-codeSigning OBJECT IDENTIFIER ::= { id-kp 3 }

MBEDTLS_OID_EMAIL_PROTECTION
MBEDTLS_OID_KP
"\x04"

id-kp-emailProtection OBJECT IDENTIFIER ::= { id-kp 4 }

MBEDTLS_OID_TIME_STAMPING
MBEDTLS_OID_KP
"\x08"

id-kp-timeStamping OBJECT IDENTIFIER ::= { id-kp 8 }

MBEDTLS_OID_OCSP_SIGNING
MBEDTLS_OID_KP
"\x09"

id-kp-OCSPSigning OBJECT IDENTIFIER ::= { id-kp 9 }

MBEDTLS_OID_WISUN_FAN
MBEDTLS_OID_INTERNET
"\x04\x01\x82\xe4\x25\x01"

Wi-SUN Alliance Field Area Network { iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) WiSUN(45605) FieldAreaNetwork(1) }

MBEDTLS_OID_ON
MBEDTLS_OID_PKIX
"\x08"

id-on OBJECT IDENTIFIER ::= { id-pkix 8 }

MBEDTLS_OID_ON_HW_MODULE_NAME
MBEDTLS_OID_ON
"\x04"

id-on-hardwareModuleName OBJECT IDENTIFIER ::= { id-on 4 }

MBEDTLS_OID_PKCS
MBEDTLS_OID_RSA_COMPANY
"\x01"

pkcs OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) 1 }

MBEDTLS_OID_PKCS1
MBEDTLS_OID_PKCS
"\x01"

pkcs-1 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1 }

MBEDTLS_OID_PKCS5
MBEDTLS_OID_PKCS
"\x05"

pkcs-5 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 5 }

MBEDTLS_OID_PKCS7
MBEDTLS_OID_PKCS
"\x07"

pkcs-7 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 7 }

MBEDTLS_OID_PKCS9
MBEDTLS_OID_PKCS
"\x09"

pkcs-9 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 9 }

MBEDTLS_OID_PKCS12
MBEDTLS_OID_PKCS
"\x0c"

pkcs-12 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 12 }

MBEDTLS_OID_PKCS1_RSA
MBEDTLS_OID_PKCS1
"\x01"

rsaEncryption OBJECT IDENTIFIER ::= { pkcs-1 1 }

MBEDTLS_OID_PKCS1_MD5
MBEDTLS_OID_PKCS1
"\x04"

md5WithRSAEncryption ::= { pkcs-1 4 }

MBEDTLS_OID_PKCS1_SHA1
MBEDTLS_OID_PKCS1
"\x05"

sha1WithRSAEncryption ::= { pkcs-1 5 }

MBEDTLS_OID_PKCS1_SHA224
MBEDTLS_OID_PKCS1
"\x0e"

sha224WithRSAEncryption ::= { pkcs-1 14 }

MBEDTLS_OID_PKCS1_SHA256
MBEDTLS_OID_PKCS1
"\x0b"

sha256WithRSAEncryption ::= { pkcs-1 11 }

MBEDTLS_OID_PKCS1_SHA384
MBEDTLS_OID_PKCS1
"\x0c"

sha384WithRSAEncryption ::= { pkcs-1 12 }

MBEDTLS_OID_PKCS1_SHA512
MBEDTLS_OID_PKCS1
"\x0d"

sha512WithRSAEncryption ::= { pkcs-1 13 }

MBEDTLS_OID_RSA_SHA_OBS
"\x2B\x0E\x03\x02\x1D"
MBEDTLS_OID_PKCS9_EMAIL
MBEDTLS_OID_PKCS9
"\x01"

emailAddress AttributeType ::= { pkcs-9 1 }

MBEDTLS_OID_RSASSA_PSS
MBEDTLS_OID_PKCS1
"\x0a"

id-RSASSA-PSS ::= { pkcs-1 10 }

MBEDTLS_OID_MGF1
MBEDTLS_OID_PKCS1
"\x08"

id-mgf1 ::= { pkcs-1 8 }

MBEDTLS_OID_DIGEST_ALG_MD5
MBEDTLS_OID_RSA_COMPANY
"\x02\x05"

id-mbedtls_md5 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 5 }

MBEDTLS_OID_DIGEST_ALG_SHA1
MBEDTLS_OID_ISO_IDENTIFIED_ORG
\ MBEDTLS_OID_OIW_SECSIG_SHA1

id-mbedtls_sha1 OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) oiw(14) secsig(3) algorithms(2) 26 }

MBEDTLS_OID_DIGEST_ALG_SHA224
MBEDTLS_OID_NIST_ALG
"\x02\x04"

id-sha224 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistalgorithm(4) hashalgs(2) 4 }

MBEDTLS_OID_DIGEST_ALG_SHA256
MBEDTLS_OID_NIST_ALG
"\x02\x01"

id-mbedtls_sha256 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistalgorithm(4) hashalgs(2) 1 }

MBEDTLS_OID_DIGEST_ALG_SHA384
MBEDTLS_OID_NIST_ALG
"\x02\x02"

id-sha384 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistalgorithm(4) hashalgs(2) 2 }

MBEDTLS_OID_DIGEST_ALG_SHA512
MBEDTLS_OID_NIST_ALG
"\x02\x03"

id-mbedtls_sha512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistalgorithm(4) hashalgs(2) 3 }

MBEDTLS_OID_DIGEST_ALG_RIPEMD160
MBEDTLS_OID_TELETRUST
"\x03\x02\x01"

id-ripemd160 OBJECT IDENTIFIER :: { iso(1) identified-organization(3) teletrust(36) algorithm(3) hashAlgorithm(2) ripemd160(1) }

MBEDTLS_OID_DIGEST_ALG_SHA3_224
MBEDTLS_OID_NIST_ALG
"\x02\x07"

id-sha3-224 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) sha3-224(7) }

MBEDTLS_OID_DIGEST_ALG_SHA3_256
MBEDTLS_OID_NIST_ALG
"\x02\x08"

id-sha3-256 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) sha3-256(8) }

MBEDTLS_OID_DIGEST_ALG_SHA3_384
MBEDTLS_OID_NIST_ALG
"\x02\x09"

id-sha3-384 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) sha3-384(9) }

MBEDTLS_OID_DIGEST_ALG_SHA3_512
MBEDTLS_OID_NIST_ALG
"\x02\x0a"

id-sha3-512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) sha3-512(10) }

MBEDTLS_OID_HMAC_SHA1
MBEDTLS_OID_RSA_COMPANY
"\x02\x07"

id-hmacWithSHA1 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 7 }

MBEDTLS_OID_HMAC_SHA224
MBEDTLS_OID_RSA_COMPANY
"\x02\x08"

id-hmacWithSHA224 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 8 }

MBEDTLS_OID_HMAC_SHA256
MBEDTLS_OID_RSA_COMPANY
"\x02\x09"

id-hmacWithSHA256 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 9 }

MBEDTLS_OID_HMAC_SHA384
MBEDTLS_OID_RSA_COMPANY
"\x02\x0A"

id-hmacWithSHA384 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 10 }

MBEDTLS_OID_HMAC_SHA512
MBEDTLS_OID_RSA_COMPANY
"\x02\x0B"

id-hmacWithSHA512 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) digestAlgorithm(2) 11 }

MBEDTLS_OID_HMAC_SHA3_224
MBEDTLS_OID_NIST_ALG
"\x02\x0d"

id-hmacWithSHA3-512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) hmacWithSHA3-224(13) }

MBEDTLS_OID_HMAC_SHA3_256
MBEDTLS_OID_NIST_ALG
"\x02\x0e"

id-hmacWithSHA3-512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) hmacWithSHA3-256(14) }

MBEDTLS_OID_HMAC_SHA3_384
MBEDTLS_OID_NIST_ALG
"\x02\x0f"

id-hmacWithSHA3-512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) hmacWithSHA3-384(15) }

MBEDTLS_OID_HMAC_SHA3_512
MBEDTLS_OID_NIST_ALG
"\x02\x10"

id-hmacWithSHA3-512 OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashalgs(2) hmacWithSHA3-512(16) }

MBEDTLS_OID_HMAC_RIPEMD160
MBEDTLS_OID_INTERNET
"\x05\x05\x08\x01\x04"

id-hmacWithSHA1 OBJECT IDENTIFIER ::= {iso(1) iso-identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) ipsec(8) isakmpOakley(1) hmacRIPEMD160(4)}

MBEDTLS_OID_DES_CBC
MBEDTLS_OID_ISO_IDENTIFIED_ORG
\ MBEDTLS_OID_OIW_SECSIG_ALG "\x07"

desCBC OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) oiw(14) secsig(3) algorithms(2) 7 }

MBEDTLS_OID_DES_EDE3_CBC
MBEDTLS_OID_RSA_COMPANY
"\x03\x07"

des-ede3-cbc OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) encryptionAlgorithm(3) 7 }

MBEDTLS_OID_AES
MBEDTLS_OID_NIST_ALG
"\x01" /** aes OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithm(4) 1 } */
MBEDTLS_OID_AES_128_CBC
MBEDTLS_OID_AES
"\x02" /** aes128-cbc-pad OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) aes(1) aes128-CBC-PAD(2) } */
MBEDTLS_OID_AES_192_CBC
MBEDTLS_OID_AES
"\x16" /** aes192-cbc-pad OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) aes(1) aes192-CBC-PAD(22) } */
MBEDTLS_OID_AES_256_CBC
MBEDTLS_OID_AES
"\x2a" /** aes256-cbc-pad OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) aes(1) aes256-CBC-PAD(42) } */
MBEDTLS_OID_AES128_KW
MBEDTLS_OID_AES
"\x05" /** id-aes128-wrap OBJECT IDENTIFIER ::= { aes 5 } */
MBEDTLS_OID_AES128_KWP
MBEDTLS_OID_AES
"\x08" /** id-aes128-wrap-pad OBJECT IDENTIFIER ::= { aes 8 } */
MBEDTLS_OID_AES192_KW
MBEDTLS_OID_AES
"\x19" /** id-aes192-wrap OBJECT IDENTIFIER ::= { aes 25 } */
MBEDTLS_OID_AES192_KWP
MBEDTLS_OID_AES
"\x1c" /** id-aes192-wrap-pad OBJECT IDENTIFIER ::= { aes 28 } */
MBEDTLS_OID_AES256_KW
MBEDTLS_OID_AES
"\x2d" /** id-aes256-wrap OBJECT IDENTIFIER ::= { aes 45 } */
MBEDTLS_OID_AES256_KWP
MBEDTLS_OID_AES
"\x30" /** id-aes256-wrap-pad OBJECT IDENTIFIER ::= { aes 48 } */
MBEDTLS_OID_PKCS5_PBKDF2
MBEDTLS_OID_PKCS5
"\x0c"

id-PBKDF2 OBJECT IDENTIFIER ::= {pkcs-5 12}

MBEDTLS_OID_PKCS5_PBES2
MBEDTLS_OID_PKCS5
"\x0d"

id-PBES2 OBJECT IDENTIFIER ::= {pkcs-5 13}

MBEDTLS_OID_PKCS5_PBMAC1
MBEDTLS_OID_PKCS5
"\x0e"

id-PBMAC1 OBJECT IDENTIFIER ::= {pkcs-5 14}

MBEDTLS_OID_PKCS5_PBE_MD5_DES_CBC
MBEDTLS_OID_PKCS5
"\x03"

pbeWithMD5AndDES-CBC OBJECT IDENTIFIER ::= {pkcs-5 3}

MBEDTLS_OID_PKCS5_PBE_MD5_RC2_CBC
MBEDTLS_OID_PKCS5
"\x06"

pbeWithMD5AndRC2-CBC OBJECT IDENTIFIER ::= {pkcs-5 6}

MBEDTLS_OID_PKCS5_PBE_SHA1_DES_CBC
MBEDTLS_OID_PKCS5
"\x0a"

pbeWithSHA1AndDES-CBC OBJECT IDENTIFIER ::= {pkcs-5 10}

MBEDTLS_OID_PKCS5_PBE_SHA1_RC2_CBC
MBEDTLS_OID_PKCS5
"\x0b"

pbeWithSHA1AndRC2-CBC OBJECT IDENTIFIER ::= {pkcs-5 11}

MBEDTLS_OID_PKCS7_DATA
MBEDTLS_OID_PKCS7
"\x01"

Content type is Data OBJECT IDENTIFIER ::= {pkcs-7 1}

MBEDTLS_OID_PKCS7_SIGNED_DATA
MBEDTLS_OID_PKCS7
"\x02"

Content type is Signed Data OBJECT IDENTIFIER ::= {pkcs-7 2}

MBEDTLS_OID_PKCS7_ENVELOPED_DATA
MBEDTLS_OID_PKCS7
"\x03"

Content type is Enveloped Data OBJECT IDENTIFIER ::= {pkcs-7 3}

MBEDTLS_OID_PKCS7_SIGNED_AND_ENVELOPED_DATA
MBEDTLS_OID_PKCS7
"\x04"

Content type is Signed and Enveloped Data OBJECT IDENTIFIER ::= {pkcs-7 4}

MBEDTLS_OID_PKCS7_DIGESTED_DATA
MBEDTLS_OID_PKCS7
"\x05"

Content type is Digested Data OBJECT IDENTIFIER ::= {pkcs-7 5}

MBEDTLS_OID_PKCS7_ENCRYPTED_DATA
MBEDTLS_OID_PKCS7
"\x06"

Content type is Encrypted Data OBJECT IDENTIFIER ::= {pkcs-7 6}

MBEDTLS_OID_PKCS9_CSR_EXT_REQ
MBEDTLS_OID_PKCS9
"\x0e"

extensionRequest OBJECT IDENTIFIER ::= {pkcs-9 14}

MBEDTLS_OID_PKCS12_PBE
MBEDTLS_OID_PKCS12
"\x01"

pkcs-12PbeIds OBJECT IDENTIFIER ::= {pkcs-12 1}

MBEDTLS_OID_PKCS12_PBE_SHA1_DES3_EDE_CBC
MBEDTLS_OID_PKCS12_PBE
"\x03"

pbeWithSHAAnd3-KeyTripleDES-CBC OBJECT IDENTIFIER ::= {pkcs-12PbeIds 3}

MBEDTLS_OID_PKCS12_PBE_SHA1_DES2_EDE_CBC
MBEDTLS_OID_PKCS12_PBE
"\x04"

pbeWithSHAAnd2-KeyTripleDES-CBC OBJECT IDENTIFIER ::= {pkcs-12PbeIds 4}

MBEDTLS_OID_PKCS12_PBE_SHA1_RC2_128_CBC
MBEDTLS_OID_PKCS12_PBE
"\x05"

pbeWithSHAAnd128BitRC2-CBC OBJECT IDENTIFIER ::= {pkcs-12PbeIds 5}

MBEDTLS_OID_PKCS12_PBE_SHA1_RC2_40_CBC
MBEDTLS_OID_PKCS12_PBE
"\x06"

pbeWithSHAAnd40BitRC2-CBC OBJECT IDENTIFIER ::= {pkcs-12PbeIds 6}

MBEDTLS_OID_EC_ALG_UNRESTRICTED
MBEDTLS_OID_ANSI_X9_62
"\x02\01"
MBEDTLS_OID_EC_ALG_ECDH
MBEDTLS_OID_CERTICOM
"\x01\x0c"
MBEDTLS_OID_EC_GRP_SECP192R1
MBEDTLS_OID_ANSI_X9_62
"\x03\x01\x01"
MBEDTLS_OID_EC_GRP_SECP224R1
MBEDTLS_OID_CERTICOM
"\x00\x21"
MBEDTLS_OID_EC_GRP_SECP256R1
MBEDTLS_OID_ANSI_X9_62
"\x03\x01\x07"
MBEDTLS_OID_EC_GRP_SECP384R1
MBEDTLS_OID_CERTICOM
"\x00\x22"
MBEDTLS_OID_EC_GRP_SECP521R1
MBEDTLS_OID_CERTICOM
"\x00\x23"
MBEDTLS_OID_EC_GRP_SECP192K1
MBEDTLS_OID_CERTICOM
"\x00\x1f"
MBEDTLS_OID_EC_GRP_SECP224K1
MBEDTLS_OID_CERTICOM
"\x00\x20"
MBEDTLS_OID_EC_GRP_SECP256K1
MBEDTLS_OID_CERTICOM
"\x00\x0a"
MBEDTLS_OID_EC_BRAINPOOL_V1
MBEDTLS_OID_TELETRUST
"\x03\x03\x02\x08\x01\x01"
MBEDTLS_OID_EC_GRP_BP256R1
MBEDTLS_OID_EC_BRAINPOOL_V1
"\x07"
MBEDTLS_OID_EC_GRP_BP384R1
MBEDTLS_OID_EC_BRAINPOOL_V1
"\x0B"
MBEDTLS_OID_EC_GRP_BP512R1
MBEDTLS_OID_EC_BRAINPOOL_V1
"\x0D"
MBEDTLS_OID_ANSI_X9_62_FIELD_TYPE
MBEDTLS_OID_ANSI_X9_62
"\x01"
MBEDTLS_OID_ANSI_X9_62_PRIME_FIELD
MBEDTLS_OID_ANSI_X9_62_FIELD_TYPE
"\x01"
MBEDTLS_OID_ANSI_X9_62_SIG
MBEDTLS_OID_ANSI_X9_62
"\x04" /* signatures(4) */
MBEDTLS_OID_ANSI_X9_62_SIG_SHA2
MBEDTLS_OID_ANSI_X9_62_SIG
"\x03" /* ecdsa-with-SHA2(3) */
MBEDTLS_OID_ECDSA_SHA1
MBEDTLS_OID_ANSI_X9_62_SIG
"\x01"
MBEDTLS_OID_ECDSA_SHA224
MBEDTLS_OID_ANSI_X9_62_SIG_SHA2
"\x01"
MBEDTLS_OID_ECDSA_SHA256
MBEDTLS_OID_ANSI_X9_62_SIG_SHA2
"\x02"
MBEDTLS_OID_ECDSA_SHA384
MBEDTLS_OID_ANSI_X9_62_SIG_SHA2
"\x03"
MBEDTLS_OID_ECDSA_SHA512
MBEDTLS_OID_ANSI_X9_62_SIG_SHA2
"\x04"
MBEDTLS_OID_X25519
MBEDTLS_OID_THAWTE
"\x6e"

id-X25519 OBJECT IDENTIFIER ::= { 1 3 101 110 }

MBEDTLS_OID_X448
MBEDTLS_OID_THAWTE
"\x6f"

id-X448 OBJECT IDENTIFIER ::= { 1 3 101 111 }

MBEDTLS_OID_ED25519
MBEDTLS_OID_THAWTE
"\x70"

id-Ed25519 OBJECT IDENTIFIER ::= { 1 3 101 112 }

MBEDTLS_OID_ED448
MBEDTLS_OID_THAWTE
"\x71"

id-Ed448 OBJECT IDENTIFIER ::= { 1 3 101 113 }

struct mbedtls_oid_descriptor_t typedef struct mbedtls_oid_descriptor_t mbedtls_oid_descriptor_t mbedtls_oid_descriptor_t

Base OID descriptor structure.

int int mbedtls_oid_get_numeric_string (char *buf, size_t size, const mbedtls_asn1_buf *oid) mbedtls_oid_get_numeric_string char * buf size_t size const mbedtls_asn1_buf * oid

Translate an ASN.1 OID into its numeric representation (e.g. "\x2A\x86\x48\x86\xF7\x0D" into "1.2.840.113549").

buf

buffer to put representation in

size

size of the buffer

oid

OID to translate

Length of the string written (excluding final NULL) or MBEDTLS_ERR_OID_BUF_TOO_SMALL in case of error

int int mbedtls_oid_from_numeric_string (mbedtls_asn1_buf *oid, const char *oid_str, size_t size) mbedtls_oid_from_numeric_string mbedtls_asn1_buf * oid const char * oid_str size_t size

Translate a string containing a dotted-decimal representation of an ASN.1 OID into its encoded form (e.g. "1.2.840.113549" into "\x2A\x86\x48\x86\xF7\x0D"). On success, this function allocates oid->buf from the heap. It must be freed by the caller using mbedtls_free().

oid

mbedtls_asn1_buf to populate with the DER-encoded OID

oid_str

string representation of the OID to parse

size

length of the OID string, not including any null terminator

0 if successful

MBEDTLS_ERR_ASN1_INVALID_DATA if `oid_str` does not represent a valid OID

MBEDTLS_ERR_ASN1_ALLOC_FAILED if the function fails to allocate oid->buf

int int mbedtls_oid_get_x509_ext_type (const mbedtls_asn1_buf *oid, int *ext_type) mbedtls_oid_get_x509_ext_type const mbedtls_asn1_buf * oid int * ext_type

Translate an X.509 extension OID into local values.

oid

OID to use

ext_type

place to store the extension type

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_attr_short_name (const mbedtls_asn1_buf *oid, const char **short_name) mbedtls_oid_get_attr_short_name const mbedtls_asn1_buf * oid const char ** short_name

Translate an X.509 attribute type OID into the short name (e.g. the OID for an X520 Common Name into "CN").

oid

OID to use

short_name

place to store the string pointer

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_pk_alg (const mbedtls_asn1_buf *oid, mbedtls_pk_type_t *pk_alg) mbedtls_oid_get_pk_alg const mbedtls_asn1_buf * oid mbedtls_pk_type_t * pk_alg

Translate PublicKeyAlgorithm OID into pk_type.

oid

OID to use

pk_alg

place to store public key algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_oid_by_pk_alg (mbedtls_pk_type_t pk_alg, const char **oid, size_t *olen) mbedtls_oid_get_oid_by_pk_alg mbedtls_pk_type_t pk_alg const char ** oid size_t * olen

Translate pk_type into PublicKeyAlgorithm OID.

pk_alg

Public key type to look for

oid

place to store ASN.1 OID string pointer

olen

length of the OID

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_ec_grp (const mbedtls_asn1_buf *oid, mbedtls_ecp_group_id *grp_id) mbedtls_oid_get_ec_grp const mbedtls_asn1_buf * oid mbedtls_ecp_group_id * grp_id

Translate NamedCurve OID into an EC group identifier.

oid

OID to use

grp_id

place to store group id

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_oid_by_ec_grp (mbedtls_ecp_group_id grp_id, const char **oid, size_t *olen) mbedtls_oid_get_oid_by_ec_grp mbedtls_ecp_group_id grp_id const char ** oid size_t * olen

Translate EC group identifier into NamedCurve OID.

grp_id

EC group identifier

oid

place to store ASN.1 OID string pointer

olen

length of the OID

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_ec_grp_algid (const mbedtls_asn1_buf *oid, mbedtls_ecp_group_id *grp_id) mbedtls_oid_get_ec_grp_algid const mbedtls_asn1_buf * oid mbedtls_ecp_group_id * grp_id

Translate AlgorithmIdentifier OID into an EC group identifier, for curves that are directly encoded at this level.

oid

OID to use

grp_id

place to store group id

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_oid_by_ec_grp_algid (mbedtls_ecp_group_id grp_id, const char **oid, size_t *olen) mbedtls_oid_get_oid_by_ec_grp_algid mbedtls_ecp_group_id grp_id const char ** oid size_t * olen

Translate EC group identifier into AlgorithmIdentifier OID, for curves that are directly encoded at this level.

grp_id

EC group identifier

oid

place to store ASN.1 OID string pointer

olen

length of the OID

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_sig_alg (const mbedtls_asn1_buf *oid, mbedtls_md_type_t *md_alg, mbedtls_pk_type_t *pk_alg) mbedtls_oid_get_sig_alg const mbedtls_asn1_buf * oid mbedtls_md_type_t * md_alg mbedtls_pk_type_t * pk_alg

Translate SignatureAlgorithm OID into md_type and pk_type.

oid

OID to use

md_alg

place to store message digest algorithm

pk_alg

place to store public key algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_sig_alg_desc (const mbedtls_asn1_buf *oid, const char **desc) mbedtls_oid_get_sig_alg_desc const mbedtls_asn1_buf * oid const char ** desc

Translate SignatureAlgorithm OID into description.

oid

OID to use

desc

place to store string pointer

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_oid_by_sig_alg (mbedtls_pk_type_t pk_alg, mbedtls_md_type_t md_alg, const char **oid, size_t *olen) mbedtls_oid_get_oid_by_sig_alg mbedtls_pk_type_t pk_alg mbedtls_md_type_t md_alg const char ** oid size_t * olen

Translate md_type and pk_type into SignatureAlgorithm OID.

md_alg

message digest algorithm

pk_alg

public key algorithm

oid

place to store ASN.1 OID string pointer

olen

length of the OID

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_md_hmac (const mbedtls_asn1_buf *oid, mbedtls_md_type_t *md_hmac) mbedtls_oid_get_md_hmac const mbedtls_asn1_buf * oid mbedtls_md_type_t * md_hmac

Translate hmac algorithm OID into md_type.

oid

OID to use

md_hmac

place to store message hmac algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_md_alg (const mbedtls_asn1_buf *oid, mbedtls_md_type_t *md_alg) mbedtls_oid_get_md_alg const mbedtls_asn1_buf * oid mbedtls_md_type_t * md_alg

Translate hash algorithm OID into md_type.

oid

OID to use

md_alg

place to store message digest algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_extended_key_usage (const mbedtls_asn1_buf *oid, const char **desc) mbedtls_oid_get_extended_key_usage const mbedtls_asn1_buf * oid const char ** desc

Translate Extended Key Usage OID into description.

oid

OID to use

desc

place to store string pointer

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_certificate_policies (const mbedtls_asn1_buf *oid, const char **desc) mbedtls_oid_get_certificate_policies const mbedtls_asn1_buf * oid const char ** desc

Translate certificate policies OID into description.

oid

OID to use

desc

place to store string pointer

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_oid_by_md (mbedtls_md_type_t md_alg, const char **oid, size_t *olen) mbedtls_oid_get_oid_by_md mbedtls_md_type_t md_alg const char ** oid size_t * olen

Translate md_type into hash algorithm OID.

md_alg

message digest algorithm

oid

place to store ASN.1 OID string pointer

olen

length of the OID

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_cipher_alg (const mbedtls_asn1_buf *oid, mbedtls_cipher_type_t *cipher_alg) mbedtls_oid_get_cipher_alg const mbedtls_asn1_buf * oid mbedtls_cipher_type_t * cipher_alg

Translate encryption algorithm OID into cipher_type.

oid

OID to use

cipher_alg

place to store cipher algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

int int mbedtls_oid_get_pkcs12_pbe_alg (const mbedtls_asn1_buf *oid, mbedtls_md_type_t *md_alg, mbedtls_cipher_type_t *cipher_alg) mbedtls_oid_get_pkcs12_pbe_alg const mbedtls_asn1_buf * oid mbedtls_md_type_t * md_alg mbedtls_cipher_type_t * cipher_alg

Translate PKCS#12 PBE algorithm OID into md_type and cipher_type.

oid

OID to use

md_alg

place to store message digest algorithm

cipher_alg

place to store cipher algorithm

0 if successful, or MBEDTLS_ERR_OID_NOT_FOUND

Object Identifier (OID) database.

    /*
    *CopyrightTheMbedTLSContributors
    *SPDX-License-Identifier:Apache-2.0ORGPL-2.0-or-later
    */
    #ifndefMBEDTLS_OID_H
    #defineMBEDTLS_OID_H
    #include"mbedtls/private_access.h"

    #include"mbedtls/build_info.h"

    #include"mbedtls/asn1.h"
    #include"mbedtls/pk.h"

    #include<stddef.h>

    #ifdefined(MBEDTLS_CIPHER_C)
    #include"mbedtls/cipher.h"
    #endif

    #include"mbedtls/md.h"

    #defineMBEDTLS_ERR_OID_NOT_FOUND-0x002E
    #defineMBEDTLS_ERR_OID_BUF_TOO_SMALL-0x000B

    /*ThisisforthebenefitofX.509,butdefinedhereinordertoavoid
    *havinga"backwards"includeofx.509.hhere*/
    /*
    *X.509extensiontypes(internal,arbitraryvaluesforbitsets)
    */
    #defineMBEDTLS_OID_X509_EXT_AUTHORITY_KEY_IDENTIFIER(1<<0)
    #defineMBEDTLS_OID_X509_EXT_SUBJECT_KEY_IDENTIFIER(1<<1)
    #defineMBEDTLS_OID_X509_EXT_KEY_USAGE(1<<2)
    #defineMBEDTLS_OID_X509_EXT_CERTIFICATE_POLICIES(1<<3)
    #defineMBEDTLS_OID_X509_EXT_POLICY_MAPPINGS(1<<4)
    #defineMBEDTLS_OID_X509_EXT_SUBJECT_ALT_NAME(1<<5)
    #defineMBEDTLS_OID_X509_EXT_ISSUER_ALT_NAME(1<<6)
    #defineMBEDTLS_OID_X509_EXT_SUBJECT_DIRECTORY_ATTRS(1<<7)
    #defineMBEDTLS_OID_X509_EXT_BASIC_CONSTRAINTS(1<<8)
    #defineMBEDTLS_OID_X509_EXT_NAME_CONSTRAINTS(1<<9)
    #defineMBEDTLS_OID_X509_EXT_POLICY_CONSTRAINTS(1<<10)
    #defineMBEDTLS_OID_X509_EXT_EXTENDED_KEY_USAGE(1<<11)
    #defineMBEDTLS_OID_X509_EXT_CRL_DISTRIBUTION_POINTS(1<<12)
    #defineMBEDTLS_OID_X509_EXT_INIHIBIT_ANYPOLICY(1<<13)
    #defineMBEDTLS_OID_X509_EXT_FRESHEST_CRL(1<<14)
    #defineMBEDTLS_OID_X509_EXT_NS_CERT_TYPE(1<<16)

    /*
    *MaximumnumberofOIDcomponentsallowed
    */
    #defineMBEDTLS_OID_MAX_COMPONENTS128

    /*
    *ToplevelOIDtuples
    */
    #defineMBEDTLS_OID_ISO_MEMBER_BODIES"\x2a"/*{iso(1)member-body(2)}*/
    #defineMBEDTLS_OID_ISO_IDENTIFIED_ORG"\x2b"/*{iso(1)identified-organization(3)}*/
    #defineMBEDTLS_OID_ISO_CCITT_DS"\x55"/*{joint-iso-ccitt(2)ds(5)}*/
    #defineMBEDTLS_OID_ISO_ITU_COUNTRY"\x60"/*{joint-iso-itu-t(2)country(16)}*/

    /*
    *ISOMemberbodiesOIDparts
    */
    #defineMBEDTLS_OID_COUNTRY_US"\x86\x48"/*{us(840)}*/
    #defineMBEDTLS_OID_ORG_RSA_DATA_SECURITY"\x86\xf7\x0d"/*{rsadsi(113549)}*/
    #defineMBEDTLS_OID_RSA_COMPANYMBEDTLS_OID_ISO_MEMBER_BODIESMBEDTLS_OID_COUNTRY_US\
    MBEDTLS_OID_ORG_RSA_DATA_SECURITY/*{iso(1)member-body(2)us(840)rsadsi(113549)}*/
    #defineMBEDTLS_OID_ORG_ANSI_X9_62"\xce\x3d"/*ansi-X9-62(10045)*/
    #defineMBEDTLS_OID_ANSI_X9_62MBEDTLS_OID_ISO_MEMBER_BODIESMBEDTLS_OID_COUNTRY_US\
    MBEDTLS_OID_ORG_ANSI_X9_62

    /*
    *ISOIdentifiedorganizationOIDparts
    */
    #defineMBEDTLS_OID_ORG_DOD"\x06"/*{dod(6)}*/
    #defineMBEDTLS_OID_ORG_OIW"\x0e"
    #defineMBEDTLS_OID_OIW_SECSIGMBEDTLS_OID_ORG_OIW"\x03"
    #defineMBEDTLS_OID_OIW_SECSIG_ALGMBEDTLS_OID_OIW_SECSIG"\x02"
    #defineMBEDTLS_OID_OIW_SECSIG_SHA1MBEDTLS_OID_OIW_SECSIG_ALG"\x1a"
    #defineMBEDTLS_OID_ORG_THAWTE"\x65"/*thawte(101)*/
    #defineMBEDTLS_OID_THAWTEMBEDTLS_OID_ISO_IDENTIFIED_ORG\
    MBEDTLS_OID_ORG_THAWTE
    #defineMBEDTLS_OID_ORG_CERTICOM"\x81\x04"/*certicom(132)*/
    #defineMBEDTLS_OID_CERTICOMMBEDTLS_OID_ISO_IDENTIFIED_ORG\
    MBEDTLS_OID_ORG_CERTICOM
    #defineMBEDTLS_OID_ORG_TELETRUST"\x24"/*teletrust(36)*/
    #defineMBEDTLS_OID_TELETRUSTMBEDTLS_OID_ISO_IDENTIFIED_ORG\
    MBEDTLS_OID_ORG_TELETRUST

    /*
    *ISOITUOIDparts
    */
    #defineMBEDTLS_OID_ORGANIZATION"\x01"/*{organization(1)}*/
    #defineMBEDTLS_OID_ISO_ITU_US_ORGMBEDTLS_OID_ISO_ITU_COUNTRYMBEDTLS_OID_COUNTRY_US\
    MBEDTLS_OID_ORGANIZATION/*{joint-iso-itu-t(2)country(16)us(840)organization(1)}*/

    #defineMBEDTLS_OID_ORG_GOV"\x65"/*{gov(101)}*/
    #defineMBEDTLS_OID_GOVMBEDTLS_OID_ISO_ITU_US_ORGMBEDTLS_OID_ORG_GOV/*{joint-iso-itu-t(2)country(16)us(840)organization(1)gov(101)}*/

    #defineMBEDTLS_OID_ORG_NETSCAPE"\x86\xF8\x42"/*{netscape(113730)}*/
    #defineMBEDTLS_OID_NETSCAPEMBEDTLS_OID_ISO_ITU_US_ORGMBEDTLS_OID_ORG_NETSCAPE/*NetscapeOID{joint-iso-itu-t(2)country(16)us(840)organization(1)netscape(113730)}*/

    /*ISOarcforstandardcertificateandCRLextensions*/
    #defineMBEDTLS_OID_ID_CEMBEDTLS_OID_ISO_CCITT_DS"\x1D"

    #defineMBEDTLS_OID_NIST_ALGMBEDTLS_OID_GOV"\x03\x04"

    #defineMBEDTLS_OID_INTERNETMBEDTLS_OID_ISO_IDENTIFIED_ORGMBEDTLS_OID_ORG_DOD\
    "\x01"
    #defineMBEDTLS_OID_PKIXMBEDTLS_OID_INTERNET"\x05\x05\x07"

    /*
    *Arcforstandardnamingattributes
    */
    #defineMBEDTLS_OID_ATMBEDTLS_OID_ISO_CCITT_DS"\x04"
    #defineMBEDTLS_OID_AT_CNMBEDTLS_OID_AT"\x03"
    #defineMBEDTLS_OID_AT_SUR_NAMEMBEDTLS_OID_AT"\x04"
    #defineMBEDTLS_OID_AT_SERIAL_NUMBERMBEDTLS_OID_AT"\x05"
    #defineMBEDTLS_OID_AT_COUNTRYMBEDTLS_OID_AT"\x06"
    #defineMBEDTLS_OID_AT_LOCALITYMBEDTLS_OID_AT"\x07"
    #defineMBEDTLS_OID_AT_STATEMBEDTLS_OID_AT"\x08"
    #defineMBEDTLS_OID_AT_ORGANIZATIONMBEDTLS_OID_AT"\x0A"
    #defineMBEDTLS_OID_AT_ORG_UNITMBEDTLS_OID_AT"\x0B"
    #defineMBEDTLS_OID_AT_TITLEMBEDTLS_OID_AT"\x0C"
    #defineMBEDTLS_OID_AT_POSTAL_ADDRESSMBEDTLS_OID_AT"\x10"
    #defineMBEDTLS_OID_AT_POSTAL_CODEMBEDTLS_OID_AT"\x11"
    #defineMBEDTLS_OID_AT_GIVEN_NAMEMBEDTLS_OID_AT"\x2A"
    #defineMBEDTLS_OID_AT_INITIALSMBEDTLS_OID_AT"\x2B"
    #defineMBEDTLS_OID_AT_GENERATION_QUALIFIERMBEDTLS_OID_AT"\x2C"
    #defineMBEDTLS_OID_AT_UNIQUE_IDENTIFIERMBEDTLS_OID_AT"\x2D"
    #defineMBEDTLS_OID_AT_DN_QUALIFIERMBEDTLS_OID_AT"\x2E"
    #defineMBEDTLS_OID_AT_PSEUDONYMMBEDTLS_OID_AT"\x41"

    #defineMBEDTLS_OID_UID"\x09\x92\x26\x89\x93\xF2\x2C\x64\x01\x01"
    #defineMBEDTLS_OID_DOMAIN_COMPONENT"\x09\x92\x26\x89\x93\xF2\x2C\x64\x01\x19"

    /*
    *OIDsforstandardcertificateextensions
    */
    #defineMBEDTLS_OID_AUTHORITY_KEY_IDENTIFIERMBEDTLS_OID_ID_CE"\x23"
    #defineMBEDTLS_OID_SUBJECT_KEY_IDENTIFIERMBEDTLS_OID_ID_CE"\x0E"
    #defineMBEDTLS_OID_KEY_USAGEMBEDTLS_OID_ID_CE"\x0F"
    #defineMBEDTLS_OID_CERTIFICATE_POLICIESMBEDTLS_OID_ID_CE"\x20"
    #defineMBEDTLS_OID_POLICY_MAPPINGSMBEDTLS_OID_ID_CE"\x21"
    #defineMBEDTLS_OID_SUBJECT_ALT_NAMEMBEDTLS_OID_ID_CE"\x11"
    #defineMBEDTLS_OID_ISSUER_ALT_NAMEMBEDTLS_OID_ID_CE"\x12"
    #defineMBEDTLS_OID_SUBJECT_DIRECTORY_ATTRSMBEDTLS_OID_ID_CE"\x09"
    #defineMBEDTLS_OID_BASIC_CONSTRAINTSMBEDTLS_OID_ID_CE"\x13"
    #defineMBEDTLS_OID_NAME_CONSTRAINTSMBEDTLS_OID_ID_CE"\x1E"
    #defineMBEDTLS_OID_POLICY_CONSTRAINTSMBEDTLS_OID_ID_CE"\x24"
    #defineMBEDTLS_OID_EXTENDED_KEY_USAGEMBEDTLS_OID_ID_CE"\x25"
    #defineMBEDTLS_OID_CRL_DISTRIBUTION_POINTSMBEDTLS_OID_ID_CE"\x1F"
    #defineMBEDTLS_OID_INIHIBIT_ANYPOLICYMBEDTLS_OID_ID_CE"\x36"
    #defineMBEDTLS_OID_FRESHEST_CRLMBEDTLS_OID_ID_CE"\x2E"

    /*
    *Certificatepolicies
    */
    #defineMBEDTLS_OID_ANY_POLICYMBEDTLS_OID_CERTIFICATE_POLICIES"\x00"

    /*
    *Netscapecertificateextensions
    */
    #defineMBEDTLS_OID_NS_CERTMBEDTLS_OID_NETSCAPE"\x01"
    #defineMBEDTLS_OID_NS_CERT_TYPEMBEDTLS_OID_NS_CERT"\x01"
    #defineMBEDTLS_OID_NS_BASE_URLMBEDTLS_OID_NS_CERT"\x02"
    #defineMBEDTLS_OID_NS_REVOCATION_URLMBEDTLS_OID_NS_CERT"\x03"
    #defineMBEDTLS_OID_NS_CA_REVOCATION_URLMBEDTLS_OID_NS_CERT"\x04"
    #defineMBEDTLS_OID_NS_RENEWAL_URLMBEDTLS_OID_NS_CERT"\x07"
    #defineMBEDTLS_OID_NS_CA_POLICY_URLMBEDTLS_OID_NS_CERT"\x08"
    #defineMBEDTLS_OID_NS_SSL_SERVER_NAMEMBEDTLS_OID_NS_CERT"\x0C"
    #defineMBEDTLS_OID_NS_COMMENTMBEDTLS_OID_NS_CERT"\x0D"
    #defineMBEDTLS_OID_NS_DATA_TYPEMBEDTLS_OID_NETSCAPE"\x02"
    #defineMBEDTLS_OID_NS_CERT_SEQUENCEMBEDTLS_OID_NS_DATA_TYPE"\x05"

    /*
    *OIDsforCRLextensions
    */
    #defineMBEDTLS_OID_PRIVATE_KEY_USAGE_PERIODMBEDTLS_OID_ID_CE"\x10"
    #defineMBEDTLS_OID_CRL_NUMBERMBEDTLS_OID_ID_CE"\x14"

    /*
    *X.509v3ExtendedkeyusageOIDs
    */
    #defineMBEDTLS_OID_ANY_EXTENDED_KEY_USAGEMBEDTLS_OID_EXTENDED_KEY_USAGE"\x00"

    #defineMBEDTLS_OID_KPMBEDTLS_OID_PKIX"\x03"
    #defineMBEDTLS_OID_SERVER_AUTHMBEDTLS_OID_KP"\x01"
    #defineMBEDTLS_OID_CLIENT_AUTHMBEDTLS_OID_KP"\x02"
    #defineMBEDTLS_OID_CODE_SIGNINGMBEDTLS_OID_KP"\x03"
    #defineMBEDTLS_OID_EMAIL_PROTECTIONMBEDTLS_OID_KP"\x04"
    #defineMBEDTLS_OID_TIME_STAMPINGMBEDTLS_OID_KP"\x08"
    #defineMBEDTLS_OID_OCSP_SIGNINGMBEDTLS_OID_KP"\x09"

    #defineMBEDTLS_OID_WISUN_FANMBEDTLS_OID_INTERNET"\x04\x01\x82\xe4\x25\x01"

    #defineMBEDTLS_OID_ONMBEDTLS_OID_PKIX"\x08"
    #defineMBEDTLS_OID_ON_HW_MODULE_NAMEMBEDTLS_OID_ON"\x04"

    /*
    *PKCSdefinitionOIDs
    */

    #defineMBEDTLS_OID_PKCSMBEDTLS_OID_RSA_COMPANY"\x01"
    #defineMBEDTLS_OID_PKCS1MBEDTLS_OID_PKCS"\x01"
    #defineMBEDTLS_OID_PKCS5MBEDTLS_OID_PKCS"\x05"
    #defineMBEDTLS_OID_PKCS7MBEDTLS_OID_PKCS"\x07"
    #defineMBEDTLS_OID_PKCS9MBEDTLS_OID_PKCS"\x09"
    #defineMBEDTLS_OID_PKCS12MBEDTLS_OID_PKCS"\x0c"

    /*
    *PKCS#1OIDs
    */
    #defineMBEDTLS_OID_PKCS1_RSAMBEDTLS_OID_PKCS1"\x01"
    #defineMBEDTLS_OID_PKCS1_MD5MBEDTLS_OID_PKCS1"\x04"
    #defineMBEDTLS_OID_PKCS1_SHA1MBEDTLS_OID_PKCS1"\x05"
    #defineMBEDTLS_OID_PKCS1_SHA224MBEDTLS_OID_PKCS1"\x0e"
    #defineMBEDTLS_OID_PKCS1_SHA256MBEDTLS_OID_PKCS1"\x0b"
    #defineMBEDTLS_OID_PKCS1_SHA384MBEDTLS_OID_PKCS1"\x0c"
    #defineMBEDTLS_OID_PKCS1_SHA512MBEDTLS_OID_PKCS1"\x0d"

    #defineMBEDTLS_OID_RSA_SHA_OBS"\x2B\x0E\x03\x02\x1D"

    #defineMBEDTLS_OID_PKCS9_EMAILMBEDTLS_OID_PKCS9"\x01"

    /*RFC4055*/
    #defineMBEDTLS_OID_RSASSA_PSSMBEDTLS_OID_PKCS1"\x0a"
    #defineMBEDTLS_OID_MGF1MBEDTLS_OID_PKCS1"\x08"

    /*
    *Digestalgorithms
    */
    #defineMBEDTLS_OID_DIGEST_ALG_MD5MBEDTLS_OID_RSA_COMPANY"\x02\x05"
    #defineMBEDTLS_OID_DIGEST_ALG_SHA1MBEDTLS_OID_ISO_IDENTIFIED_ORG\
    MBEDTLS_OID_OIW_SECSIG_SHA1
    #defineMBEDTLS_OID_DIGEST_ALG_SHA224MBEDTLS_OID_NIST_ALG"\x02\x04"
    #defineMBEDTLS_OID_DIGEST_ALG_SHA256MBEDTLS_OID_NIST_ALG"\x02\x01"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA384MBEDTLS_OID_NIST_ALG"\x02\x02"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA512MBEDTLS_OID_NIST_ALG"\x02\x03"

    #defineMBEDTLS_OID_DIGEST_ALG_RIPEMD160MBEDTLS_OID_TELETRUST"\x03\x02\x01"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA3_224MBEDTLS_OID_NIST_ALG"\x02\x07"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA3_256MBEDTLS_OID_NIST_ALG"\x02\x08"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA3_384MBEDTLS_OID_NIST_ALG"\x02\x09"

    #defineMBEDTLS_OID_DIGEST_ALG_SHA3_512MBEDTLS_OID_NIST_ALG"\x02\x0a"

    #defineMBEDTLS_OID_HMAC_SHA1MBEDTLS_OID_RSA_COMPANY"\x02\x07"

    #defineMBEDTLS_OID_HMAC_SHA224MBEDTLS_OID_RSA_COMPANY"\x02\x08"

    #defineMBEDTLS_OID_HMAC_SHA256MBEDTLS_OID_RSA_COMPANY"\x02\x09"

    #defineMBEDTLS_OID_HMAC_SHA384MBEDTLS_OID_RSA_COMPANY"\x02\x0A"

    #defineMBEDTLS_OID_HMAC_SHA512MBEDTLS_OID_RSA_COMPANY"\x02\x0B"

    #defineMBEDTLS_OID_HMAC_SHA3_224MBEDTLS_OID_NIST_ALG"\x02\x0d"

    #defineMBEDTLS_OID_HMAC_SHA3_256MBEDTLS_OID_NIST_ALG"\x02\x0e"

    #defineMBEDTLS_OID_HMAC_SHA3_384MBEDTLS_OID_NIST_ALG"\x02\x0f"

    #defineMBEDTLS_OID_HMAC_SHA3_512MBEDTLS_OID_NIST_ALG"\x02\x10"

    #defineMBEDTLS_OID_HMAC_RIPEMD160MBEDTLS_OID_INTERNET"\x05\x05\x08\x01\x04"

    /*
    *Encryptionalgorithms,
    *thefollowingstandardizedobjectidentifiersarespecifiedat
    *https://datatracker.ietf.org/doc/html/rfc8018#appendix-C.
    */
    #defineMBEDTLS_OID_DES_CBCMBEDTLS_OID_ISO_IDENTIFIED_ORG\
    MBEDTLS_OID_OIW_SECSIG_ALG"\x07"
    #defineMBEDTLS_OID_DES_EDE3_CBCMBEDTLS_OID_RSA_COMPANY"\x03\x07"
    #defineMBEDTLS_OID_AESMBEDTLS_OID_NIST_ALG"\x01"
    #defineMBEDTLS_OID_AES_128_CBCMBEDTLS_OID_AES"\x02"
    #defineMBEDTLS_OID_AES_192_CBCMBEDTLS_OID_AES"\x16"
    #defineMBEDTLS_OID_AES_256_CBCMBEDTLS_OID_AES"\x2a"

    /*
    *KeyWrappingalgorithms
    */
    /*
    *RFC5649
    */
    #defineMBEDTLS_OID_AES128_KWMBEDTLS_OID_AES"\x05"
    #defineMBEDTLS_OID_AES128_KWPMBEDTLS_OID_AES"\x08"
    #defineMBEDTLS_OID_AES192_KWMBEDTLS_OID_AES"\x19"
    #defineMBEDTLS_OID_AES192_KWPMBEDTLS_OID_AES"\x1c"
    #defineMBEDTLS_OID_AES256_KWMBEDTLS_OID_AES"\x2d"
    #defineMBEDTLS_OID_AES256_KWPMBEDTLS_OID_AES"\x30"
    /*
    *PKCS#5OIDs
    */
    #defineMBEDTLS_OID_PKCS5_PBKDF2MBEDTLS_OID_PKCS5"\x0c"
    #defineMBEDTLS_OID_PKCS5_PBES2MBEDTLS_OID_PKCS5"\x0d"
    #defineMBEDTLS_OID_PKCS5_PBMAC1MBEDTLS_OID_PKCS5"\x0e"

    /*
    *PKCS#5PBES1algorithms
    */
    #defineMBEDTLS_OID_PKCS5_PBE_MD5_DES_CBCMBEDTLS_OID_PKCS5"\x03"
    #defineMBEDTLS_OID_PKCS5_PBE_MD5_RC2_CBCMBEDTLS_OID_PKCS5"\x06"
    #defineMBEDTLS_OID_PKCS5_PBE_SHA1_DES_CBCMBEDTLS_OID_PKCS5"\x0a"
    #defineMBEDTLS_OID_PKCS5_PBE_SHA1_RC2_CBCMBEDTLS_OID_PKCS5"\x0b"

    /*
    *PKCS#7OIDs
    */
    #defineMBEDTLS_OID_PKCS7_DATAMBEDTLS_OID_PKCS7"\x01"
    #defineMBEDTLS_OID_PKCS7_SIGNED_DATAMBEDTLS_OID_PKCS7"\x02"
    #defineMBEDTLS_OID_PKCS7_ENVELOPED_DATAMBEDTLS_OID_PKCS7"\x03"
    #defineMBEDTLS_OID_PKCS7_SIGNED_AND_ENVELOPED_DATAMBEDTLS_OID_PKCS7"\x04"
    #defineMBEDTLS_OID_PKCS7_DIGESTED_DATAMBEDTLS_OID_PKCS7"\x05"
    #defineMBEDTLS_OID_PKCS7_ENCRYPTED_DATAMBEDTLS_OID_PKCS7"\x06"

    /*
    *PKCS#8OIDs
    */
    #defineMBEDTLS_OID_PKCS9_CSR_EXT_REQMBEDTLS_OID_PKCS9"\x0e"

    /*
    *PKCS#12PBEOIDs
    */
    #defineMBEDTLS_OID_PKCS12_PBEMBEDTLS_OID_PKCS12"\x01"

    #defineMBEDTLS_OID_PKCS12_PBE_SHA1_DES3_EDE_CBCMBEDTLS_OID_PKCS12_PBE"\x03"
    #defineMBEDTLS_OID_PKCS12_PBE_SHA1_DES2_EDE_CBCMBEDTLS_OID_PKCS12_PBE"\x04"
    #defineMBEDTLS_OID_PKCS12_PBE_SHA1_RC2_128_CBCMBEDTLS_OID_PKCS12_PBE"\x05"
    #defineMBEDTLS_OID_PKCS12_PBE_SHA1_RC2_40_CBCMBEDTLS_OID_PKCS12_PBE"\x06"

    /*
    *ECkeyalgorithmsfromRFC5480
    */

    /*id-ecPublicKeyOBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)keyType(2)1}*/
    #defineMBEDTLS_OID_EC_ALG_UNRESTRICTEDMBEDTLS_OID_ANSI_X9_62"\x02\01"

    /*id-ecDHOBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)
    *schemes(1)ecdh(12)}*/
    #defineMBEDTLS_OID_EC_ALG_ECDHMBEDTLS_OID_CERTICOM"\x01\x0c"

    /*
    *ECParametersnamedCurveidentifiers,fromRFC5480,RFC5639,andSEC2
    */

    /*secp192r1OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)curves(3)prime(1)1}*/
    #defineMBEDTLS_OID_EC_GRP_SECP192R1MBEDTLS_OID_ANSI_X9_62"\x03\x01\x01"

    /*secp224r1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)33}*/
    #defineMBEDTLS_OID_EC_GRP_SECP224R1MBEDTLS_OID_CERTICOM"\x00\x21"

    /*secp256r1OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)curves(3)prime(1)7}*/
    #defineMBEDTLS_OID_EC_GRP_SECP256R1MBEDTLS_OID_ANSI_X9_62"\x03\x01\x07"

    /*secp384r1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)34}*/
    #defineMBEDTLS_OID_EC_GRP_SECP384R1MBEDTLS_OID_CERTICOM"\x00\x22"

    /*secp521r1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)35}*/
    #defineMBEDTLS_OID_EC_GRP_SECP521R1MBEDTLS_OID_CERTICOM"\x00\x23"

    /*secp192k1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)31}*/
    #defineMBEDTLS_OID_EC_GRP_SECP192K1MBEDTLS_OID_CERTICOM"\x00\x1f"

    /*secp224k1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)32}*/
    #defineMBEDTLS_OID_EC_GRP_SECP224K1MBEDTLS_OID_CERTICOM"\x00\x20"

    /*secp256k1OBJECTIDENTIFIER::={
    *iso(1)identified-organization(3)certicom(132)curve(0)10}*/
    #defineMBEDTLS_OID_EC_GRP_SECP256K1MBEDTLS_OID_CERTICOM"\x00\x0a"

    /*RFC56394.1
    *ecStdCurvesAndGenerationOBJECTIDENTIFIER::={iso(1)
    *identified-organization(3)teletrust(36)algorithm(3)signature-
    *algorithm(3)ecSign(2)8}
    *ellipticCurveOBJECTIDENTIFIER::={ecStdCurvesAndGeneration1}
    *versionOneOBJECTIDENTIFIER::={ellipticCurve1}*/
    #defineMBEDTLS_OID_EC_BRAINPOOL_V1MBEDTLS_OID_TELETRUST"\x03\x03\x02\x08\x01\x01"

    /*brainpoolP256r1OBJECTIDENTIFIER::={versionOne7}*/
    #defineMBEDTLS_OID_EC_GRP_BP256R1MBEDTLS_OID_EC_BRAINPOOL_V1"\x07"

    /*brainpoolP384r1OBJECTIDENTIFIER::={versionOne11}*/
    #defineMBEDTLS_OID_EC_GRP_BP384R1MBEDTLS_OID_EC_BRAINPOOL_V1"\x0B"

    /*brainpoolP512r1OBJECTIDENTIFIER::={versionOne13}*/
    #defineMBEDTLS_OID_EC_GRP_BP512R1MBEDTLS_OID_EC_BRAINPOOL_V1"\x0D"

    /*
    *SEC1C.1
    *
    *prime-fieldOBJECTIDENTIFIER::={id-fieldType1}
    *id-fieldTypeOBJECTIDENTIFIER::={ansi-X9-62fieldType(1)}
    */
    #defineMBEDTLS_OID_ANSI_X9_62_FIELD_TYPEMBEDTLS_OID_ANSI_X9_62"\x01"
    #defineMBEDTLS_OID_ANSI_X9_62_PRIME_FIELDMBEDTLS_OID_ANSI_X9_62_FIELD_TYPE"\x01"

    /*
    *ECDSAsignatureidentifiers,fromRFC5480
    */
    #defineMBEDTLS_OID_ANSI_X9_62_SIGMBEDTLS_OID_ANSI_X9_62"\x04"/*signatures(4)*/
    #defineMBEDTLS_OID_ANSI_X9_62_SIG_SHA2MBEDTLS_OID_ANSI_X9_62_SIG"\x03"/*ecdsa-with-SHA2(3)*/

    /*ecdsa-with-SHA1OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)signatures(4)1}*/
    #defineMBEDTLS_OID_ECDSA_SHA1MBEDTLS_OID_ANSI_X9_62_SIG"\x01"

    /*ecdsa-with-SHA224OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)signatures(4)
    *ecdsa-with-SHA2(3)1}*/
    #defineMBEDTLS_OID_ECDSA_SHA224MBEDTLS_OID_ANSI_X9_62_SIG_SHA2"\x01"

    /*ecdsa-with-SHA256OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)signatures(4)
    *ecdsa-with-SHA2(3)2}*/
    #defineMBEDTLS_OID_ECDSA_SHA256MBEDTLS_OID_ANSI_X9_62_SIG_SHA2"\x02"

    /*ecdsa-with-SHA384OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)signatures(4)
    *ecdsa-with-SHA2(3)3}*/
    #defineMBEDTLS_OID_ECDSA_SHA384MBEDTLS_OID_ANSI_X9_62_SIG_SHA2"\x03"

    /*ecdsa-with-SHA512OBJECTIDENTIFIER::={
    *iso(1)member-body(2)us(840)ansi-X9-62(10045)signatures(4)
    *ecdsa-with-SHA2(3)4}*/
    #defineMBEDTLS_OID_ECDSA_SHA512MBEDTLS_OID_ANSI_X9_62_SIG_SHA2"\x04"

    /*
    *ECkeyalgorithmsfromRFC8410
    */

    #defineMBEDTLS_OID_X25519MBEDTLS_OID_THAWTE"\x6e"
    #defineMBEDTLS_OID_X448MBEDTLS_OID_THAWTE"\x6f"
    #defineMBEDTLS_OID_ED25519MBEDTLS_OID_THAWTE"\x70"
    #defineMBEDTLS_OID_ED448MBEDTLS_OID_THAWTE"\x71"

    #ifdef__cplusplus
    extern"C"{
    #endif

    typedefstructmbedtls_oid_descriptor_t{
    constchar*MBEDTLS_PRIVATE(asn1);
    size_tMBEDTLS_PRIVATE(asn1_len);
    #if!defined(MBEDTLS_X509_REMOVE_INFO)
    constchar*MBEDTLS_PRIVATE(name);
    constchar*MBEDTLS_PRIVATE(description);
    #endif
    }mbedtls_oid_descriptor_t;

    intmbedtls_oid_get_numeric_string(char*buf,size_tsize,constmbedtls_asn1_buf*oid);

    intmbedtls_oid_from_numeric_string(mbedtls_asn1_buf*oid,constchar*oid_str,size_tsize);

    intmbedtls_oid_get_x509_ext_type(constmbedtls_asn1_buf*oid,int*ext_type);

    intmbedtls_oid_get_attr_short_name(constmbedtls_asn1_buf*oid,constchar**short_name);

    intmbedtls_oid_get_pk_alg(constmbedtls_asn1_buf*oid,mbedtls_pk_type_t*pk_alg);

    intmbedtls_oid_get_oid_by_pk_alg(mbedtls_pk_type_tpk_alg,
    constchar**oid,size_t*olen);

    #ifdefined(MBEDTLS_PK_HAVE_ECC_KEYS)
    intmbedtls_oid_get_ec_grp(constmbedtls_asn1_buf*oid,mbedtls_ecp_group_id*grp_id);

    intmbedtls_oid_get_oid_by_ec_grp(mbedtls_ecp_group_idgrp_id,
    constchar**oid,size_t*olen);

    intmbedtls_oid_get_ec_grp_algid(constmbedtls_asn1_buf*oid,mbedtls_ecp_group_id*grp_id);

    intmbedtls_oid_get_oid_by_ec_grp_algid(mbedtls_ecp_group_idgrp_id,
    constchar**oid,size_t*olen);
    #endif/*MBEDTLS_PK_HAVE_ECC_KEYS*/

    intmbedtls_oid_get_sig_alg(constmbedtls_asn1_buf*oid,
    mbedtls_md_type_t*md_alg,mbedtls_pk_type_t*pk_alg);

    intmbedtls_oid_get_sig_alg_desc(constmbedtls_asn1_buf*oid,constchar**desc);

    intmbedtls_oid_get_oid_by_sig_alg(mbedtls_pk_type_tpk_alg,mbedtls_md_type_tmd_alg,
    constchar**oid,size_t*olen);

    intmbedtls_oid_get_md_hmac(constmbedtls_asn1_buf*oid,mbedtls_md_type_t*md_hmac);

    intmbedtls_oid_get_md_alg(constmbedtls_asn1_buf*oid,mbedtls_md_type_t*md_alg);

    #if!defined(MBEDTLS_X509_REMOVE_INFO)
    intmbedtls_oid_get_extended_key_usage(constmbedtls_asn1_buf*oid,constchar**desc);
    #endif

    intmbedtls_oid_get_certificate_policies(constmbedtls_asn1_buf*oid,constchar**desc);

    intmbedtls_oid_get_oid_by_md(mbedtls_md_type_tmd_alg,constchar**oid,size_t*olen);

    #ifdefined(MBEDTLS_CIPHER_C)
    intmbedtls_oid_get_cipher_alg(constmbedtls_asn1_buf*oid,mbedtls_cipher_type_t*cipher_alg);

    #ifdefined(MBEDTLS_PKCS12_C)
    intmbedtls_oid_get_pkcs12_pbe_alg(constmbedtls_asn1_buf*oid,mbedtls_md_type_t*md_alg,
    mbedtls_cipher_type_t*cipher_alg);
    #endif/*MBEDTLS_PKCS12_C*/
    #endif/*MBEDTLS_CIPHER_C*/

    #ifdef__cplusplus
    }
    #endif

    #endif/*oid.h*/