Share via


CertificateRequest.CreateSigningRequest Methode

Definition

Überlädt

CreateSigningRequest()

Erstellt einen ASN.1 DER-codiertes PKCS#10 CertificationRequest-Wert, das den Zustand des aktuellen Objekts darstellt.

CreateSigningRequest(X509SignatureGenerator)

Erstellt einen ASN.1 DER-codierten PKCS#10 CertificationRequest-Wert, der den aktuellen Zustand des aktuellen Objekts unter Verwendung des angegebenen Signaturgenerators darstellt.

CreateSigningRequest()

Erstellt einen ASN.1 DER-codiertes PKCS#10 CertificationRequest-Wert, das den Zustand des aktuellen Objekts darstellt.

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

Gibt zurück

Byte[]

Eine DER-codierte Anforderung zur Zertifikatsignierung.

Ausnahmen

Das aktuelle Objekt wurde über einen Konstruktor erstellt, der keinen Signaturschlüssel akzeptiert.

Der Eigenschaftswert HashAlgorithm wird nicht unterstützt.

Hinweise

Diese Methode unterstützt die Verwendung von MD5 oder SHA-1 nicht als Hashalgorithmus für die Signatur der Signaturanforderungsanforderung. Wenn Sie eine MD5- oder SHA-1-basierte Signaturanforderung benötigen, müssen Sie eine benutzerdefinierte X509SignatureGenerator und aufrufende Anforderung CreateSigningRequest(X509SignatureGenerator)implementieren.

Wenn Sie eine Zertifikatsignaturanforderung über einen Webbrowser oder eine andere grafische oder textbezogene Schnittstelle übermitteln, wird die Eingabe häufig im PEM-Format (Privacy Enhanced Mail) anstelle des BINM-Formats erwartet. Um den Rückgabewert in das PEM-Format zu konvertieren, erstellen Sie eine Zeichenfolge, bestehend aus -----BEGIN CERTIFICATE REQUEST-----einer Newline, der Base-64-codierten Darstellung der Anforderung (nach Konvention, Zeilenumbruch bei 64 Zeichen), einer Newline und -----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();
}

Gilt für

CreateSigningRequest(X509SignatureGenerator)

Erstellt einen ASN.1 DER-codierten PKCS#10 CertificationRequest-Wert, der den aktuellen Zustand des aktuellen Objekts unter Verwendung des angegebenen Signaturgenerators darstellt.

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()

Parameter

signatureGenerator
X509SignatureGenerator

Der Signaturgenerator, mit dem die Anforderung signiert wird.

Gibt zurück

Byte[]

Eine DER-codierte Anforderung zur Zertifikatsignierung.

Ausnahmen

signatureGenerator ist null.

Gilt für