crypto¶
Include dependency graph for crypto.h:
This graph shows which files directly or indirectly include crypto.h:
todo
-
namespace crypto¶
Typedefs
-
using aes_t = std::vector<std::uint8_t>¶
-
using bignum_t = util::safe_ptr<BIGNUM, BN_free>¶
-
using bio_t = util::safe_ptr<BIO, BIO_free_all>¶
-
using cipher_ctx_t = util::safe_ptr<EVP_CIPHER_CTX, EVP_CIPHER_CTX_free>¶
-
using md_ctx_t = util::safe_ptr<EVP_MD_CTX, md_ctx_destroy>¶
-
using pkey_ctx_t = util::safe_ptr<EVP_PKEY_CTX, EVP_PKEY_CTX_free>¶
-
using pkey_t = util::safe_ptr<EVP_PKEY, EVP_PKEY_free>¶
-
using sha256_t = std::array<std::uint8_t, SHA256_DIGEST_LENGTH>¶
-
using x509_store_ctx_t = util::safe_ptr<X509_STORE_CTX, X509_STORE_CTX_free>¶
-
using x509_store_t = util::safe_ptr<X509_STORE, X509_STORE_free>¶
-
using x509_t = util::safe_ptr<X509, X509_free>¶
-
class cert_chain_t¶
Public Functions
-
cert_chain_t()¶
-
cert_chain_t(cert_chain_t&&) noexcept = default¶
-
void clear()¶
-
cert_chain_t &operator=(cert_chain_t&&) noexcept = default¶
-
const char *verify(x509_t::element_type *cert)¶
When certificates from two or more instances of Moonlight have been added to x509_store_t, only one of them will be verified by X509_verify_cert, resulting in only a single instance of Moonlight to be able to use Sunshine
To circumvent this, x509_store_t instance will be created for each instance of the certificates.
-
cert_chain_t()¶
-
struct creds_t¶
-
namespace cipher¶
Functions
-
constexpr std::size_t round_to_pkcs7_padded(std::size_t size)¶
Variables
-
constexpr std::size_t tag_size = 16¶
-
class cbc_t : public crypto::cipher::cipher_t¶
Inheritence diagram for crypto::cipher::cbc_t:
Collaboration diagram for crypto::cipher::cbc_t:
-
class cipher_t¶
Inheritence diagram for crypto::cipher::cipher_t:
Collaboration diagram for crypto::cipher::cipher_t:
Subclassed by crypto::cipher::cbc_t, crypto::cipher::ecb_t, crypto::cipher::gcm_t
-
class ecb_t : public crypto::cipher::cipher_t¶
Inheritence diagram for crypto::cipher::ecb_t:
Collaboration diagram for crypto::cipher::ecb_t:
-
constexpr std::size_t round_to_pkcs7_padded(std::size_t size)¶
-
using aes_t = std::vector<std::uint8_t>¶