SignedCms.ComputeSignature Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea una firma e aggiunge la firma al messaggio CMS/PKCS #7.
Overload
ComputeSignature(CmsSigner, Boolean) |
Crea una firma utilizzando il firmatario specificato e aggiunge la firma al messaggio CMS/PKCS #7. |
ComputeSignature() |
Crea una firma e aggiunge la firma al messaggio CMS/PKCS #7. |
ComputeSignature(CmsSigner) |
Crea una firma utilizzando il firmatario specificato e aggiunge la firma al messaggio CMS/PKCS #7. |
ComputeSignature(CmsSigner, Boolean)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crea una firma utilizzando il firmatario specificato e aggiunge la firma al messaggio 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)
Parametri
- silent
- Boolean
Solo .NET Core e .NET 5+: true
per richiedere le chiavi di apertura con prompt DEL PIN disabilitati, se supportati; in caso contrario, false
. In .NET Framework, questo parametro non viene usato e viene sempre visualizzata una richiesta di PIN, se necessario.
Eccezioni
signer
è null
.
Impossibile completare un'operazione di crittografia.
Solo .NET Framework: non è specificato un certificato di firma.
Solo .NET Core e .NET 5+: non è specificato un certificato di firma.
Commenti
Solo .NET Core: il silent
parametro non ha alcun effetto se il CmsSigner.PrivateKey valore non è Null. Il valore specificato controlla se il calcolo della firma visualizza un prompt del PIN. Anche quando la PrivateKey proprietà è Null e il silent
parametro è impostato su true
, alcune combinazioni di opzioni del sistema operativo e del firmatario possono comunque generare un prompt del PIN.
Per visualizzare l'interfaccia utente in .NET Framework sono necessarie le autorizzazioni seguenti:
Per accedere alla chiave di firma in .NET Framework sono necessarie le autorizzazioni seguenti:
Si applica a
ComputeSignature()
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crea una firma e aggiunge la firma al messaggio CMS/PKCS #7.
public:
void ComputeSignature();
public void ComputeSignature ();
member this.ComputeSignature : unit -> unit
Public Sub ComputeSignature ()
Eccezioni
.NET Core 3.0 (tutte le versioni)successive e .NET Core 3.0 e versioni successive: il certificato del destinatario non è specificato.
.NET Core versione 2.2 e versioni precedenti: non è stato specificato nessun certificato del firmatario .
Commenti
Questo metodo ha esito positivo se SubjectIdentifierType.NoSignature è stato fornito come signerIdentifierType
argomento di uno degli overload del SignedCms costruttore. In caso contrario, il metodo genererà un'eccezione.
Per accedere alla chiave di firma in .NET Framework sono necessarie le autorizzazioni seguenti:
Si applica a
ComputeSignature(CmsSigner)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
Crea una firma utilizzando il firmatario specificato e aggiunge la firma al messaggio 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)
Parametri
Eccezioni
È stato passato un riferimento null a un metodo che non lo accetta come argomento valido.
Impossibile completare un'operazione di crittografia.
Esempio
Nell'esempio seguente vengono illustrati i passaggi per calcolare una firma in un SignedCms messaggio con contenuto del messaggio non scollegato. In questo caso, il contenuto del messaggio viene incluso nel SignedCms messaggio.
// 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.
Nell'esempio seguente vengono illustrati i passaggi per calcolare una firma in un SignedCms messaggio con contenuto del messaggio scollegato. In questo caso, il contenuto del messaggio deve essere verificato indipendentemente dal SignedCms messaggio.
// 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.
Commenti
Per accedere alla chiave di firma in .NET Framework sono necessarie le autorizzazioni seguenti: