CertificateRequest.CreateSigningRequest Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| CreateSigningRequest() |
Cria um valor de CertificationRequest codificado em DER do ASN.1 1 que representa o estado do objeto atual. |
| CreateSigningRequest(X509SignatureGenerator) |
Cria um PKCS#10 CertificationRequest codificado em DER do ASN.1 que representa o estado atual do objeto atual usando o gerador de assinatura fornecido. |
CreateSigningRequest()
Cria um valor de CertificationRequest codificado em DER do ASN.1 1 que representa o estado do objeto atual.
public:
cli::array <System::Byte> ^ CreateSigningRequest();
public byte[] CreateSigningRequest();
member this.CreateSigningRequest : unit -> byte[]
Public Function CreateSigningRequest () As Byte()
Retornos
Uma solicitação de assinatura de certificado codificada em DER.
Exceções
O objeto atual foi criado usando um construtor que não aceita uma chave de assinatura.
Não há suporte para o HashAlgorithm valor da propriedade.
Ocorre um erro criptográfico ao criar a solicitação de assinatura.
Comentários
Esse método não dá suporte ao uso de MD5 ou SHA-1 como o algoritmo de hash para a assinatura da solicitação de assinatura. Se você precisar de uma solicitação de assinatura baseada em MD5 ou SHA-1, precisará implementar uma chamada CreateSigningRequest(X509SignatureGenerator)e personalizadaX509SignatureGenerator.
Ao enviar uma solicitação de assinatura de certificado por meio de um navegador da Web ou outra interface gráfica ou textual, a entrada é frequentemente esperada para estar no formato PEM (Email Avançado de Privacidade), em vez do formato binário DER. Para converter o valor retornado em formato PEM, crie uma cadeia de -----BEGIN CERTIFICATE REQUEST-----caracteres que consiste em, uma nova linha, a representação codificada em Base 64 da solicitação (por convenção, com uma linha com 64 caracteres), uma nova linha e -----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();
}
Confira também
Aplica-se a
CreateSigningRequest(X509SignatureGenerator)
Cria um PKCS#10 CertificationRequest codificado em DER do ASN.1 que representa o estado atual do objeto atual usando o gerador de assinatura fornecido.
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()
Parâmetros
- signatureGenerator
- X509SignatureGenerator
O gerador de assinatura com o qual assinar a solicitação.
Retornos
Uma solicitação de assinatura de certificado codificada em DER.
Exceções
signatureGenerator é null.
Ocorre um erro criptográfico ao criar a solicitação de assinatura.
OtherRequestAttributes contém um null valor.
-ou-
OtherRequestAttributes contém uma entrada com um nullOid valor.
-ou-
OtherRequestAttributes contém uma entrada que representa o Atributo de Solicitação de Extensão PKCS nº 9 (1.2.840.113549.1.9.14).
-ou-
CertificateExtensions contém um null valor.
-ou-
CertificateExtensions contém uma entrada com um nullOid valor.
-ou-
Esse objeto foi criado com um construtor que não aceitava uma chave de assinatura.
Comentários
Ao enviar uma solicitação de assinatura de certificado por meio de um navegador da Web ou outra interface gráfica ou textual, a entrada é frequentemente esperada para estar no formato PEM (Email Avançado de Privacidade), em vez do formato binário DER.