|
uthenticode 2.0.1-fa0cba9
|
#include <openssl/asn1.h>#include <openssl/asn1t.h>#include <openssl/crypto.h>#include <openssl/x509.h>#include <pe-parse/parse.h>#include <cstdint>#include <exception>#include <memory>#include <optional>#include <vector>

Go to the source code of this file.
Namespaces | |
| namespace | uthenticode |
| namespace | uthenticode::impl |
Typedefs | |
| using | uthenticode::impl::BIO_ptr = std::unique_ptr< BIO, decltype(&BIO_free)> |
| using | uthenticode::impl::ASN1_OBJECT_ptr = std::unique_ptr< ASN1_OBJECT, decltype(&ASN1_OBJECT_free)> |
| using | uthenticode::impl::ASN1_TYPE_ptr = std::unique_ptr< ASN1_TYPE, decltype(&ASN1_TYPE_free)> |
| using | uthenticode::impl::OpenSSL_ptr = std::unique_ptr< char, decltype(&OpenSSL_free)> |
| using | uthenticode::impl::BN_ptr = std::unique_ptr< BIGNUM, decltype(&BN_free)> |
| using | uthenticode::impl::STACK_OF_X509_ptr = std::unique_ptr< STACK_OF(X509), decltype(&SK_X509_free)> |
| using | uthenticode::impl::SectionList = std::vector< const peparse::bounded_buffer * > |
| using | uthenticode::Checksum = std::tuple< checksum_kind, std::string > |
Enumerations | |
| enum class | uthenticode::certificate_revision : std::uint16_t { uthenticode::CERT_REVISION_1_0 = 0x0100 , uthenticode::CERT_REVISION_2_0 = 0x0200 } |
| enum class | uthenticode::certificate_type : std::uint16_t { uthenticode::CERT_TYPE_X509 = 0x0001 , uthenticode::CERT_TYPE_PKCS_SIGNED_DATA = 0x0002 , uthenticode::CERT_TYPE_RESERVED_1 = 0x0003 , uthenticode::CERT_TYPE_PKCS1_SIGN = 0x0009 } |
| enum class | uthenticode::checksum_kind : std::uint8_t { uthenticode::UNKNOWN , uthenticode::MD5 , uthenticode::SHA1 , uthenticode::SHA256 } |
Functions | |
| void | uthenticode::impl::OpenSSL_free (void *ptr) |
| void | uthenticode::impl::SK_X509_free (stack_st_X509 *ptr) |
| std::ostream & | uthenticode::operator<< (std::ostream &os, checksum_kind kind) |
| std::vector< WinCert > | uthenticode::read_certs (peparse::parsed_pe *pe) |
| std::vector< Checksum > | uthenticode::get_checksums (peparse::parsed_pe *pe) |
| std::optional< std::string > | uthenticode::calculate_checksum (peparse::parsed_pe *pe, checksum_kind kind) |
| bool | uthenticode::verify (peparse::parsed_pe *pe) |
Variables | |
| constexpr auto | uthenticode::impl::SPC_INDIRECT_DATA_OID = "1.3.6.1.4.1.311.2.1.4" |
| constexpr auto | uthenticode::impl::SPC_NESTED_SIGNATURE_OID = "1.3.6.1.4.1.311.2.4.1" |
The main uthenticode namespace.