CertificateRequest.CreateSigningRequest Méthode

Définition

Surcharges

Nom Description
CreateSigningRequest()

Crée une valeur PKCS#10 CertificationRequest codée en ASN.1R qui représente l’état de l’objet actuel.

CreateSigningRequest(X509SignatureGenerator)

Crée une certification PKCS#10 encodée en ASN.1 DER représentant l’état actuel de l’objet actuel à l’aide du générateur de signature fourni.

CreateSigningRequest()

Crée une valeur PKCS#10 CertificationRequest codée en ASN.1R qui représente l’état de l’objet actuel.

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

Retours

Byte[]

Demande de signature de certificat codée par DER.

Exceptions

L’objet actuel a été créé à l’aide d’un constructeur qui n’accepte pas de clé de signature.

La HashAlgorithm valeur de propriété n’est pas prise en charge.

Une erreur de chiffrement se produit lors de la création de la demande de signature.

Remarques

Cette méthode ne prend pas en charge l’utilisation de MD5 ou SHA-1 comme algorithme de hachage pour la signature de la demande de signature. Si vous avez besoin d’une demande de signature basée sur MD5 ou SHA-1, vous devez implémenter un appel personnalisé X509SignatureGenerator et un appel CreateSigningRequest(X509SignatureGenerator).

Lors de l’envoi d’une demande de signature de certificat via un navigateur web ou une autre interface graphique ou textuelle, l’entrée est fréquemment censée être au format PEM (Privacy Enhanced Mail) au lieu du format binaire DER. Pour convertir la valeur de retour au format PEM, créez une chaîne composée , -----BEGIN CERTIFICATE REQUEST-----d’une nouvelle ligne, de la représentation codée en base 64 de la requête (par convention, linewrapped à 64 caractères), d’une nouvelle ligne et -----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();
}

Voir aussi

S’applique à

CreateSigningRequest(X509SignatureGenerator)

Crée une certification PKCS#10 encodée en ASN.1 DER représentant l’état actuel de l’objet actuel à l’aide du générateur de signature fourni.

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

Paramètres

signatureGenerator
X509SignatureGenerator

Générateur de signatures avec lequel signer la demande.

Retours

Byte[]

Demande de signature de certificat codée par DER.

Exceptions

signatureGenerator a la valeur null.

Une erreur de chiffrement se produit lors de la création de la demande de signature.

OtherRequestAttributes contient une null valeur.

-ou-

OtherRequestAttributes contient une entrée avec une nullOid valeur.

-ou-

OtherRequestAttributes contient une entrée représentant l’attribut de demande d’extension PKCS#9 (1.2.840.113549.1.9.14).

-ou-

CertificateExtensions contient une null valeur.

-ou-

CertificateExtensions contient une entrée avec une nullOid valeur.

-ou-

Cet objet a été créé avec un constructeur qui n’a pas accepté de clé de signature.

Remarques

Lors de l’envoi d’une demande de signature de certificat via un navigateur web ou une autre interface graphique ou textuelle, l’entrée est fréquemment censée être au format PEM (Privacy Enhanced Mail) au lieu du format binaire DER.

Voir aussi

S’applique à