다음을 통해 공유


CertificateRequest.CreateSigningRequest 메서드

정의

오버로드

CreateSigningRequest()

현재 개체의 상태를 나타내는 ASN.1 DER로 인코딩된 PKCS#10 CertificationRequest 값을 만듭니다.

CreateSigningRequest(X509SignatureGenerator)

제공된 서명 생성기를 사용하여 현재 개체의 현재 상태를 나타내는 ASN.1 DER로 인코딩된 PKCS#10 CertificationRequest를 만듭니다.

CreateSigningRequest()

현재 개체의 상태를 나타내는 ASN.1 DER로 인코딩된 PKCS#10 CertificationRequest 값을 만듭니다.

public:
 cli::array <System::Byte> ^ CreateSigningRequest();
public byte[] CreateSigningRequest ();
member this.CreateSigningRequest : unit -> byte[]
Public Function CreateSigningRequest () As Byte()

반환

Byte[]

DER로 인코딩된 인증 서명 요청입니다.

예외

현재 개체는 서명 키를 수락하지 않는 생성자를 사용하여 만들어졌습니다.

HashAlgorithm 속성 값은 지원되지 않습니다.

설명

이 메서드는 서명 요청 서명에 대한 해시 알고리즘으로 MD5 또는 SHA-1을 사용할 수 없습니다. MD5 또는 SHA-1 기반 서명 요청이 필요한 경우 사용자 지정 X509SignatureGenerator 을 구현하고 호출 CreateSigningRequest(X509SignatureGenerator)해야 합니다.

웹 브라우저 또는 기타 그래픽 또는 텍스트 인터페이스를 통해 인증서 서명 요청을 제출할 때 입력은 DER 이진 형식 대신 PEM(Privacy Enhanced Mail) 형식이어야 하는 경우가 많습니다. 반환 값을 PEM 형식으로 변환하려면 요청의 -----BEGIN CERTIFICATE REQUEST-----줄 바꿈, Base-64로 인코딩된 요청 표현(규칙에 따라 줄 바꿈 64자), 줄 바꿈 및 -----END CERTIFICATE REQUEST-----로 구성된 문자열을 만듭니다.

public static string PemEncodeSigningRequest(CertificateRequest request, PkcsSignatureGenerator generator)
{
    byte[] pkcs10 = request.CreateSigningRequest(generator);
    StringBuilder builder = new StringBuilder();

    builder.AppendLine("-----BEGIN CERTIFICATE REQUEST-----");

    string base64 = Convert.ToBase64String(pkcs10);

    int offset = 0;
    const int LineLength = 64;

    while (offset < base64.Length)
    {
        int lineEnd = Math.Min(offset + LineLength, base64.Length);
        builder.AppendLine(base64.Substring(offset, lineEnd - offset));
        offset = lineEnd;
     }

     builder.AppendLine("-----END CERTIFICATE REQUEST-----");
     return builder.ToString();
}

적용 대상

CreateSigningRequest(X509SignatureGenerator)

제공된 서명 생성기를 사용하여 현재 개체의 현재 상태를 나타내는 ASN.1 DER로 인코딩된 PKCS#10 CertificationRequest를 만듭니다.

public:
 cli::array <System::Byte> ^ CreateSigningRequest(System::Security::Cryptography::X509Certificates::X509SignatureGenerator ^ signatureGenerator);
public byte[] CreateSigningRequest (System.Security.Cryptography.X509Certificates.X509SignatureGenerator signatureGenerator);
member this.CreateSigningRequest : System.Security.Cryptography.X509Certificates.X509SignatureGenerator -> byte[]
Public Function CreateSigningRequest (signatureGenerator As X509SignatureGenerator) As Byte()

매개 변수

signatureGenerator
X509SignatureGenerator

요청을 서명할 서명 생성기입니다.

반환

Byte[]

DER로 인코딩된 인증 서명 요청입니다.

예외

signatureGenerator이(가) null인 경우

적용 대상