"Dave Thompson" wrote in
message news:ee558ada74ef4896a656a182b39d9...@prinpay.com...
> > From: owner-openssl-us...@openssl.org On
Behalf Of Jamrock
> > Sent: Sunday, 30 May, 2010 06:35
>
> > In the past I have created my certificates as follows:
> > /etc/pki/tls/misc/CA -newca
> >
> > openssl req -newkey rsa:2048 -nodes -keyout newreq.pem -out newreq.pem
> >
> > /etc/pki/tls/misc/CA -sign
> >
> > The /etc/pki/tls/misc/CA script has a -newreq option. $REQ
> > -new -keyout
> > newkey.pem -out newreq.pem $DAYS.
> >
> > This appears to put the key and the certificate in different
> > files. The
> > command I use appears to put the key and the certificate in a
> > single file.
> > What are the advantages and disadvantages of each approach?
> >
> I guess/hope /etc/pki/tls/misc/CA is a copy (possibly modified) of
> or link to openssl's apps/CA.sh; assuming so:
>
> Your method puts the Certificate Signing *Request* aka CSR
> and (unencrypted!) privatekey in one file. CA.sh -sign does
> openssl ca -policy policy_anything -out newcert.pem -infiles newreq.pem
> so the *certificate* is in newcert.pem, and that's the (other) file
> you must give your application to use for this identity.
>
> In a real CA situation, where you send the CSR off somewhere
> to get a cert, you absolutely must not send your unencrypted
> private key, and having it in the same file risks that mistake.
> Even post-editing might not work; while no CA I've heard of
> uses MSWord files or PDF, if for example you paste your key+req
> into a vanilla HTML and delete the key and then POST
> you're okay, but if that HTML used some 'helpful, convenient'
> scripting to 'make things better for the customer', or just to
> 'keep advertising annoyingly at every opportunity', it could
> easily have stored your key somewhere that later gets exposed.
> If you're careful pasting and your finger doesn't slip you can
> avoid this, but with separate files you don't have to worry.
>
> If you encrypted your privatekey, as is better practice, then
> there would be somewhat less security risk in sending it out,
> but still some since it's only protected by a human-memorable
> passphrase which almost never contains the 80ish bits of
> entropy needed nowadays (and likely more in the future).
> Plus it could confuse the CA, depending on the CA.
>
> But for your own CA like this there's no security issue,
> and 'openssl ca' in particular isn't confused by this format.
>
> Also, it is technically possible to create multiple CSRs
> and thus obtain multiple certs for the same key(pair),
> although I have never seen a desirable use-case. If you did
> do this, putting the CSRs in separate files would allow you
> to give them descriptive, necessarily different, filenames,
> which be a good idea in dealing with a situation that could
> easily be(come) confusing. (And the same for the certs.)
>
Thanks for the explanation. I will test using 2 separate files.
The CA script is CentOS's version of the CA.sh script. The name was changed
a version or so ago.
__
OpenSSL Project http://www.openssl.org
User Support Mailing Listopenssl-users@openssl.org
Automated List Manager majord...@openssl.org