Compartilhar via


SignedCms.CheckSignature Método

Definição

Verifica as assinaturas digitais na mensagem assinada CMS/PKCS #7.

Sobrecargas

CheckSignature(Boolean)

O método CheckSignature(Boolean) verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada e, opcionalmente, valida os certificados do signatário.

CheckSignature(X509Certificate2Collection, Boolean)

O método CheckSignature(X509Certificate2Collection, Boolean) verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada usando a coleção de certificados especificada e, opcionalmente, valida os certificados do signatário.

CheckSignature(Boolean)

Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs

O método CheckSignature(Boolean) verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada e, opcionalmente, valida os certificados do signatário.

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 valor Boolean que especifica se apenas as assinaturas digitais são verificadas sem os certificados dos signatários serem validados.

Se verifySignatureOnly for true, somente as assinaturas digitais serão verificadas. Se for false, as assinaturas digitais serão verificadas, os certificados de signatários serão validados e as finalidades dos certificados serão validadas. As finalidades de um certificado serão consideradas válidas se o certificado não tiver nenhum uso de chave ou se o uso de chave der suporte a assinaturas digitais ou não repúdio.

Exceções

Uma referência nula foi passada para um método que não a aceita como um argumento válido.

Não foi possível concluir uma operação de criptografia.

Uma chamada de método era inválida para o estado atual do objeto.

Exemplos

O exemplo a seguir mostra o posicionamento de CheckSignature(Boolean) entre as etapas necessárias para verificar as assinaturas em uma SignedCms mensagem. Neste exemplo, o conteúdo da mensagem não é desanexado. 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 a seguir mostra o posicionamento de CheckSignature(Boolean) entre as etapas necessárias para verificar as assinaturas em uma SignedCms mensagem. Neste exemplo, o conteúdo da mensagem é desanexado, portanto, 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)

Comentários

Esse método verifica todas as assinaturas, incluindo contraassinaturas, na mensagem CMS/PKCS nº 7. Se houver atributos assinados incluídos na mensagem, esses atributos também serão verificados. Se a opção for escolhida para validar certificados, toda a parte incluída da cadeia de certificados será validada.

Esse método gerará uma exceção se a verificação de uma assinatura digital falhar ou quaisquer requisitos de validação não forem atendidos.

Aplica-se a

CheckSignature(X509Certificate2Collection, Boolean)

Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs
Origem:
SignedCms.cs

O método CheckSignature(X509Certificate2Collection, Boolean) verifica as assinaturas digitais na mensagem CMS/PKCS #7 assinada usando a coleção de certificados especificada e, opcionalmente, valida os certificados do signatário.

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 objeto X509Certificate2Collection que pode ser usado para validar a cadeia de certificados. Se nenhum certificado adicional precisar ser usado para validar a cadeia de certificados, use CheckSignature(Boolean) em vez de CheckSignature(X509Certificate2Collection, Boolean).

verifySignatureOnly
Boolean

Um valor Boolean que especifica se apenas as assinaturas digitais são verificadas sem os certificados dos signatários serem validados.

Se verifySignatureOnly for true, somente as assinaturas digitais serão verificadas. Se for false, as assinaturas digitais serão verificadas, os certificados de signatários serão validados e as finalidades dos certificados serão validadas. As finalidades de um certificado serão consideradas válidas se o certificado não tiver nenhum uso de chave ou se o uso de chave der suporte a assinaturas digitais ou não repúdio.

Exceções

Uma referência nula foi passada para um método que não a aceita como um argumento válido.

Não foi possível concluir uma operação de criptografia.

Uma chamada de método era inválida para o estado atual do objeto.

Comentários

Esse método verifica todas as assinaturas, incluindo contraassinaturas, na mensagem CMS/PKCS nº 7. Se houver atributos assinados incluídos na mensagem, esses atributos também serão verificados. Se a opção for escolhida para validar certificados, toda a parte incluída da cadeia de certificados será validada.

Esse método gerará uma exceção se a verificação de uma assinatura digital falhar ou quaisquer requisitos de validação não forem atendidos.

Aplica-se a