Botan
1.11.15
|
Functions | |
void | add_oid (const OID &oid, const std::string &name) |
void | add_oid2str (const OID &oid, const std::string &name) |
void | add_oidstr (const char *oidstr, const char *name) |
void | add_str2oid (const OID &oid, const std::string &name) |
const char * | default_oid_list () |
bool | have_oid (const std::string &name) |
std::string | lookup (const OID &oid) |
OID | lookup (const std::string &name) |
bool | name_of (const OID &oid, const std::string &name) |
BOTAN_DLL void Botan::OIDS::add_oid | ( | const OID & | oid, |
const std::string & | name | ||
) |
Register an OID to string mapping.
oid | the oid to register |
name | the name to be associated with the oid |
Definition at line 135 of file oids.cpp.
Referenced by add_oidstr().
{ OID_Map::global_registry().add_oid(oid, name); }
BOTAN_DLL void Botan::OIDS::add_oid2str | ( | const OID & | oid, |
const std::string & | name | ||
) |
BOTAN_DLL void Botan::OIDS::add_oidstr | ( | const char * | oidstr, |
const char * | name | ||
) |
BOTAN_DLL void Botan::OIDS::add_str2oid | ( | const OID & | oid, |
const std::string & | name | ||
) |
BOTAN_DLL const char * Botan::OIDS::default_oid_list | ( | ) |
Definition at line 14 of file default.cpp.
{ return // Public key types "1.2.840.113549.1.1.1 = RSA" "\n" "2.5.8.1.1 = RSA" "\n" "1.2.840.10040.4.1 = DSA" "\n" "1.2.840.10046.2.1 = DH" "\n" "1.3.6.1.4.1.3029.1.2.1 = ElGamal" "\n" "1.3.6.1.4.1.25258.1.1 = RW" "\n" "1.3.6.1.4.1.25258.1.2 = NR" "\n" "1.3.6.1.4.1.25258.1.3 = McEliece" "\n" "1.3.6.1.4.1.25258.1.4 = Curve25519" "\n" // X9.62 ecPublicKey, valid for ECDSA and ECDH (RFC 3279 sec 2.3.5) "1.2.840.10045.2.1 = ECDSA" "\n" "1.3.132.1.12 = ECDH" "\n" "1.2.643.2.2.19 = GOST-34.10" "\n" // Block ciphers "1.3.14.3.2.7 = DES/CBC" "\n" "1.2.840.113549.3.7 = TripleDES/CBC" "\n" "1.2.840.113549.3.2 = RC2/CBC" "\n" "1.2.840.113533.7.66.10 = CAST-128/CBC" "\n" "2.16.840.1.101.3.4.1.2 = AES-128/CBC" "\n" "2.16.840.1.101.3.4.1.22 = AES-192/CBC" "\n" "2.16.840.1.101.3.4.1.42 = AES-256/CBC" "\n" "1.2.410.200004.1.4 = SEED/CBC" "\n" "1.3.6.1.4.1.25258.3.1 = Serpent/CBC" "\n" "1.3.6.1.4.1.25258.3.2 = Threefish-512/CBC" "\n" "1.3.6.1.4.1.25258.3.3 = Twofish/CBC" "\n" "2.16.840.1.101.3.4.1.6 = AES-128/GCM" "\n" "2.16.840.1.101.3.4.1.26 = AES-192/GCM" "\n" "2.16.840.1.101.3.4.1.46 = AES-256/GCM" "\n" "1.3.6.1.4.1.25258.3.101 = Serpent/GCM" "\n" "1.3.6.1.4.1.25258.3.102 = Twofish/GCM" "\n" "1.3.6.1.4.1.25258.3.2.1 = AES-128/OCB" "\n" "1.3.6.1.4.1.25258.3.2.2 = AES-192/OCB" "\n" "1.3.6.1.4.1.25258.3.2.3 = AES-256/OCB" "\n" "1.3.6.1.4.1.25258.3.2.4 = Serpent/OCB" "\n" "1.3.6.1.4.1.25258.3.2.5 = Twofish/OCB" "\n" // Hashes "1.2.840.113549.2.5 = MD5" "\n" "1.3.6.1.4.1.11591.12.2 = Tiger(24,3)" "\n" "1.3.14.3.2.26 = SHA-160" "\n" "2.16.840.1.101.3.4.2.4 = SHA-224" "\n" "2.16.840.1.101.3.4.2.1 = SHA-256" "\n" "2.16.840.1.101.3.4.2.2 = SHA-384" "\n" "2.16.840.1.101.3.4.2.3 = SHA-512" "\n" "2.16.840.1.101.3.4.2.6 = SHA-512-256" "\n" // MACs "1.2.840.113549.2.7 = HMAC(SHA-160)" "\n" "1.2.840.113549.2.8 = HMAC(SHA-224)" "\n" "1.2.840.113549.2.9 = HMAC(SHA-256)" "\n" "1.2.840.113549.2.10 = HMAC(SHA-384)" "\n" "1.2.840.113549.2.11 = HMAC(SHA-512)" "\n" // Keywrap "1.2.840.113549.1.9.16.3.6 = KeyWrap.TripleDES" "\n" "1.2.840.113549.1.9.16.3.7 = KeyWrap.RC2" "\n" "1.2.840.113533.7.66.15 = KeyWrap.CAST-128" "\n" "2.16.840.1.101.3.4.1.5 = KeyWrap.AES-128" "\n" "2.16.840.1.101.3.4.1.25 = KeyWrap.AES-192" "\n" "2.16.840.1.101.3.4.1.45 = KeyWrap.AES-256" "\n" "1.2.840.113549.1.9.16.3.8 = Compression.Zlib" "\n" "1.2.840.113549.1.1.1 = RSA/EME-PKCS1-v1_5" "\n" "1.2.840.113549.1.1.2 = RSA/EMSA3(MD2)" "\n" "1.2.840.113549.1.1.4 = RSA/EMSA3(MD5)" "\n" "1.2.840.113549.1.1.5 = RSA/EMSA3(SHA-160)" "\n" "1.2.840.113549.1.1.11 = RSA/EMSA3(SHA-256)" "\n" "1.2.840.113549.1.1.12 = RSA/EMSA3(SHA-384)" "\n" "1.2.840.113549.1.1.13 = RSA/EMSA3(SHA-512)" "\n" "1.3.36.3.3.1.2 = RSA/EMSA3(RIPEMD-160)" "\n" "1.2.840.10040.4.3 = DSA/EMSA1(SHA-160)" "\n" "2.16.840.1.101.3.4.3.1 = DSA/EMSA1(SHA-224)" "\n" "2.16.840.1.101.3.4.3.2 = DSA/EMSA1(SHA-256)" "\n" "0.4.0.127.0.7.1.1.4.1.1 = ECDSA/EMSA1_BSI(SHA-160)" "\n" "0.4.0.127.0.7.1.1.4.1.2 = ECDSA/EMSA1_BSI(SHA-224)" "\n" "0.4.0.127.0.7.1.1.4.1.3 = ECDSA/EMSA1_BSI(SHA-256)" "\n" "0.4.0.127.0.7.1.1.4.1.4 = ECDSA/EMSA1_BSI(SHA-384)" "\n" "0.4.0.127.0.7.1.1.4.1.5 = ECDSA/EMSA1_BSI(SHA-512)" "\n" "0.4.0.127.0.7.1.1.4.1.6 = ECDSA/EMSA1_BSI(RIPEMD-160)" "\n" "1.2.840.10045.4.1 = ECDSA/EMSA1(SHA-160)" "\n" "1.2.840.10045.4.3.1 = ECDSA/EMSA1(SHA-224)" "\n" "1.2.840.10045.4.3.2 = ECDSA/EMSA1(SHA-256)" "\n" "1.2.840.10045.4.3.3 = ECDSA/EMSA1(SHA-384)" "\n" "1.2.840.10045.4.3.4 = ECDSA/EMSA1(SHA-512)" "\n" "1.2.643.2.2.3 = GOST-34.10/EMSA1(GOST-R-34.11-94)" "\n" "1.3.6.1.4.1.25258.2.1.1.1 = RW/EMSA2(RIPEMD-160)" "\n" "1.3.6.1.4.1.25258.2.1.1.2 = RW/EMSA2(SHA-160)" "\n" "1.3.6.1.4.1.25258.2.1.1.3 = RW/EMSA2(SHA-224)" "\n" "1.3.6.1.4.1.25258.2.1.1.4 = RW/EMSA2(SHA-256)" "\n" "1.3.6.1.4.1.25258.2.1.1.5 = RW/EMSA2(SHA-384)" "\n" "1.3.6.1.4.1.25258.2.1.1.6 = RW/EMSA2(SHA-512)" "\n" "1.3.6.1.4.1.25258.2.1.2.1 = RW/EMSA4(RIPEMD-160)" "\n" "1.3.6.1.4.1.25258.2.1.2.2 = RW/EMSA4(SHA-160)" "\n" "1.3.6.1.4.1.25258.2.1.2.3 = RW/EMSA4(SHA-224)" "\n" "1.3.6.1.4.1.25258.2.1.2.4 = RW/EMSA4(SHA-256)" "\n" "1.3.6.1.4.1.25258.2.1.2.5 = RW/EMSA4(SHA-384)" "\n" "1.3.6.1.4.1.25258.2.1.2.6 = RW/EMSA4(SHA-512)" "\n" "1.3.6.1.4.1.25258.2.2.1.1 = NR/EMSA2(RIPEMD-160)" "\n" "1.3.6.1.4.1.25258.2.2.1.2 = NR/EMSA2(SHA-160)" "\n" "1.3.6.1.4.1.25258.2.2.1.3 = NR/EMSA2(SHA-224)" "\n" "1.3.6.1.4.1.25258.2.2.1.4 = NR/EMSA2(SHA-256)" "\n" "1.3.6.1.4.1.25258.2.2.1.5 = NR/EMSA2(SHA-384)" "\n" "1.3.6.1.4.1.25258.2.2.1.6 = NR/EMSA2(SHA-512)" "\n" "2.5.4.3 = X520.CommonName" "\n" "2.5.4.4 = X520.Surname" "\n" "2.5.4.5 = X520.SerialNumber" "\n" "2.5.4.6 = X520.Country" "\n" "2.5.4.7 = X520.Locality" "\n" "2.5.4.8 = X520.State" "\n" "2.5.4.10 = X520.Organization" "\n" "2.5.4.11 = X520.OrganizationalUnit" "\n" "2.5.4.12 = X520.Title" "\n" "2.5.4.42 = X520.GivenName" "\n" "2.5.4.43 = X520.Initials" "\n" "2.5.4.44 = X520.GenerationalQualifier" "\n" "2.5.4.46 = X520.DNQualifier" "\n" "2.5.4.65 = X520.Pseudonym" "\n" "1.2.840.113549.1.5.12 = PKCS5.PBKDF2" "\n" "1.2.840.113549.1.5.13 = PBE-PKCS5v20" "\n" "1.2.840.113549.1.9.1 = PKCS9.EmailAddress" "\n" "1.2.840.113549.1.9.2 = PKCS9.UnstructuredName" "\n" "1.2.840.113549.1.9.3 = PKCS9.ContentType" "\n" "1.2.840.113549.1.9.4 = PKCS9.MessageDigest" "\n" "1.2.840.113549.1.9.7 = PKCS9.ChallengePassword" "\n" "1.2.840.113549.1.9.14 = PKCS9.ExtensionRequest" "\n" "1.2.840.113549.1.7.1 = CMS.DataContent" "\n" "1.2.840.113549.1.7.2 = CMS.SignedData" "\n" "1.2.840.113549.1.7.3 = CMS.EnvelopedData" "\n" "1.2.840.113549.1.7.5 = CMS.DigestedData" "\n" "1.2.840.113549.1.7.6 = CMS.EncryptedData" "\n" "1.2.840.113549.1.9.16.1.2 = CMS.AuthenticatedData" "\n" "1.2.840.113549.1.9.16.1.9 = CMS.CompressedData" "\n" "2.5.29.14 = X509v3.SubjectKeyIdentifier" "\n" "2.5.29.15 = X509v3.KeyUsage" "\n" "2.5.29.17 = X509v3.SubjectAlternativeName" "\n" "2.5.29.18 = X509v3.IssuerAlternativeName" "\n" "2.5.29.19 = X509v3.BasicConstraints" "\n" "2.5.29.20 = X509v3.CRLNumber" "\n" "2.5.29.21 = X509v3.ReasonCode" "\n" "2.5.29.23 = X509v3.HoldInstructionCode" "\n" "2.5.29.24 = X509v3.InvalidityDate" "\n" "2.5.29.31 = X509v3.CRLDistributionPoints" "\n" "2.5.29.32 = X509v3.CertificatePolicies" "\n" "2.5.29.35 = X509v3.AuthorityKeyIdentifier" "\n" "2.5.29.36 = X509v3.PolicyConstraints" "\n" "2.5.29.37 = X509v3.ExtendedKeyUsage" "\n" "1.3.6.1.5.5.7.1.1 = PKIX.AuthorityInformationAccess" "\n" "2.5.29.32.0 = X509v3.AnyPolicy" "\n" "1.3.6.1.5.5.7.3.1 = PKIX.ServerAuth" "\n" "1.3.6.1.5.5.7.3.2 = PKIX.ClientAuth" "\n" "1.3.6.1.5.5.7.3.3 = PKIX.CodeSigning" "\n" "1.3.6.1.5.5.7.3.4 = PKIX.EmailProtection" "\n" "1.3.6.1.5.5.7.3.5 = PKIX.IPsecEndSystem" "\n" "1.3.6.1.5.5.7.3.6 = PKIX.IPsecTunnel" "\n" "1.3.6.1.5.5.7.3.7 = PKIX.IPsecUser" "\n" "1.3.6.1.5.5.7.3.8 = PKIX.TimeStamping" "\n" "1.3.6.1.5.5.7.3.9 = PKIX.OCSPSigning" "\n" "1.3.6.1.5.5.7.8.5 = PKIX.XMPPAddr" "\n" "1.3.6.1.5.5.7.48.1 = PKIX.OCSP" "\n" "1.3.6.1.5.5.7.48.1.1 = PKIX.OCSP.BasicResponse" "\n" // ECC param sets "1.3.132.0.6 = secp112r1" "\n" "1.3.132.0.7 = secp112r2" "\n" "1.3.132.0.8 = secp160r1" "\n" "1.3.132.0.9 = secp160k1" "\n" "1.3.132.0.10 = secp256k1" "\n" "1.3.132.0.28 = secp128r1" "\n" "1.3.132.0.29 = secp128r2" "\n" "1.3.132.0.30 = secp160r2" "\n" "1.3.132.0.31 = secp192k1" "\n" "1.3.132.0.32 = secp224k1" "\n" "1.3.132.0.33 = secp224r1" "\n" "1.3.132.0.34 = secp384r1" "\n" "1.3.132.0.35 = secp521r1" "\n" "1.2.840.10045.3.1.1 = secp192r1" "\n" "1.2.840.10045.3.1.2 = x962_p192v2" "\n" "1.2.840.10045.3.1.3 = x962_p192v3" "\n" "1.2.840.10045.3.1.4 = x962_p239v1" "\n" "1.2.840.10045.3.1.5 = x962_p239v2" "\n" "1.2.840.10045.3.1.6 = x962_p239v3" "\n" "1.2.840.10045.3.1.7 = secp256r1" "\n" "1.3.36.3.3.2.8.1.1.1 = brainpool160r1" "\n" "1.3.36.3.3.2.8.1.1.3 = brainpool192r1" "\n" "1.3.36.3.3.2.8.1.1.5 = brainpool224r1" "\n" "1.3.36.3.3.2.8.1.1.7 = brainpool256r1" "\n" "1.3.36.3.3.2.8.1.1.9 = brainpool320r1" "\n" "1.3.36.3.3.2.8.1.1.11 = brainpool384r1" "\n" "1.3.36.3.3.2.8.1.1.13 = brainpool512r1" "\n" "1.2.643.2.2.35.1 = gost_256A" "\n" "1.2.643.2.2.36.0 = gost_256A" "\n" "0.4.0.127.0.7.3.1.2.1 = CertificateHolderAuthorizationTemplate" "\n" ; }
BOTAN_DLL bool Botan::OIDS::have_oid | ( | const std::string & | oid | ) |
See if an OID exists in the internal table.
oid | the oid to check for |
Definition at line 165 of file oids.cpp.
Referenced by Botan::X942_PRF::X942_PRF().
{
return OID_Map::global_registry().have_oid(name);
}
BOTAN_DLL std::string Botan::OIDS::lookup | ( | const OID & | oid | ) |
Resolve an OID
oid | the OID to look up |
Definition at line 155 of file oids.cpp.
Referenced by Botan::X509_DN::add_attribute(), Botan::X509_Cert_Options::add_ex_constraint(), Botan::AlgorithmIdentifier::AlgorithmIdentifier(), Botan::Attribute::Attribute(), Botan::EAC_Signed_Object::check_signature(), Botan::X509_Object::check_signature(), Botan::choose_sig_format(), Botan::AlternativeName::contents(), Botan::X509_DN::contents(), Botan::CVC_EAC::create_cvc_req(), Botan::CVC_EAC::create_self_signed_cert(), Botan::EC_Group::EC_Group(), Botan::X509_DN::get_attribute(), Botan::Public_Key::get_oid(), Botan::X509_Object::hash_used_for_signature(), Botan::OCSP::CertID::is_id_for(), Botan::PKCS8::load_key(), Botan::make_cvc_cert(), Botan::make_private_key(), Botan::make_public_key(), name_of(), Botan::Certificate_Extension::oid_of(), Botan::pbes2_decrypt(), Botan::pbes2_encrypt(), Botan::TLS::Server_Key_Exchange::Server_Key_Exchange(), Botan::X509_Certificate::to_string(), Botan::X509_DN::X509_DN(), and Botan::X942_PRF::X942_PRF().
{
return OID_Map::global_registry().lookup(oid);
}
BOTAN_DLL OID Botan::OIDS::lookup | ( | const std::string & | name | ) |
BOTAN_DLL bool Botan::OIDS::name_of | ( | const OID & | oid, |
const std::string & | name | ||
) |