47 std::unique_ptr<Public_Key> subject_public_key()
const;
58 BOTAN_DEPRECATED(
"Use subject_public_key") std::unique_ptr<Public_Key> load_subject_public_key()
const;
65 const std::vector<uint8_t>& subject_public_key_bits()
const;
71 const std::vector<uint8_t>& subject_public_key_info()
const;
82 const std::vector<uint8_t>& subject_public_key_bitstring()
const;
90 const std::vector<uint8_t>& subject_public_key_bitstring_sha1()
const;
96 const X509_DN& issuer_dn()
const;
102 const X509_DN& subject_dn()
const;
118 std::vector<std::string> subject_info(std::string_view
name)
const;
126 std::vector<std::string> issuer_info(std::string_view
name)
const;
131 const std::vector<uint8_t>& raw_issuer_dn()
const;
136 std::vector<uint8_t> raw_issuer_dn_sha256()
const;
141 const std::vector<uint8_t>& raw_subject_dn()
const;
146 std::vector<uint8_t> raw_subject_dn_sha256()
const;
164 uint32_t x509_version()
const;
170 const std::vector<uint8_t>& serial_number()
const;
176 bool is_serial_negative()
const;
182 const std::vector<uint8_t>& authority_key_id()
const;
188 const std::vector<uint8_t>& subject_key_id()
const;
195 bool is_self_signed()
const;
201 bool is_CA_cert()
const;
217 bool allowed_extended_usage(std::string_view usage)
const;
225 bool allowed_extended_usage(
const OID& usage)
const;
246 bool has_ex_constraint(std::string_view ex_constraint)
const;
252 bool has_ex_constraint(
const OID& ex_constraint)
const;
259 uint32_t path_limit()
const;
265 bool is_critical(std::string_view ex_name)
const;
279 const std::vector<OID>& extended_key_usage()
const;
293 const std::vector<OID>& certificate_policy_oids()
const;
305 const std::vector<uint8_t>& v2_issuer_key_id()
const;
311 const std::vector<uint8_t>& v2_subject_key_id()
const;
326 std::string ocsp_responder()
const;
331 std::vector<std::string> ca_issuers()
const;
336 BOTAN_DEPRECATED(
"Use crl_distribution_points") std::string crl_distribution_point()
const;
341 std::vector<std::string> crl_distribution_points()
const;
346 std::string to_string()
const;
352 std::string fingerprint(std::string_view hash_name =
"SHA-1")
const;
362 bool matches_dns_name(std::string_view
name)
const;
384#if defined(BOTAN_TARGET_OS_HAS_FILESYSTEM)
417 std::string PEM_label()
const override;
419 std::vector<std::string> alternate_PEM_labels()
const override;
421 void force_decode()
override;
423 const X509_Certificate_Data& data()
const;
425 std::shared_ptr<X509_Certificate_Data> m_data;