Thanks very much!  I am a newbie to use openssl!  

-----邮件原件-----
发件人: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] 
代表 Kyle Hamilton
发送时间: 2009年3月30日 15:37
收件人: openssl-users@openssl.org
主题: Re: How to make X.509v3 digital certificate?

Oh man, newbie question, which means that someone doesn't understand
how X.509 is supposed to work.

The simplest answer is this: 'openssl req' and 'openssl x509', along
with 'openssl ca', will create X.509v3 certificates (we don't bother
with the 'digital', because there's only one case where we've needed
to deal with a physical certificate in all the years I've been on this
list -- and that was the FIPS validation certificate).

However, this isn't even scratching the surface, because X.509 (all of
the versions, v3 being the latest) is a way of creating a trusted path
-- meaning, a verified path of trust that started at a trusted entity.
 You can always trust yourself (unless you can't, but that's a problem
FAR beyond the technical realm and into the psychotheraputic realm),
but who else can you trust?

Fortunately (or unfortunately), different companies have decided
different sets of companies that most users trust by default, in their
browsers.  These are known as "Certifying Authorities", or CAs.
Mozilla's list of CAs is different from Microsoft's list is different
from Apple's list is different from Opera's list is different from
KDE's list is different from Ubuntu's list is different from Debian's
list is different from... and on and on and on.  (No, I don't have a
list of the subset of all CAs which is trusted by all of them.)

Depending on your application, you may not actually need to worry
about CAs, since you might be doing as Linden Lab (and others) have
done, creating your own CA and issuing certificates to your own
internal entities.  If this is the case, great!  OpenSSL can (most
likely) serve your purpose entirely, with a bit/lot of configuration
on your part.  If you need to create a certificate for a webserver
that's going to be open to the public, 'openssl req' will be able to
help you, and will create a certificate signing request (CSR, or req)
that you can send to the CA that you choose, and receive an X.509v3
certificate from them which will verify to be on a trusted path.
(This, combined with the private key that only you possess, will
provide verification that your webserver is actually yours.)

Now, a word as to what a certificate is NOT: The keysize of a
certificate IS NOT a way to gauge the strength of the encryption
process used.  (This is why SSL has terms like RSA-AES256-SHA1 -- the
first is the type of public key (in the certificate) used to
authenticate the connection, the second is the type of symmetric
cipher in use, and the third is the type of hashing algorithm used to
verify that the data hasn't been modified in-transit.)  In general,
longer keysizes on AES are considered to be 'more secure' (read, 'less
likely to have the plaintext recovered, and less likely to have the
key recovered') -- and you should not be using DES at all.  (3DES,
though, is okay -- at least for now.)

For more information on X.509 and its relationship to cryptography in
general, I recommend the Wikipedia articles:
http://en.wikipedia.org/wiki/X.509
http://en.wikipedia.org/wiki/Public_key_certificate

For more information on public-key cryptography in general (which is
the technology which allows X.509 certificates to be verified and
trusted as authentic, in a mathematical way that these words in your
email box cannot):
http://en.wikipedia.org/wiki/Category:Public-key_cryptography

And, for SSL/TLS:
http://en.wikipedia.org/wiki/Transport_Layer_Security

This should provide you with enough information to at the least
understand the depth of the problem, the scope of the problem, and the
breadth of the problem.  (The problem that X.509 is supposed to
resolve is *authentication* -- making sure that the signature on the
content is authentic.  It only provides security as far as "knowing
who signed it" provides security.  You must still make an independent
trust decision about whether you trust any given authenticated entity
for any given thing that it is asking for permission to do.)

-Kyle H

On Sun, Mar 29, 2009 at 9:00 PM, shawnlau <net17sharp...@163.com> wrote:
> Hi all!
>
>
>
> I just want to know how to make the X.509v3 digital certificate with
> openssl-0.9.8j, if it’s impossible ?
>
>
>
> Thanks a lot and Best regards!
>
>
>
> Shawn
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

__________ NOD32 3979 (20090331) Information __________

This message was checked by NOD32 antivirus system.
http://www.nod32cn.com



______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to