Salve a tutti, qualcuno sa dirmi qualcosa sulla notazione ASN1?
In pratica devo generare la richiesta di un certificato x509 (che secondo le specifiche deve rispettare la notazione ASN1) di questo tipo:
che dovrei poi codificare in .der ma non posso andare avanti se prima non capisco come crearlo e soprattutto come inserire i parametri che servono (l'algoritmo che sto usando, la chiave pubblica) ...conoscete qualche libreria c++che mi permetta di crearmi una documento del genere (di cui, tra l'altro, non conosco l'estensione :-( )?codice:-------------------------------------------------------------------- -- PKCS #10 Certificate request. -------------------------------------------------------------------- CertificationRequestInfo ::= SEQUENCE { version CertificationRequestInfoVersion, subject Name, subjectPublicKeyInfo SubjectPublicKeyInfo, attributes [0] IMPLICIT Attributes } ------------------------------------------------------- -- Version number. ------------------------------------------------------- CertificationRequestInfoVersion ::= INTEGER ------------------------------------------------------- -- Subject distinguished name (DN). ------------------------------------------------------- Name ::= SEQUENCE OF RelativeDistinguishedName RelativeDistinguishedName ::= SET OF AttributeTypeValue AttributeTypeValue ::= SEQUENCE { type OBJECT IDENTIFIER, value ANY } ------------------------------------------------------- -- Public key information. ------------------------------------------------------- SubjectPublicKeyInfo ::= SEQUENCE { algorithm AlgorithmIdentifier, subjectPublicKey BITSTRING } AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER, parameters ANY OPTIONAL } ------------------------------------------------------- -- Attributes. ------------------------------------------------------- Attributes ::= SET OF Attribute Attribute ::= SEQUENCE { type OBJECT IDENTIFIER, values AttributeSetValue } AttributeSetValue ::= SET OF ANY
PS: so che potrei usare openssl da riga di comando ma non mi è consentito.

Rispondi quotando