SignedCms.ComputeSignature 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
서명을 만들고 이 서명을 CMS/PKCS #7 메시지에 추가합니다.
오버로드
ComputeSignature(CmsSigner, Boolean) |
지정된 서명자를 사용하여 서명을 만들고 이 서명을 CMS/PKCS #7 메시지에 추가합니다. |
ComputeSignature() |
서명을 만들고 이 서명을 CMS/PKCS #7 메시지에 추가합니다. |
ComputeSignature(CmsSigner) |
지정된 서명자를 사용하여 서명을 만들고 이 서명을 CMS/PKCS #7 메시지에 추가합니다. |
ComputeSignature(CmsSigner, Boolean)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
지정된 서명자를 사용하여 서명을 만들고 이 서명을 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)
매개 변수
- silent
- Boolean
.NET Core 및 .NET 5 이상만 해당: true
PIN 프롬프트가 비활성화된 상태에서 여는 키를 요청하려면 지원되는 경우 이고, false
그렇지 않으면 입니다. .NET Framework에서 이 매개 변수가 사용되지 않으며 필요한 경우 PIN 프롬프트가 항상 표시됩니다.
예외
signer
이(가) null
인 경우
암호화 작업을 완료할 수 없는 경우
.NET Framework만 해당: 서명 인증서가 지정되지 않습니다.
.NET Core 및 .NET 5 이상만 해당: 서명 인증서가 지정되지 않았습니다.
설명
.NET Core만 해당: 값이 silent
null이 아닌 경우 CmsSigner.PrivateKey 매개 변수는 영향을 주지 않습니다. 제공된 값은 서명을 계산할 때 PIN 프롬프트가 표시되는지 여부를 제어합니다. 속성이 PrivateKey null이고 매개 변수가 silent
로 true
설정된 경우에도 운영 체제와 서명자 옵션의 일부 조합으로 인해 PIN 프롬프트가 발생할 수 있습니다.
.NET Framework 사용자 인터페이스를 표시하려면 다음 권한이 필요합니다.
.NET Framework 서명 키에 액세스하려면 다음 권한이 필요합니다.
적용 대상
ComputeSignature()
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
서명을 만들고 이 서명을 CMS/PKCS #7 메시지에 추가합니다.
public:
void ComputeSignature();
public void ComputeSignature ();
member this.ComputeSignature : unit -> unit
Public Sub ComputeSignature ()
예외
.NET Framework(모든 버전) 및 .NET Core 3.0 이상: 수신자 인증서는 지정되지 않습니다.
.NET Core 버전 2.2 이전: 서명자 인증서가 제공되지 않았습니다.
설명
가 생성자 오버로드 중 하나의 인수로 signerIdentifierType
제공된 경우 SubjectIdentifierType.NoSignature 이 메서드는 SignedCms 성공합니다. 그렇지 않으면 예외가 throw됩니다.
.NET Framework 서명 키에 액세스하려면 다음 권한이 필요합니다.
적용 대상
ComputeSignature(CmsSigner)
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
- Source:
- SignedCms.cs
지정된 서명자를 사용하여 서명을 만들고 이 서명을 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)
매개 변수
예외
null 참조를 유효한 인수로 사용하지 않는 메서드에 null 참조가 전달된 경우
암호화 작업을 완료할 수 없는 경우
예제
다음 예제에서는 분리되지 않은 메시지 콘텐츠가 있는 메시지의 SignedCms 서명을 계산하는 단계를 보여 있습니다. 이 경우 메시지 콘텐츠가 메시지에 포함 SignedCms 됩니다.
// 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.
다음 예제에서는 분리된 메시지 콘텐츠가 있는 메시지의 SignedCms 서명을 계산하는 단계를 보여 있습니다. 이 경우 메시지 콘텐츠는 메시지와 독립적으로 SignedCms 확인해야 합니다.
// 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.
설명
.NET Framework 서명 키에 액세스하려면 다음 권한이 필요합니다.
적용 대상
.NET