SignedCms.ComputeSignature Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée une signature et l’ajoute au message CMS/PKCS #7.
Surcharges
ComputeSignature(CmsSigner, Boolean) |
Crée une signature en utilisant le signataire spécifié, puis l'ajoute au message CMS/PKCS #7. |
ComputeSignature() |
Crée une signature et l’ajoute au message CMS/PKCS #7. |
ComputeSignature(CmsSigner) |
Crée une signature en utilisant le signataire spécifié, puis l'ajoute au message CMS/PKCS #7. |
ComputeSignature(CmsSigner, Boolean)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crée une signature en utilisant le signataire spécifié, puis l'ajoute au message CMS/PKCS #7.
public:
void ComputeSignature(System::Security::Cryptography::Pkcs::CmsSigner ^ signer, bool silent);
public void ComputeSignature (System.Security.Cryptography.Pkcs.CmsSigner signer, bool silent);
member this.ComputeSignature : System.Security.Cryptography.Pkcs.CmsSigner * bool -> unit
Public Sub ComputeSignature (signer As CmsSigner, silent As Boolean)
Paramètres
- silent
- Boolean
.NET Core et .NET 5+ uniquement : true
pour demander des clés d’ouverture avec des invites de code confidentiel désactivées, lorsqu’elles sont prises en charge ; sinon, false
. Dans .NET Framework, ce paramètre n'est pas utilisé et une invite de code PIN est toujours affichée, si nécessaire.
Exceptions
signer
a la valeur null
.
Une opération de chiffrement n'a pas pu être terminée.
.NET Framework uniquement : Aucun certificat de signature n’a été spécifié.
.NET Core et .NET 5+ uniquement : aucun certificat de signature n’est spécifié.
Remarques
.NET Core uniquement : le silent
paramètre n’a aucun effet si la CmsSigner.PrivateKey valeur n’est pas null. La valeur fournie détermine si le calcul de la signature affiche ou non une invite de code confidentiel. Même lorsque la propriété a la PrivateKey valeur null et que le paramètre a la silent
true
valeur , certaines combinaisons d’options du système d’exploitation et du signataire peuvent toujours entraîner une invite de code confidentiel.
Les autorisations suivantes sont requises pour afficher l’interface utilisateur sur .NET Framework :
Les autorisations suivantes sont requises pour accéder à la clé de signature sur .NET Framework :
S’applique à
ComputeSignature()
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crée une signature et l’ajoute au message CMS/PKCS #7.
public:
void ComputeSignature();
public void ComputeSignature ();
member this.ComputeSignature : unit -> unit
Public Sub ComputeSignature ()
Exceptions
.NET Framework (toutes versions) et .NET Core 3.0 et versions ultérieures : Le certificat du destinataire n’est pas spécifié.
.NET Core 2.2 et versions antérieures : Aucun certificat de signataire n’a été fourni.
Remarques
Cette méthode réussit si SubjectIdentifierType.NoSignature a été fourni comme argument de l’une signerIdentifierType
SignedCms des surcharges de constructeur. Sinon, elle lève une exception.
Les autorisations suivantes sont requises pour accéder à la clé de signature sur .NET Framework :
S’applique à
ComputeSignature(CmsSigner)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crée une signature en utilisant le signataire spécifié, puis l'ajoute au message CMS/PKCS #7.
public:
void ComputeSignature(System::Security::Cryptography::Pkcs::CmsSigner ^ signer);
public void ComputeSignature (System.Security.Cryptography.Pkcs.CmsSigner signer);
member this.ComputeSignature : System.Security.Cryptography.Pkcs.CmsSigner -> unit
Public Sub ComputeSignature (signer As CmsSigner)
Paramètres
Exceptions
Une référence null a été passée à une méthode pour laquelle cet argument n'est pas valide.
Une opération de chiffrement n'a pas pu être terminée.
Exemples
L’exemple suivant montre les étapes de calcul d’une signature sur un SignedCms message dont le contenu du message n’est pas détaché. Dans ce cas, le contenu du message est inclus dans le SignedCms message.
// The dataToSign byte array holds the data to be signed.
ContentInfo contentInfo = new ContentInfo(dataToSign);
// Create a new, nondetached SignedCms message.
SignedCms signedCms = new SignedCms(contentInfo);
// Sign the message.
signedCms.ComputeSignature();
// Encode the message.
byte[] myCmsMessage = signedCms.Encode();
// The signed CMS/PKCS #7 message is ready to send.
// The original content is included in this byte array.
' The dataToSign byte array holds the data to be signed.
Dim contentInfo As New ContentInfo(dataToSign)
' Create a new, nondetached SignedCms message.
Dim signedCms As New SignedCms(contentInfo)
' Sign the message.
signedCms.ComputeSignature()
' Encode the message.
Dim myCmsMessage As Byte() = signedCms.Encode()
' The signed CMS/PKCS #7 message is ready to send.
' The original content is included in this byte array.
L’exemple suivant montre les étapes de calcul d’une signature sur un SignedCms message dont le contenu est détaché. Dans ce cas, le contenu du message doit être vérifié indépendamment du SignedCms message.
// The dataToSign byte array holds the data to be signed.
ContentInfo contentInfo = new ContentInfo(dataToSign);
// Create a new, detached SignedCms message.
SignedCms signedCms = new SignedCms(contentInfo, true);
// Sign the message.
signedCms.ComputeSignature();
// Encode the message.
byte[] myCmsMessage = signedCms.Encode();
// The signed CMS/PKCS #7 message is ready to send.
// The original content is not included in this byte array.
' The dataToSign byte array holds the data to be signed.
Dim contentInfo As New ContentInfo(dataToSign)
' Create a new, detached SignedCms message.
Dim signedCms As New SignedCms(contentInfo, True)
' Sign the message.
signedCms.ComputeSignature()
' Encode the message.
Dim myCmsMessage As Byte() = signedCms.Encode()
' The signed CMS/PKCS #7 message is ready to send.
' The original content is not included in this byte array.
Remarques
Les autorisations suivantes sont requises pour accéder à la clé de signature sur .NET Framework :