SignedCms.CheckSignature Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada.
Sobrecargas
| Name | Description |
|---|---|
| CheckSignature(Boolean) |
O CheckSignature(Boolean) método verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada e, opcionalmente, valida os certificados dos signatários. |
| CheckSignature(X509Certificate2Collection, Boolean) |
O CheckSignature(X509Certificate2Collection, Boolean) método verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada utilizando a coleção especificada de certificados e, opcionalmente, valida os certificados dos signatários. |
CheckSignature(Boolean)
O CheckSignature(Boolean) método verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada e, opcionalmente, valida os certificados dos signatários.
public:
void CheckSignature(bool verifySignatureOnly);
public void CheckSignature(bool verifySignatureOnly);
member this.CheckSignature : bool -> unit
Public Sub CheckSignature (verifySignatureOnly As Boolean)
Parâmetros
- verifySignatureOnly
- Boolean
Um Boolean valor que especifica se apenas as assinaturas digitais são verificadas sem que os certificados dos signatários sejam validados.
Se verifySignatureOnly for true, apenas as assinaturas digitais são verificadas. Se for false, as assinaturas digitais são verificadas, os certificados dos signatários são validados e os propósitos dos certificados são validados. Os propósitos de um certificado são considerados válidos se o certificado não tiver uso de chave ou se o uso de chave suportar assinaturas digitais ou não repudiação.
Exceções
Uma referência nula foi passada a um método que não a aceita como argumento válido.
Uma operação criptográfica não pôde ser concluída.
Uma chamada de método era inválida para o estado atual do objeto.
Exemplos
O exemplo seguinte mostra a colocação de CheckSignature(Boolean) entre os passos necessários para verificar as assinaturas numa SignedCms mensagem. Neste exemplo, o conteúdo da mensagem não está separado. O conteúdo da mensagem está incluído na SignedCms mensagem.
// Create a new, nondetached SignedCms message.
SignedCms signedCms = new SignedCms();
// encodedMessage is the encoded message received from
// the sender.
signedCms.Decode(encodedMessage);
// Verify the signature without validating the
// certificate.
signedCms.CheckSignature(true);
' Create a new, nondetached SignedCms message.
Dim signedCms As New SignedCms()
' encodedMessage is the encoded message received from
' the sender.
signedCms.Decode(encodedMessage)
' Verify the signature without validating the
' certificate.
signedCms.CheckSignature(True)
O exemplo seguinte mostra a colocação de CheckSignature(Boolean) entre os passos necessários para verificar as assinaturas numa SignedCms mensagem. Neste exemplo, o conteúdo da mensagem é destacado, pelo que o conteúdo da mensagem deve ser verificado independentemente da SignedCms mensagem.
// Create a ContentInfo object from the inner content obtained
// independently from encodedMessage.
ContentInfo contentInfo = new ContentInfo(innerContent);
// Create a new, detached SignedCms message.
SignedCms signedCms = new SignedCms(contentInfo, true);
// encodedMessage is the encoded message received from
// the sender.
signedCms.Decode(encodedMessage);
// Verify the signature without validating the
// certificate.
signedCms.CheckSignature(true);
' Create a ContentInfo object from the inner content obtained
' independently from encodedMessage.
Dim contentInfo As New ContentInfo(innerContent)
' Create a new, detached SignedCms message.
Dim signedCms As New SignedCms(contentInfo, True)
' encodedMessage is the encoded message received from
' the sender.
signedCms.Decode(encodedMessage)
' Verify the signature without validating the
' certificate.
signedCms.CheckSignature(True)
Observações
Este método verifica todas as assinaturas, incluindo contraassinaturas, na mensagem CMS/PKCS #7. Se houver atributos assinados incluídos na mensagem, esses atributos também são verificados. Se a opção for escolhida para validar certificados, toda a parte incluída da cadeia de certificados é validada.
Este método cria uma exceção se a verificação de uma assinatura digital falhar ou se quaisquer requisitos de validação não forem cumpridos.
Aplica-se a
CheckSignature(X509Certificate2Collection, Boolean)
O CheckSignature(X509Certificate2Collection, Boolean) método verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada utilizando a coleção especificada de certificados e, opcionalmente, valida os certificados dos signatários.
public:
void CheckSignature(System::Security::Cryptography::X509Certificates::X509Certificate2Collection ^ extraStore, bool verifySignatureOnly);
public void CheckSignature(System.Security.Cryptography.X509Certificates.X509Certificate2Collection extraStore, bool verifySignatureOnly);
member this.CheckSignature : System.Security.Cryptography.X509Certificates.X509Certificate2Collection * bool -> unit
Public Sub CheckSignature (extraStore As X509Certificate2Collection, verifySignatureOnly As Boolean)
Parâmetros
- extraStore
- X509Certificate2Collection
Um X509Certificate2Collection objeto que pode ser usado para validar a cadeia de certificados. Se não forem usados certificados adicionais para validar a cadeia de certificados, use CheckSignature(Boolean) em vez de CheckSignature(X509Certificate2Collection, Boolean).
- verifySignatureOnly
- Boolean
Um Boolean valor que especifica se apenas as assinaturas digitais são verificadas sem que os certificados dos signatários sejam validados.
Se verifySignatureOnly for true, apenas as assinaturas digitais são verificadas. Se for false, as assinaturas digitais são verificadas, os certificados dos signatários são validados e os propósitos dos certificados são validados. Os propósitos de um certificado são considerados válidos se o certificado não tiver uso de chave ou se o uso de chave suportar assinaturas digitais ou não repudiação.
Exceções
Uma referência nula foi passada a um método que não a aceita como argumento válido.
Uma operação criptográfica não pôde ser concluída.
Uma chamada de método era inválida para o estado atual do objeto.
Observações
Este método verifica todas as assinaturas, incluindo contraassinaturas, na mensagem CMS/PKCS #7. Se houver atributos assinados incluídos na mensagem, esses atributos também são verificados. Se a opção for escolhida para validar certificados, toda a parte incluída da cadeia de certificados é validada.
Este método cria uma exceção se a verificação de uma assinatura digital falhar ou se quaisquer requisitos de validação não forem cumpridos.