jdk/src/share/classes/sun/security/x509/README
author duke
Sat, 01 Dec 2007 00:00:00 +0000
changeset 2 90ce3da70b43
permissions -rw-r--r--
Initial load
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
90ce3da70b43 Initial load
duke
parents:
diff changeset
     2
Quick summary of the main purpose here:  X.509 certs are used in public
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
key infrastructure for protocols such as SSL and SET.  These certificates
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
involve ISO/CCITT standard technologies such as ASN.1/DER, which control
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
the format of the data being transmitted.  X.509 itself describes the
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
content of the data (e.g. X.500 user name, public key for that user, more)
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
and how to sign it.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
+++	+++	+++	+++	+++	+++	+++	+++	+++
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
The X.509 support in JDK 1.2 builds on the java.security signature and
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
key management APIs.  The following packages provide the X.509 support:
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
    sun.security.util ... holds DER utilities, for parsing and generating
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
	streams of DER-encoded data values, including object identifiers.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
    sun.security.x509 ... basic X.509 certificate parsing and generation
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
	framework, including X.509 keys, X.500 names, algorithm IDs,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
        X.509 v3 extensions, and more.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
90ce3da70b43 Initial load
duke
parents:
diff changeset
    21
+++	+++	+++	+++	+++	+++	+++	+++	+++
90ce3da70b43 Initial load
duke
parents:
diff changeset
    22
90ce3da70b43 Initial load
duke
parents:
diff changeset
    23
Information which may be useful when you work with X.509 certificates is
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
found in:
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
    The IETF has a public key infrastructure working group, PKIX.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
    See http://www.ietf.org for more information.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
    RFC 1422, which describes the key management infrastructure for
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
    the Privacy Enhanced Mail (PEM) system.  It builds on X.509,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
    and is perhaps the most useful overview I've found.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
    RFC 1777, which describes the Lightweight Directory Access
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
    Protocol (LDAP) that many organizations are expecting will help
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
    address online certificate distribution over the Internet.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
    RFC 3280, which describes the Internet X.509 Public Key
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
    Infrastructure Certificate and CRL Profile.  
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
    RSA DSI has a bunch of "Public Key Cryptography Standards" (PKCS) which
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
    have been relatively well accepted.  They build on top of the X.509
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
    infrastructure.  You can FTP them from ftp://ftp.rsa.com/pub/pkcs, in
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
    either PostScript or ASCII format.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    44
90ce3da70b43 Initial load
duke
parents:
diff changeset
    45
    RSA DSI has also provided a "Layman's Guide" to ASN.1/DER, with
90ce3da70b43 Initial load
duke
parents:
diff changeset
    46
    examples from the X.509 and PKCS standards.  This is available from
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
    the PKCS FTP area noted above.