CertificateRequest.CreateSigningRequest Methode

Definitie

Overloads

Name Description
CreateSigningRequest()

Hiermee maakt u een ASN.1 DER-gecodeerde PKCS#10 CertificationRequest-waarde die de status van het huidige object vertegenwoordigt.

CreateSigningRequest(X509SignatureGenerator)

Hiermee maakt u een ASN.1 DER-gecodeerde PKCS#10 CertificationRequest die de huidige status van het huidige object vertegenwoordigt met behulp van de opgegeven handtekeninggenerator.

CreateSigningRequest()

Hiermee maakt u een ASN.1 DER-gecodeerde PKCS#10 CertificationRequest-waarde die de status van het huidige object vertegenwoordigt.

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

Retouren

Byte[]

Een aanvraag voor certificaatondertekening met DER-codering.

Uitzonderingen

Het huidige object is gemaakt met behulp van een constructor die geen ondertekeningssleutel accepteert.

De HashAlgorithm eigenschapswaarde wordt niet ondersteund.

Er treedt een cryptografische fout op tijdens het maken van de ondertekeningsaanvraag.

Opmerkingen

Deze methode biedt geen ondersteuning voor het gebruik van MD5 of SHA-1 als het hash-algoritme voor de handtekeningaanvraag. Als u een MD5- of SHA-1-aanvraag voor ondertekening nodig hebt, moet u een aangepaste X509SignatureGenerator aanroep CreateSigningRequest(X509SignatureGenerator)implementeren.

Wanneer u een aanvraag voor certificaatondertekening indient via een webbrowser of een andere grafische of tekstuele interface, wordt de invoer vaak verwacht in de PEM-indeling (Privacy Enhanced Mail) te hebben, in plaats van de binaire DER-indeling. Als u de retourwaarde wilt converteren naar PEM-indeling, maakt u een tekenreeks die bestaat uit -----BEGIN CERTIFICATE REQUEST-----, een nieuwe regel, de base-64-gecodeerde weergave van de aanvraag (volgens conventie, regel met 64 tekens), een nieuwe regel en -----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();
}

Zie ook

Van toepassing op

CreateSigningRequest(X509SignatureGenerator)

Hiermee maakt u een ASN.1 DER-gecodeerde PKCS#10 CertificationRequest die de huidige status van het huidige object vertegenwoordigt met behulp van de opgegeven handtekeninggenerator.

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

Parameters

signatureGenerator
X509SignatureGenerator

De handtekeninggenerator waarmee de aanvraag moet worden ondertekend.

Retouren

Byte[]

Een aanvraag voor certificaatondertekening met DER-codering.

Uitzonderingen

signatureGenerator is null.

Er treedt een cryptografische fout op tijdens het maken van de ondertekeningsaanvraag.

OtherRequestAttributes bevat een null waarde.

– of –

OtherRequestAttributes bevat een vermelding met een nullOid waarde.

– of –

OtherRequestAttributes bevat een vermelding die het PKCS#9 Extensieaanvraagkenmerk vertegenwoordigt (1.2.840.113549.1.9.14).

– of –

CertificateExtensions bevat een null waarde.

– of –

CertificateExtensions bevat een vermelding met een nullOid waarde.

– of –

Dit object is gemaakt met een constructor die geen ondertekeningssleutel heeft geaccepteerd.

Opmerkingen

Wanneer u een aanvraag voor certificaatondertekening indient via een webbrowser of een andere grafische of tekstuele interface, wordt vaak verwacht dat de invoer de PEM-indeling (Privacy Enhanced Mail) heeft in plaats van de binaire DER-indeling.

Zie ook

Van toepassing op