SignerInfo.ComputeCounterSignature Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates a countersignature and adds the signature to the CMS/PKCS #7 message.
Overloads
ComputeCounterSignature() |
Obsolete.
The ComputeCounterSignature() method prompts the user to select a signing certificate, creates a countersignature, and adds the signature to the CMS/PKCS #7 message. Countersignatures are restricted to one level. |
ComputeCounterSignature(CmsSigner) |
The ComputeCounterSignature(CmsSigner) method creates a countersignature by using the specified signer and adds the signature to the CMS/PKCS #7 message. Countersignatures are restricted to one level. |
ComputeCounterSignature()
- Source:
- SignerInfo.cs
- Source:
- SignerInfo.cs
Caution
ComputeCounterSignature without specifying a CmsSigner is obsolete and is not supported. Use the overload that accepts a CmsSigner.
The ComputeCounterSignature() method prompts the user to select a signing certificate, creates a countersignature, and adds the signature to the CMS/PKCS #7 message. Countersignatures are restricted to one level.
public:
void ComputeCounterSignature();
[System.Obsolete("ComputeCounterSignature without specifying a CmsSigner is obsolete and is not supported. Use the overload that accepts a CmsSigner.", DiagnosticId="SYSLIB0035", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public void ComputeCounterSignature ();
public void ComputeCounterSignature ();
[<System.Obsolete("ComputeCounterSignature without specifying a CmsSigner is obsolete and is not supported. Use the overload that accepts a CmsSigner.", DiagnosticId="SYSLIB0035", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.ComputeCounterSignature : unit -> unit
member this.ComputeCounterSignature : unit -> unit
Public Sub ComputeCounterSignature ()
- Attributes
Exceptions
A null reference was passed to a method that does not accept it as a valid argument.
A cryptographic operation could not be completed.
Remarks
This implementation of CMS/PKCS #7 supports only one level of countersignature. That is, a signature can be signed, which forms a countersignature, but that countersignature cannot be signed again.
This method displays a user interface in which you choose signers for this message. This requires that the current process is running in user interactive mode, meaning that the Environment.UserInteractive property is set to true
. A process is normally in user interactive mode unless it is a service process or running inside a Web application.
Signers whose certificates meet the following conditions will be displayed in the list:
- The certificate has an associated private key.
- The certificate is within its validity period.
- The certificate has no key usage or a key usage that supports digital signatures or nonrepudiation.
Signer certificates are chosen from the My store.
The following permissions are required to display the user interface on .NET Framework:
The following permissions are required to access the signature key on .NET Framework:
Applies to
ComputeCounterSignature(CmsSigner)
- Source:
- SignerInfo.cs
- Source:
- SignerInfo.cs
The ComputeCounterSignature(CmsSigner) method creates a countersignature by using the specified signer and adds the signature to the CMS/PKCS #7 message. Countersignatures are restricted to one level.
public:
void ComputeCounterSignature(System::Security::Cryptography::Pkcs::CmsSigner ^ signer);
public void ComputeCounterSignature (System.Security.Cryptography.Pkcs.CmsSigner signer);
member this.ComputeCounterSignature : System.Security.Cryptography.Pkcs.CmsSigner -> unit
Public Sub ComputeCounterSignature (signer As CmsSigner)
Parameters
Exceptions
A null reference was passed to a method that does not accept it as a valid argument.
A cryptographic operation could not be completed.
Remarks
This implementation of CMS/PKCS #7 supports only one level of countersignature. That is, a signature can be signed, which forms a countersignature, but that countersignature cannot be signed again.
The following permissions are required to access the signature key on .NET Framework: