CertificateRequest.CreateSigningRequest Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
CreateSigningRequest() |
Crea un valore CertificationRequest PKCS#10 con codifica DER ASN.1 che rappresenta lo stato dell'oggetto corrente. |
CreateSigningRequest(X509SignatureGenerator) |
Crea un oggetto CertificationRequest PKCS#10 con codifica DER ASN.1 che rappresenta lo stato corrente dell'oggetto usando il generatore di firme specificato. |
CreateSigningRequest()
Crea un valore CertificationRequest PKCS#10 con codifica DER ASN.1 che rappresenta lo stato dell'oggetto corrente.
public:
cli::array <System::Byte> ^ CreateSigningRequest();
public byte[] CreateSigningRequest ();
member this.CreateSigningRequest : unit -> byte[]
Public Function CreateSigningRequest () As Byte()
Restituisce
- Byte[]
Richiesta di firma per il certificato con codifica DER.
Eccezioni
L'oggetto corrente è stato creato tramite un costruttore che non accetta una chiave di firma.
Il valore della proprietà HashAlgorithm non è supportato.
Commenti
Questo metodo non supporta l'uso di MD5 o SHA-1 come algoritmo hash per la firma della richiesta di firma. Se è necessaria una richiesta di firma basata su MD5 o SHA-1, è necessario implementare un oggetto personalizzato X509SignatureGenerator e chiamare CreateSigningRequest(X509SignatureGenerator).
Quando si invia una richiesta di firma del certificato tramite un Web browser o un'altra interfaccia grafica o testuale, l'input è spesso previsto nel formato Privacy Enhanced Mail (PEM), anziché nel formato binario DER. Per convertire il valore restituito in formato PEM, creare una stringa costituita da -----BEGIN CERTIFICATE REQUEST-----
, una nuova riga, la rappresentazione con codifica Base-64 della richiesta (per convenzione, linewrapped a 64 caratteri), una nuova riga 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();
}
Si applica a
CreateSigningRequest(X509SignatureGenerator)
Crea un oggetto CertificationRequest PKCS#10 con codifica DER ASN.1 che rappresenta lo stato corrente dell'oggetto usando il generatore di firme specificato.
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()
Parametri
- signatureGenerator
- X509SignatureGenerator
Generatore di firme con il quale firmare la richiesta.
Restituisce
- Byte[]
Richiesta di firma per il certificato con codifica DER.
Eccezioni
signatureGenerator
è null
.