Estruturas de criptografia
As estruturas a seguir são usadas por funções de criptografia. As estruturas de criptografia são categorizadas de acordo com o uso da seguinte maneira:
- Estruturas CryptXML
- Estruturas gerais de criptografia
- Estruturas de certificado comuns
- Estruturas de extensão de certificado X.509
- Estruturas de mensagens
- Estruturas de suporte do OID
- Estruturas de cadeia de certificados
- Estruturas CSP
- Estruturas WinTrust
- Estruturas SIP
Estruturas CryptXML
As estruturas a seguir são usadas pelas Funções CryptXML.
Estrutura | Descrição |
---|---|
CRYPT_XML_ALGORITHM | Especifica o algoritmo usado para assinar ou transformar a mensagem. |
CRYPT_XML_ALGORITHM_INFO | Contém informações de algoritmo. |
CRYPT_XML_BLOB | Contém uma matriz arbitrária de bytes. |
CRYPT_XML_CRYPTOGRAPHIC_INTERFACE | Passado para o ponteiro da função CryptXmlDllGetInterface para expor as funções CryptXML implementadas. |
CRYPT_XML_DATA_BLOB | Contém dados codificados em XML. |
CRYPT_XML_DATA_PROVIDER | Especifica a interface para o provedor de dados XML. |
CRYPT_XML_DOC_CTXT | Define informações de contexto do documento. |
CRYPT_XML_ISSUER_SERIAL | Contém um par de nome diferenciado e número de série emitido por X.509 . |
CRYPT_XML_KEY_DSA_KEY_VALUE | Define um valor de chave DSA ( Algoritmo de Assinatura Digital ). A estrutura CRYPT_XML_KEY_DSA_KEY_VALUE é usada como um elemento da união de valor de chave na estrutura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_ECDSA_KEY_VALUE | Define um valor de chave ECDSA (Algoritmo de Assinatura Digital de Curva Elíptica). A estrutura CRYPT_XML_KEY_ECDSA_KEY_VALUE é usada como um elemento da união de valor de chave na estrutura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_INFO | Encapsula os principais dados de informações. |
CRYPT_XML_KEY_INFO_ITEM | Encapsula os dados de informações principais que correspondem a um elemento KeyInfo . O elemento KeyInfo permite que o destinatário obtenha a chave necessária para validar a assinatura. |
CRYPT_XML_KEY_RSA_KEY_VALUE | Define um valor de chave RSA. A estrutura CRYPT_XML_KEY_RSA_KEY_VALUE é usada como elemento da união de valor de chave na estrutura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_VALUE | Contém uma única chave pública que pode ser útil para validar a assinatura. |
CRYPT_XML_KEYINFO_PARAM | É usado pela função CryptXmlSign para especificar os membros do elemento KeyInfo a serem codificados. |
CRYPT_XML_OBJECT | Descreve um elemento Object na assinatura. |
CRYPT_XML_PROPERTY | Contém informações sobre uma propriedade CryptXML. |
CRYPT_XML_REFERENCE | Contém informações usadas para preencher o elemento Reference . |
CRYPT_XML_REFERENCES | Define uma matriz de estruturas de CRYPT_XML_REFERENCE . |
CRYPT_XML_SIGNATURE | Contém informações usadas para preencher o elemento Signature . |
CRYPT_XML_SIGNED_INFO | Retorna informações sobre o status de validação de assinatura, informações de resumo status sobre um elemento SignedInfo ou informações de resumo status sobre uma matriz de elementos Reference. |
CRYPT_XML_TRANSFORM_CHAIN_CONFIG | Define transformações definidas pelo aplicativo que são permitidas para uso na assinatura digital XML. |
CRYPT_XML_TRANSFORM_INFO | Contém informações usadas ao aplicar a transformação de dados. |
CRYPT_XML_X509DATA | Representa a sequência de opções no elemento X509Data . |
CRYPT_XML_X509DATA_ITEM | Representa dados X.509 que devem ser codificados em um elemento nomeado X509Data. |
Estruturas gerais de criptografia
As estruturas a seguir são usadas pelas Funções base de criptografia.
Estrutura | Descrição |
---|---|
CMS_DH_KEY_INFO | Usado com o parâmetro KP_CMS_DH_KEY_INFO na função CryptSetKeyParam para conter informações de chave Diffie-Hellman . |
CMS_KEY_INFO | Essa estrutura não é usada. |
CRYPT_AES_128_KEY_STATE | Especifica as informações de chave simétrica de 128 bits para uma criptografia AES ( Advanced Encryption Standard ). |
CRYPT_AES_256_KEY_STATE | Especifica as informações de chave simétrica de 256 bits para uma criptografia AES. |
CRYPT_ALGORITHM_IDENTIFIER | Contém o OID (identificador de objeto ) do algoritmo e todos os parâmetros necessários para esse algoritmo. |
CRYPT_ATTRIBUTE | Especifica um atributo que tem um ou mais valores. |
CRYPT_ATTRIBUTE_TYPE_VALUE | Contém um único valor de atributo. |
CRYPT_ATTRIBUTES | Contém uma matriz de atributos. |
CRYPT_BIT_BLOB | Contém uma matriz de bytes. |
CRYPT_BLOB_ARRAY | Contém uma matriz de estruturas de CRYPT_DATA_BLOB . |
CRYPT_CONTENT_INFO | Contém dados codificados no formato de dados ContentInfo do PKCS nº 7. |
CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY | Contém informações que representam a sequência de certificados do Netscape de certificados. |
CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA | Usada com a função CryptInstallDefaultContext para conter uma matriz de cadeias de caracteres de identificador de objeto. |
CRYPT_ECC_CMS_SHARED_INFO | Representa informações de chave de criptografia de chave ao usar a Criptografia de Curva Elíptica (ECC) no tipo de conteúdo EnvelopedData da Sintaxe de Mensagem Criptográfica (CMS). |
CRYPT_ENCRYPTED_PRIVATE_KEY_INFO | Contém as informações de uma chave privada PKCS nº 8 criptografada. |
CRYPT_ENROLLMENT_NAME_VALUE_PAIR | Essa estrutura é usada para criar solicitações de certificado em nome de um usuário. |
CRYPT_INTEGER_BLOB | Contém os dados de vários tipos de objetos binários grandes em nomes apropriados para o tipo. |
CRYPT_KEY_LIMITS | Dá suporte à função CryptGetLocalKeyLimits não implementada e não é usada. Ele será removido em uma versão futura do Wincrypt.h. |
CRYPT_KEY_PROV_INFO | Contém campos que são passados como argumentos para CryptAcquireContext para adquirir um identificador para um contêiner de chave específico dentro de um provedor de serviços criptográficos específico (CSP) ou para criar ou destruir um contêiner de chaves. |
CRYPT_KEY_PROV_PARAM | Contém dados a serem passados como argumentos para CryptSetProvParam. |
CRYPT_KEY_SIGN_MESSAGE_PARA | Contém informações sobre o CSP e os algoritmos usados para assinar uma mensagem. |
CRYPT_KEY_VERIFY_MESSAGE_PARA | Contém informações necessárias para verificar mensagens assinadas sem um certificado para o signatário. |
CRYPT_MASK_GEN_ALGORITHM | Identifica o algoritmo usado para gerar uma máscara de assinatura RSA PKCS nº 1 v2.1. |
CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE | Contém ponteiros para funções implementadas por um provedor de localização de objeto. |
CRYPT_PKCS8_EXPORT_PARAMS | Contém informações que identificam uma chave privada e um ponteiro para uma função de retorno de chamada. |
CRYPT_PKCS8_IMPORT_PARAMS | Contém uma chave privada PKCS nº 8 e dois ponteiros para funções de retorno de chamada. |
CRYPT_PKCS12_PBE_PARAMS | Contém parâmetros usados para criar uma chave de criptografia, um IV ( vetor de inicialização ) ou uma chave MAC ( Código de Autenticação de Mensagem ) para um algoritmo de criptografia baseado em senha PKCS nº 12 . |
CRYPT_PRIVATE_KEY_INFO | Contém as informações de uma chave privada PKCS nº 8. |
CRYPT_PSOURCE_ALGORITHM | Identifica o algoritmo e (opcionalmente) o valor do rótulo para uma criptografia de chave RSAES-OAEP. |
CRYPT_RETRIEVE_AUX_INFO | Contém informações opcionais de sincronização de tempo a serem passadas para a função CryptRetrieveObjectByUrl . |
CRYPT_RSA_SSA_PSS_PARAMETERS | Contém os parâmetros para uma assinatura RSA PKCS nº 1 v2.1. |
CRYPT_RSAES_OAEP_PARAMETERS | Contém os parâmetros para uma criptografia de chave RSAES-OAEP. |
CRYPT_SEQUENCE_OF_ANY | Contém uma lista arbitrária de BLOBs codificados. |
CRYPT_SMART_CARD_ROOT_INFO | Contém o cartão inteligente e as IDs de sessão associadas a um contexto de certificado. |
CRYPT_TIME_STAMP_REQUEST_INFO | Essa estrutura é usada para carimbo de data/hora. |
CRYPT_URL_INFO | Contém informações sobre agrupamentos de URLs. |
CRYPT_X942_OTHER_INFO | Contém informações adicionais de geração de chave. |
CRYPTNET_URL_CACHE_FLUSH_INFO | Contém informações de expiração usadas pelo serviço CUC (Cryptnet URL Cache) para manter uma entrada de cache de URL. |
CRYPTNET_URL_CACHE_PRE_FETCH_INFO | Contém informações de atualização usadas pelo serviço CUC (Cryptnet URL Cache) para manter uma entrada de cache de URL. |
CRYPTNET_URL_CACHE_RESPONSE_INFO | Contém informações de resposta usadas pelo serviço CUC (Cryptnet URL Cache) para manter uma entrada de cache de URL. |
CRYPT_INTEGER_BLOB | Essa estrutura é usada para uma matriz arbitrária de bytes. |
CRYPTPROTECT_PROMPTSTRUCT | Fornece o texto de um prompt e informações sobre quando e onde esse prompt deve ser exibido ao usar as funções CryptProtectData e CryptUnprotectData . |
CRYPTUI_INITDIALOG_STRUCT | Dá suporte à estrutura CRYPTUI_VIEWCERTIFICATE_STRUCT . |
CRYPTUI_SELECTCERTIFICATE_STRUCT | Contém informações sobre a caixa de diálogo exibida pela função CryptUIDlgSelectCertificate . |
CRYPTUI_VIEWCERTIFICATE_STRUCT | Contém informações sobre um certificado a ser exibido. Ele é usado na função CryptUIDlgViewCertificate . |
CRYPTUI_VIEWSIGNERINFO_STRUCT | Contém informações para a função CryptUIDlgViewSignerInfo . |
CRYPTUI_WIZ_EXPORT_CERTCONTEXT_INFO | Contém informações que controlam a operação da função CryptUIWizExport quando um certificado é o objeto que está sendo exportado. |
CRYPTUI_WIZ_EXPORT_INFO | Contém informações que controlam a operação da função CryptUIWizExport . |
CRYPTUI_WIZ_IMPORT_SRC_INFO | Contém o assunto a ser importado para a função CryptUIWizImport . |
DHPRIVKEY_VER3 | Contém informações específicas para a chave privada específica contida no BLOB de chave. |
DHPUBKEY | Contém informações específicas para a chave pública Diffie-Hellman específica contida no BLOB de chave. |
DHPUBKEY_VER3 | Contém informações específicas para a chave pública específica contida no BLOB de chave. |
BLOBs de chave privada Diffie-Hellman versão 3 | Usado para exportar e importar informações sobre uma chave privada DH. |
BLOBs de chave pública Diffie-Hellman versão 3 | Usado para exportar e importar informações sobre uma chave pública DH. |
BLOBs de chave privada da versão 3 do DSS | Usado para exportar e importar informações sobre uma chave privada DH. |
BLOBs de chave pública da versão 3 do DSS | Usado para exportar e importar informações sobre uma chave pública DH. |
DSSPRIVKEY_VER3 | Contém informações específicas para a chave privada específica contida no BLOB de chave. |
DSSPUBKEY | Contém informações específicas para a chave pública específica contida no BLOB de chave. |
DSSPUBKEY_VER3 | Contém informações específicas para a chave pública específica contida no BLOB de chave. |
DSSSEED | Contém os valores de semente e contador que podem ser usados para verificar os primos da chave pública DSS. |
HMAC_INFO | Especifica o algoritmo de hash e as cadeias de caracteres internas e externas que devem ser usadas para calcular o hash HMAC ( Código de Autenticação de Mensagem Baseado em Hash ). |
KEYSVC_BLOB | Define um BLOB de serviço de chave. |
KEYSVC_UNICODE_STRING | Define uma cadeia de caracteres Unicode de serviço de chave. |
OCSP_BASIC_RESPONSE_ENTRY | Contém o certificado atual status para um único certificado. |
OCSP_BASIC_RESPONSE_INFO | Contém uma resposta OCSP básica, conforme especificado pelo RFC 2560. |
OCSP_BASIC_REVOKED_INFO | Contém o motivo pelo qual um certificado foi revogado. |
OCSP_BASIC_SIGNED_RESPONSE_INFO | Contém uma resposta OCSP básica com uma assinatura. |
OCSP_CERT_ID | Contém informações para identificar um certificado em uma solicitação ou resposta OCSP. |
OCSP_REQUEST_ENTRY | Contém informações sobre um único certificado em uma solicitação OCSP. |
OCSP_REQUEST_INFO | Contém informações para uma solicitação OCSP, conforme especificado pelo RFC 2560. |
OCSP_RESPONSE_INFO | Indica o êxito ou a falha da solicitação OCSP correspondente. Para solicitações bem-sucedidas, ele contém o tipo e o valor das informações de resposta. |
OCSP_SIGNATURE_INFO | Contém uma assinatura para uma solicitação ou resposta OCSP. |
OCSP_SIGNED_REQUEST_INFO | Contém informações para uma solicitação OCSP com informações de assinatura opcionais. |
PROV_ENUMALGS | Retornado por chamadas para CryptGetProvParam ou CPGetProvParam. |
PROV_ENUMALGS_EX | Retornado por chamadas para CryptGetProvParam ou CPGetProvParam. |
PUBLICKEYSTRUC | Indica o tipo BLOB de uma chave e o algoritmo que a chave usa. |
ROOT_INFO_LUID | Contém um LUID ( identificador exclusivo local ) para informações raiz de cartão inteligente criptográfico. |
RSAPUBKEY | Contém informações específicas para a chave pública específica contida no BLOB de chave. |
SCHANNEL_ALG | Contém informações de algoritmo e tamanho da chave. |
SIGNER_ATTR_AUTHCODE | Especifica atributos para uma assinatura Authenticode . |
SIGNER_BLOB_INFO | Especifica um BLOB a ser assinado. |
SIGNER_CERT | Especifica um certificado usado para assinar um documento. O certificado pode ser armazenado em um arquivo SPC ( Software Publisher Certificate ) ou em um repositório de certificados. |
SIGNER_CERT_STORE_INFO | Especifica o repositório de certificados usado para assinar um documento. |
SIGNER_CONTEXT | Contém um BLOB assinado. |
SIGNER_FILE_INFO | Especifica um arquivo a ser assinado. |
SIGNER_PROVIDER_INFO | Especifica as informações de CSP e chave privada usadas para criar uma assinatura digital. |
SIGNER_SIGNATURE_INFO | Contém informações sobre uma assinatura digital. |
SIGNER_SPC_CHAIN_INFO | Especifica um Certificado do Editor de Software (SPC) e uma cadeia de certificados usadas para assinar um documento. |
SIGNER_SUBJECT_INFO | Especifica um assunto a ser assinado. |
Estruturas de certificado comuns
As estruturas a seguir são usadas por muitas das funções de certificado.
Estrutura | Descrição |
---|---|
CERT_BIOMETRIC_DATA | Contém informações sobre dados biométricos. |
CERT_BIOMETRIC_EXT_INFO | Contém um conjunto de informações biométricas. |
CERT_CONTEXT | Contém as representações codificadas e decodificadas de um certificado. |
CERT_CRL_CONTEXT_PAIR | Contém um contexto de certificado e um contexto de CRL associado. |
CERT_DH_PARAMETERS | Contém parâmetros associados a um algoritmo de chave pública Diffie-Hellman . |
CERT_DSS_PARAMETERS | Contém parâmetros associados a um algoritmo de chave pública DSS. |
CERT_ECC_SIGNATURE | Contém os valores r e s para uma assinatura ECDSA (Algoritmo de Assinatura Digital de Curva Elíptica). |
CERT_EXTENSION | Contém as informações de extensão para um certificado, CRL ( lista de certificados revogados ) ou CTL ( lista de certificados confiáveis ). |
CERT_EXTENSIONS | Contém uma matriz de extensões. |
CERT_GENERAL_SUBTREE | Usada em CERT_NAME_CONSTRAINTS_INFO estrutura, essa estrutura fornece a identidade de um certificado que pode ser incluído ou excluído. |
CERT_HASHED_URL | Contém uma URL com hash. |
CERT_ID | Usado como um meio flexível de identificar exclusivamente um certificado. |
CERT_INFO | Contém as informações de um certificado. |
CERT_KEY_CONTEXT | Contém dados para o membro pvData de um membro Value de CERT_EXTENSION estrutura associada a uma propriedade CERT_KEY_CONTEXT_PROP_ID. |
CERT_KEYGEN_REQUEST_INFO | Contém informações armazenadas na solicitação Netscape Keygen. |
CERT_LDAP_STORE_OPENED_PARA | Usado com a função CertOpenStore quando o provedor de CERT_STORE_PROV_LDAP é especificado usando o sinalizador CERT_LDAP_STORE_OPENED_FLAG para especificar a sessão LDAP existente a ser usada para executar a consulta, bem como a cadeia de caracteres de consulta LDAP. |
CERT_LOGOTYPE_AUDIO | Contém informações sobre um tipo de logotipo de áudio. |
CERT_LOGOTYPE_AUDIO_INFO | Contém informações mais detalhadas sobre um tipo de logotipo de áudio. |
CERT_LOGOTYPE_DATA | Contém dados de tipo de logotipo. |
CERT_LOGOTYPE_DETAILS | Contém informações adicionais sobre um tipo de logotipo. |
CERT_LOGOTYPE_EXT_INFO | Contém um conjunto de informações de tipo de logotipo. |
CERT_LOGOTYPE_IMAGE | Contém informações sobre um tipo de logotipo de imagem. |
CERT_LOGOTYPE_IMAGE_INFO | Contém informações mais detalhadas sobre um tipo de logotipo de imagem. |
CERT_LOGOTYPE_INFO | Contém informações sobre dados de tipo de logotipo. |
CERT_LOGOTYPE_REFERENCE | Contém informações de referência de tipo de logotipo. |
CERT_NAME_CONSTRAINTS_INFO | Contém informações sobre certificados especificamente permitidos ou excluídos da confiança. |
CERT_NAME_INFO | Contém nomes de assunto ou emissor. As informações são representadas como uma matriz de estruturas de CERT_RDN . |
CERT_NAME_VALUE | Contém um valor de atributo RDN ( nome diferenciado relativo ). |
CERT_OTHER_LOGOTYPE_INFO | Contém informações sobre tipos de logotipo que não são predefinidos. |
CERT_PAIR | Contém um certificado e seu certificado cruzado de par. |
CERT_PHYSICAL_STORE_INFO | Contém informações sobre repositórios de certificados físicos. |
CERT_POLICY_CONSTRAINTS_INFO | Contém políticas estabelecidas para aceitar certificados como confiáveis. |
CERT_POLICY_MAPPING | Contém um mapeamento entre o domínio do emissor e os OIDs da política de domínio do assunto. |
CERT_POLICY_MAPPINGS_INFO | Fornece mapeamento entre os OIDs de política de dois domínios. |
CERT_PUBLIC_KEY_INFO | Contém uma chave pública e seu algoritmo. |
CERT_QC_STATEMENT | Representa uma única instrução em uma sequência de uma ou mais instruções para inclusão em uma extensão de instruções QC (Certificado Qualificado). |
CERT_QC_STATEMENTS_EXT_INFO | Contém uma sequência de uma ou mais instruções que compõem a extensão de instruções QC (Certificado Qualificado) para um QC. |
CERT_RDN | Contém um RDN ( nome diferenciado relativo ) que consiste em uma matriz de estruturas CERT_RDN_ATTR . |
CERT_RDN_ATTR | Contém um único atributo de um RDN ( nome diferenciado relativo ). |
CERT_REQUEST_INFO | Contém informações para uma solicitação de certificado. |
CERT_REVOCATION_CRL_INFO | Contém informações atualizadas por um manipulador de tipo de revogação crl. |
CERT_REVOCATION_PARA | Opcionalmente, essa estrutura pode ser passada para CertVerifyRevocation para ajudar a localizar o emissor do contexto a ser verificado. |
CERT_REVOCATION_STATUS | Contém informações sobre o status de revogação do certificado. |
CERT_SELECT_STRUCT | Contém critérios sobre os quais selecionar certificados apresentados em uma caixa de diálogo de seleção de certificado. Essa estrutura é usada na função CertSelectCertificate . |
CERT_SIGNED_CONTENT_INFO | Contém conteúdo codificado a ser assinado e um BLOB para manter a assinatura. |
CERT_STORE_PROV_FIND_INFO | Essa estrutura é usada por muitas das funções de retorno de chamada do provedor de repositório. |
CERT_STORE_PROV_INFO | Contém informações retornadas pelo CertDllOpenStoreProv instalado quando um repositório é aberto com CertOpenStore. |
CERT_STRONG_SIGN_PARA | Contém parâmetros usados para marcar para assinaturas fortes em certificados, CRLs, reponses OCSP e mensagens PKCS nº 7. |
CERT_STRONG_SIGN_SERIALIZED_INFO | Contém oalgoritmo de hash do algoritmo/ de assinatura e os pares decomprimento de bit do algoritmo / de chave públicaque podem ser usados para assinatura forte. |
CERT_SUBJECT_INFO_ACCESS | Esse é um sinônimo da estrutura CERT_AUTHORITY_INFO_ACCESS . |
CERT_SYSTEM_STORE_INFO | Contém informações usadas por funções que funcionam com repositórios do sistema. |
CERT_SYSTEM_STORE_RELOCATE_PARA | Contém dados a serem passados para CertOpenStore quando o parâmetro dwFlags dessa função é definido como CERT_SYSTEM_STORE_RELOCATE_FLAG. |
CERT_TEMPLATE_EXT | Essa estrutura é um modelo de certificado. |
CERT_X942_DH_PARAMETERS | Contém parâmetros associados a um algoritmo de chave pública Diffie-Hellman. |
CERT_X942_DH_VALIDATION_PARAMS | Opcionalmente, essa estrutura é apontada por um membro da estrutura CERT_X942_DH_PARAMETERS e contém informações adicionais de semente. |
CMC_ADD_ATTRIBUTES_INFO | Contém atributos de certificado a serem adicionados a um certificado. |
CMC_ADD_EXTENSIONS_INFO | Contém atributos de controle de extensão de certificado a serem adicionados a um certificado. |
CMC_DATA_INFO | Essa estrutura fornece um meio de comunicar diferentes partes de informações marcadas. |
CMC_PEND_INFO | Essa estrutura é um possível membro de uma estrutura de CMC_STATUS_INFO . |
CMC_RESPONSE_INFO | Essa estrutura fornece um meio de comunicar diferentes partes de informações marcadas. |
CMC_STATUS_INFO | Contém status informações sobre mensagens de gerenciamento de certificados por CMS. |
CMC_TAGGED_ATTRIBUTE | Essa estrutura é usada nas estruturas CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_CERT_REQUEST | Essa estrutura é usada na estrutura CMC_TAGGED_REQUEST . |
CMC_TAGGED_CONTENT_INFO | Essa estrutura é usada nas estruturas CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_OTHER_MSG | Essa estrutura é usada nas estruturas CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_REQUEST | Essa estrutura é usada nas estruturas CMC_DATA_INFO para solicitar um certificado. |
CRL_CONTEXT | Contém as representações codificadas e decodificadas de uma CRL. |
CRL_ENTRY | Contém informações sobre um único certificado revogado. Ele é membro de uma estrutura CRL_INFO . |
CRL_INFO | Contém as informações de uma CRL (lista de revogação de certificados). |
CRL_ISSUING_DIST_POINT | Contém informações sobre os tipos de certificados listados em uma CRL. |
CROSS_CERT_DIST_POINTS_INFO | Essa estrutura fornece informações usadas para atualizar certificados cruzados dinâmicos. |
CTL_ANY_SUBJECT_INFO | Contém um SubjectAlgorithm a ser correspondido na CTL e no SubjectIdentifier a ser correspondido em uma das entradas CTL em chamadas para CertFindSubjectInCTL. |
CTL_CONTEXT | Contém as representações codificadas e decodificadas de uma CTL. |
CTL_ENTRY | Essa estrutura é um elemento de uma CTL ( lista de confiança de certificado ). |
CTL_FIND_SUBJECT_PARA | Contém dados usados por CertFindCTLInStore com um dwFindType de CTL_FIND_SUBJECT para localizar uma CTL ( lista de certificados confiáveis ). |
CTL_FIND_USAGE_PARA | Essa estrutura é membro da estrutura CTL_FIND_SUBJECT_PARA e é usada por CertFindCTLInStore. |
CTL_INFO | Contém as informações armazenadas em uma CTL ( lista de confiança de certificado ). |
CTL_MODIFY_REQUEST | Contém uma solicitação para modificar uma lista de confiança do certificado. Essa estrutura é usada na função CertModifyCertificatesToTrust . |
CTL_USAGE | Contém uma matriz de OIDs (Identificadores de Objeto) para extensões de CTL ( lista de confiança de certificado ). |
CTL_VERIFY_USAGE_PARA | Contém parâmetros usados por CertVerifyCTLUsage para estabelecer a validade do uso de uma CTL. |
CTL_VERIFY_USAGE_STATUS | Contém informações sobre uma CTL ( lista de confiança de certificado ) retornada por CertVerifyCTLUsage. |
Estruturas de extensão de certificado X.509
As estruturas a seguir estão associadas a estruturas de CERT_EXTENSION X.509.
Estrutura | Descrição |
---|---|
CERT_ACCESS_DESCRIPTION | Essa estrutura é membro de uma estrutura CERT_AUTHORITY_INFO_ACCESS . |
CERT_ALT_NAME_ENTRY | Contém um nome alternativo em uma de uma variedade de formulários de nome. |
CERT_ALT_NAME_INFO | Usado em extensões de codificação e decodificação para certificados de entidade ou emissor, CRLs ( lista de certificados revogados ) e CTLs ( lista de confiança do certificado ). |
CERT_AUTHORITY_INFO_ACCESS | Representa o acesso às informações de autoridade e as extensões de certificado de acesso de entidade e especifica como acessar informações e serviços adicionais para o assunto ou o emissor desse certificado. |
CERT_AUTHORITY_KEY_ID_INFO | Identifica a chave usada para assinar um certificado ou CRL. |
CERT_AUTHORITY_KEY_ID2_INFO | Identifica a chave usada para assinar um certificado ou CRL. Ele difere da estrutura de CERT_AUTHORITY_KEY_ID_INFO , pois o emissor do certificado é um CERT_ALT_NAME_INFO em vez de um CERT_NAME_BLOB. |
CERT_BASIC_CONSTRAINTS_INFO | Contém informações que indicam se a entidade certificada pode atuar como uma AC, uma entidade final ou ambas. |
CERT_BASIC_CONSTRAINTS2_INFO | Contém informações que indicam se a entidade certificada pode atuar como uma AC ou uma entidade final. |
CERT_KEY_ATTRIBUTES_INFO | Contém informações adicionais opcionais sobre a chave pública que está sendo certificada. |
CERT_KEY_USAGE_RESTRICTION_INFO | Contém restrições impostas ao uso da chave pública de um certificado. |
CERT_POLICIES_INFO | Contém uma matriz de CERT_POLICY_INFO. |
CERT_POLICY_ID | Contém uma lista de políticas de certificado que o certificado dá suporte expressamente, juntamente com informações de qualificador opcionais relativas a essas políticas. |
CERT_POLICY_INFO | Contém um OID (identificador de objeto) que especifica uma política e uma matriz opcional de qualificadores de política. |
CERT_POLICY_QUALIFIER_INFO | Contém um OID (identificador de objeto) que especifica as informações complementares específicas do qualificador e do qualificador. |
CERT_PRIVATE_KEY_VALIDITY | Indica um período de tempo válido para a chave privada correspondente à chave pública de um certificado. |
CRL_DIST_POINT | Identifica um único ponto de distribuição crl que um usuário de certificado pode referenciar para determinar se os certificados foram revogados. |
CRL_DIST_POINT_NAME | Identifica um local do qual a CRL pode ser obtida. |
CRL_DIST_POINTS_INFO | Contém uma lista de pontos de distribuição de CRL que um usuário de certificado pode referenciar para determinar se o certificado foi revogado. |
Essas estruturas podem ser codificadas no membro Value de uma estrutura CERT_EXTENSION usando as funções CryptEncodeObject e CryptEncodeObjectEx . Eles são criados e retornados pelas funções CryptDecodeObject e CryptDecodeObjectEx quando o membro Value de uma estrutura de CERT_EXTENSION é decodificado.
A estrutura codificada ou criada depende do membro da cadeia de caracteres pszObjId da estrutura CERT_EXTENSION .
Constantes predefinidas de extensão e OIDs atuais, juntamente com a estrutura associada a cada uma, são mostradas na tabela a seguir.
Observação
A constante predefinida (coluna 1) e seu OID correspondente (coluna 2) podem ser usados de forma intercambiável.
Constante predefinida | OID (identificador de objeto) | Estrutura de dados |
---|---|---|
X509_AUTHORITY_INFO_ACCESS | szOID_AUTHORITY_INFO_ACCESS | CERT_AUTHORITY_INFO_ACCESS |
X509_AUTHORITY_KEY_ID | szOID_AUTHORITY_KEY_IDENTIFIER | CERT_AUTHORITY_KEY_ID_INFO |
X509_ALTERNATE_NAME | szOID_SUBJECT_ALT_NAME – Ou – szOID_ISSUER_ALT_NAME |
CERT_ALT_NAME_INFO |
X509_BASIC_CONSTRAINTS | szOID_BASIC_CONSTRAINTS | CERT_BASIC_CONSTRAINTS_INFO |
X509_BASIC_CONSTRAINTS2 | szOID_BASIC_CONSTRAINTS2 | CERT_BASIC_CONSTRAINTS2_INFO |
X509_CERT_POLICIES | szOID_CERT_POLICIES | CERT_POLICIES_INFO |
X509_KEY_ATTRIBUTES | szOID_KEY_ATTRIBUTES | CERT_KEY_ATTRIBUTES_INFO |
X509_KEY_USAGE | szOID_KEY_USAGE | CRYPT_BIT_BLOB |
X509_KEY_USAGE_RESTRICTION | szOID_KEY_USAGE_RESTRICTION | CERT_KEY_USAGE_RESTRICTION_INFO |
Nenhum | szOID_POLICY_MAPPINGS | Não implementado |
Nenhum | szOID_SUBJECT_DIR_ATTRS | Não implementado |
Estruturas de mensagens
As estruturas a seguir são usadas pelas funções de mensagem criptográfica.
Estrutura | Descrição |
---|---|
CMSG_CMS_RECIPIENT_INFO | Essa estrutura é usada com a função CryptMsgGetParam para obter informações sobre um destinatário de mensagem de envelope de transporte de chave, contrato de chave ou lista de emails. |
CMSG_CMS_SIGNER_INFO | Essa estrutura contém o conteúdo do SignerInfo definido em mensagens assinadas ou assinadas e envolvidas. |
CMSG_CNG_CONTENT_DECRYPT_INFO | Contém todas as informações relevantes passadas entre as funções instaláveis CryptMsgControl e OID para a importação e descriptografia de uma CEK (chave de criptografia: CNG) de última geração. |
CMSG_CONTENT_ENCRYPT_INFO | Contém informações compartilhadas entre as funções instaláveis PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY, PFN_CMSG_EXPORT_KEY_TRANS, PFN_CMSG_EXPORT_KEY_AGREE e OID (identificador de objeto PFN_CMSG_EXPORT_MAIL_LIST) usadas para a criptografia e exportação de uma chave de criptografia de conteúdo. |
CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA | Essa estrutura é usada para adicionar um atributo não autenticado a um signatário de uma mensagem assinada. |
CMSG_CTRL_DECRYPT_PARA | Essa estrutura contém informações usadas para descriptografar uma mensagem em envelope para um destinatário de transporte de chave. Essa estrutura será passada para CryptMsgControl se o parâmetro dwCtrlType for CMSG_CTRL_DECRYPT. |
CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA | Essa estrutura é usada para excluir um atributo não autenticado de um signatário de uma mensagem assinada. |
CMSG_CTRL_KEY_AGREE_DECRYPT_PARA | Essa estrutura contém informações sobre um destinatário de contrato de chave. |
CMSG_CTRL_KEY_TRANS_DECRYPT_PARA | Essa estrutura que contém informações sobre um destinatário de mensagem de transporte de chave. |
CMSG_CTRL_MAIL_LIST_DECRYPT_PARA | Essa estrutura contém informações sobre um destinatário de mensagem de lista de emails. |
CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA | Essa estrutura contém informações usadas para verificar uma assinatura de mensagem. Ele contém o índice do signatário e a chave pública do signatário. A chave pública do signatário pode ser a estrutura CERT_PUBLIC_KEY_INFOdo signatário, o contexto do certificado ou o contexto da cadeia. |
CMSG_ENVELOPED_ENCODE_INFO | Essa estrutura contém informações necessárias para codificar uma mensagem em envelope. Ele será passado para CryptMsgOpenToEncode se dwMsgType for CMSG_ENVELOPED. |
CMSG_ENVELOPED_HASHED_INFO | Essa estrutura é usada com mensagens com hash . Ele será passado para CryptMsgOpenToEncode se dwMsgType for CMSG_ENVELOPED. |
CMSG_KEY_AGREE_ENCRYPT_INFO | Contém informações de criptografia aplicáveis a todos os destinatários do contrato de chave de uma mensagem enveloped. |
CMSG_KEY_AGREE_KEY_ENCRYPT_INFO | Contém a chave criptografada para um destinatário de um contrato de chave de uma mensagem enveloped. |
CMSG_KEY_TRANS_ENCRYPT_INFO | Contém informações de criptografia para um destinatário de transporte chave de dados enveloped. |
CMSG_MAIL_LIST_ENCRYPT_INFO | Contém informações de criptografia para um destinatário de lista de endereçamento de dados enveloped. |
CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO | Essa estrutura contém informações sobre um destinatário de mensagens usando o gerenciamento de chaves de contrato de chave. |
CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO | Essa estrutura contém informações de transporte de chave codificadas para um destinatário da mensagem. |
CMSG_KEY_TRANS_RECIPIENT_INFO | Essa estrutura contém informações usadas em algoritmos de transporte de chave. |
CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO | Essa estrutura é usada com chaves simétricas distribuídas anteriormente para descriptografar a KEK (chave de criptografia de chave de conteúdo). |
CMSG_MAIL_LIST_RECIPIENT_INFO | Essa estrutura contém informações usadas para KEK (chaves de criptografia de chave ) simétricas distribuídas anteriormente. |
CMSG_RC2_AUX_INFO | Essa estrutura contém o comprimento do bit da chave para algoritmos de criptografia RC2. O membro pvEncryptionAuxInfo no CMSG_ENVELOPED_ENCODE_INFOpode ser definido para apontar para uma instância dessa estrutura. |
CMSG_RC4_AUX_INFO | Essa estrutura contém o comprimento do bit da chave para algoritmos de criptografia RC4. O membro pvEncryptionAuxInfo no CMSG_ENVELOPED_ENCODE_INFOpode ser definido para apontar para uma instância dessa estrutura. |
CMSG_RECIPIENT_ENCODE_INFO | Essa estrutura contém informações do tipo de gerenciamento de chave de criptografia de conteúdo de um destinatário de mensagem. |
CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO | Essa estrutura contém informações sobre um receptor de mensagem usado para descriptografar a chave de sessão necessária para descriptografar o conteúdo da mensagem. Essa estrutura é usada com mensagens de baixo nível cms usando qualquer um dos métodos de gerenciamento de chave. |
CMSG_RECIPIENT_ENCRYPTED_KEY_INFO | Essa estrutura contém informações usadas para um destinatário de contrato de chave individual. |
CMSG_SIGNED_ENCODE_INFO | Essa estrutura contém informações a serem passadas para CryptMsgOpenToEncode se dwMsgType for CMSG_SIGNED. |
CMSG_SIGNER_ENCODE_INFO | Essa estrutura contém informações do signatário. Ele é passado para CryptMsgCountersign, CryptMsgCountersignEncoded e, opcionalmente, para CryptMsgOpenToEncode como membro da estrutura CMSG_SIGNED_ENCODE_INFO , se o parâmetro dwMsgType for CMSG_SIGNED. |
CMSG_SIGNER_INFO | Essa estrutura contém o conteúdo do PKCS nº 7 definido SignerInfo em mensagens assinadas. |
CMSG_SP3_COMPATIBLE_AUX_INFO | Essa estrutura contém informações necessárias para criptografia compatível com SP3. |
CMSG_STREAM_INFO | Essa estrutura é usada para habilitar o processamento de dados de fluxo em vez de processamento de bloco único. O processamento de fluxo é usado com mais frequência ao processar mensagens grandes. As mensagens de processo de fluxo podem ser originadas de qualquer fonte serializada, como um arquivo em um disco rígido, um servidor ou uma ROM de CD. |
CRYPT_DECRYPT_MESSAGE_PARA | Contém informações para descriptografar mensagens. |
CRYPT_ENCRYPT_MESSAGE_PARA | Contém informações usadas para criptografar mensagens. |
CRYPT_HASH_MESSAGE_PARA | Contém dados para mensagens de hash . |
CRYPT_SIGN_MESSAGE_PARA | Contém informações para assinar mensagens usando um contexto de certificado de autenticação especificado . |
CRYPT_VERIFY_MESSAGE_PARA | Contém informações necessárias para verificar uma mensagem assinada. |
Estruturas de suporte do OID
As estruturas a seguir são usadas pelas funções de suporte do OID.
Estrutura | Descrição |
---|---|
CRYPT_OID_FUNC_ENTRY | Contém um OID ( identificador de objeto ) e um ponteiro para sua função relacionada. Ele é usado com CryptInstallOIDFunctionAddress |
CRYPT_OID_INFO | Contém informações sobre um OID ( identificador de objeto ). |
CRYPT_RC2_CBC_PARAMETERS | Contém informações usadas com criptografia szOID_RSA_RC2CBC. |
CRYPT_SMIME_CAPABILITIES | Contém uma matriz priorizada de recursos com suporte. |
CRYPT_SMIME_CAPABILITY | Especifica uma única funcionalidade e seus parâmetros associados. |
Estruturas de cadeia de certificados
As estruturas a seguir são usadas na criação de cadeias de certificados usadas para estabelecer confiança em um certificado.
Estrutura | Descrição |
---|---|
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA | Contém informações de política usadas na verificação de cadeias de certificados para arquivos. |
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS | Contém informações adicionais da política Authenticode para verificação em cadeia de arquivos. |
AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA | Contém informações de política de carimbo de data/hora que podem ser usadas na verificação de arquivos na cadeia de certificados. |
CERT_CHAIN_CONTEXT | Contém uma matriz de cadeias de certificados simples e uma estrutura de status de confiança que indica dados de validade resumida em todas as cadeias simples conectadas. |
CERT_CHAIN_ELEMENT | Essa estrutura é um único elemento em uma cadeia de certificados simples. |
CERT_CHAIN_ENGINE_CONFIG | Define parâmetros para criar um mecanismo de cadeia de certificados não padrão. |
CERT_CHAIN_FIND_BY_ISSUER_PARA | Contém informações usadas no CertFindChainInStore para criar cadeias de certificados. |
CERT_CHAIN_PARA | Estabelece os critérios de pesquisa e correspondência a serem usados na criação de uma cadeia de certificados. |
CERT_CHAIN_POLICY_PARA | Contém informações usadas em CertVerifyCertificateChainPolicy para estabelecer critérios de política para a verificação de cadeias de certificados. |
CERT_CHAIN_POLICY_STATUS | Contém a cadeia de certificados status informações retornadas por CertVerifyCertificateChainPolicy da verificação de cadeias de certificados. |
CERT_REVOCATION_INFO | Indica o status de revogação de um certificado em um CERT_CHAIN_ELEMENT. |
CERT_SELECT_CHAIN_PARA | Contém os parâmetros usados para criar e selecionar cadeias. |
CERT_SIMPLE_CHAIN | Contém uma matriz de elementos de cadeia e uma relação de confiança resumida status para a cadeia que a matriz representa. |
CERT_SELECTUI_INPUT | Usada pela função CertSelectionGetSerializedBlob para serializar os certificados contidos em um repositório ou uma matriz de cadeias de certificados. O BLOB serializado retornado pode ser passado para a função CredUIPromptForWindowsCredentials . |
CERT_TRUST_LIST_INFO | Indica o uso válido de uma CTL. |
CERT_TRUST_STATUS | Contém informações de confiança sobre um certificado em uma cadeia de certificados, informações de confiança resumida sobre uma cadeia simples de certificados ou informações resumidas sobre uma matriz de cadeias simples. |
CERT_USAGE_MATCH | Fornece parâmetros para localizar certificados do emissor usados para criar uma cadeia de certificados. |
CTL_USAGE_MATCH | Fornece parâmetros para localizar CTL ( listas de confiança de certificado ) usadas para criar uma cadeia de certificados. |
SSL_EXTRA_CERT_CHAIN_POLICY_PARA | Contém informações de política usadas na verificação de cadeias de certificados de cliente/servidor SSL ( Secure Sockets Layer ). |
Estruturas CSP
As estruturas a seguir são usadas com funções CSP ( provedor de serviços criptográficos ).
Estrutura | Descrição |
---|---|
BLOBHEADER | Indica o tipo BLOB de uma chave e o algoritmo que a chave usa. |
VTableProvStruc | Contém ponteiros para funções de retorno de chamada que podem ser usadas por funções CSP. |
PLAINTEXTKEYBLOB | Contém informações de cabeçalho de parâmetro para uma chave de texto não criptografado. |
Estruturas WinTrust
As estruturas a seguir são usadas com a função WinVerifyTrust .
Estrutura | Descrição |
---|---|
CRYPT_PROVIDER_DEFUSAGE | Usada pela função WintrustGetDefaultForUsage para recuperar informações de retorno de chamada para o uso padrão de um provedor. |
CRYPT_PROVIDER_REGDEFUSAGE | Usada pela função WintrustAddDefaultForUsage para registrar informações de retorno de chamada sobre o uso padrão de um provedor. |
SPC_INDIRECT_DATA_CONTENT | Armazena o resumo e outros atributos de um arquivo assinado por Authenticode. |
WINTRUST_BLOB_INFO | Usado ao chamar WinVerifyTrust para verificar um BLOB de memória. |
WINTRUST_CATALOG_INFO | Usado ao chamar WinVerifyTrust para verificar um membro de um catálogo da Microsoft. |
WINTRUST_CERT_INFO | Usado ao chamar WinVerifyTrust para verificar um CERT_CONTEXT. |
WINTRUST_DATA | Usado ao chamar WinVerifyTrust para passar as informações necessárias para os provedores de confiança |
WINTRUST_FILE_INFO | Usado ao chamar WinVerifyTrust para verificar um arquivo individual. |
WINTRUST_SGNR_INFO | Usado ao chamar WinVerifyTrust para verificar uma estrutura de CMSG_SIGNER_INFO . |
Estruturas SIP
As estruturas a seguir são usadas pelo pacote de interface do assunto (funções SIP).
Estrutura | Descrição |
---|---|
SIP_ADD_NEWPROVIDER | Define um SIP. |
SIP_CAP_SET | Define os recursos de um SIP. |
SIP_DISPATCH_INFO | Contém um conjunto de ponteiros para funções SIP. |
SIP_INDIRECT_DATA | Contém um resumo das informações do assunto com hash. |
SIP_SUBJECTINFO | Especifica informações de assunto SIP. |