> From: owner-openssl-us...@openssl.org On Behalf Of Saurabh Pandya > Sent: Friday, 27 July, 2012 10:21
> On 7/27/12, Saurabh Pandya <er.saurabhpan...@gmail.com> wrote: > >> Do roughly the same thing apps/ca.c does, except you probably don't > >> need all its options but may want some other options: > >> > >> Create an X509 and set all needed X509_CINF fields in that X509 > >> to values that you either extract from the X509_REQ and approve, > >> or choose by your own logic (serial at least). Then sign the X509. > > > > Using My self-signed CA's private key, isn't it ?? > Yes. See below. > I am asking this as I have the basic question about > certificate signing > > -> I have my self-sign CA "A" and CA key file "B" I assume that's CA-cert file A and CA-key file B > -> I create another RSA key pair "EVP_PKEY *pkey" to be used for > child leaf certificates > -> I create a certificate "X509 *x" (that supposed to > be child of my CA) > I am setting public key by, that will set public key > part of rsa key "pkey", to my certificate "x" > X509_set_pubkey(x,pkey) > And I am signing certificate with my private key > x509_sign(x,pkey) > No. That makes the child self-signed, not signed by the CA. > Then How can I make my normal server certificate > "x" as a child of > my CA certificate "A", do i need to sign it with "B". > > I am confuse which keys to set in X509_set_pubkey() > and X509_sign > when I want a certificate appeared to be issued by my CA. > X509_set_pubkey to (public part of) child's key (pkey) X509_set_subject_name to name of the child X509_set_issuer_name to name of the CA, specifically X509_get_subject_name from the CA-cert in file A. X509_set_serialNumber to a unique value you choose (some CA's use actual serial numbers 1,2,3,... but most nowadays use an obscured or totally random sequence) X509_set_notBefore,notAfter as desired (usually notBefore=now notAfter=now plus some interval like 3 months, 1 year, etc.) X509_set_version depending on whether you do extensions or not X509v3_add_ext or various X509V3_ routines for extensions then X509_sign using (private part of) CA-key in file B and also save the child's privatekey for the child to use ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org