javax.microedition.pki.package.html Maven / Gradle / Ivy
Certificates are used to authenticate information for secure
Connections.
The Certificate
interface provides to the
application information about the origin and type of the certificate.
The CertificateException
provides information about
failures that may occur while verifying or using certificates.
The MIDP X.509 Certificate Profile below defines the format and
usage of certificates. X.509 Certificates MUST be supported.
Other certificate formats MAY be supported. The implementation
MAY store only the essential information from certificates.
Internally, the fields of the certificate MAY be stored in any
format that is suitable for the implementation.
References
MIDP 2.0 devices are expected to operate using standard Internet
and wireless protocols and techniques for transport and security. The
current mechanisms for securing Internet content is based
on existing Internet standards for public key cryptography:
- [RFC2437] - PKCS
#1 RSA Encryption Version 2.0
- [RFC2459] - Internet
X.509 Public Key Infrastructure
- [WAPCERT] -
WAP-211-WAPCert-20010522-a -
WAP Certificate Profile Specification
MIDP X.509 Certificate Profile
WAP-211-WAPCert-20010522-a [WAPCert] which is based on
RFC2459 Internet X.509 Public Key
Infrastructure Certificate and CRL Profile [RFC2459].
Devices MUST conform to all mandatory requirements in
[WAPCert] and SHOULD conform to all optional requirements in
[WAPCert] except those requirements in excluded sections listed
below. Mandatory and optional requirements are listed in Appendix
C of [WAPCert].
Additional requirements, ON TOP of those listed in [WAPCert]
are given below.
- Excluding [WAPCert] Section 6.2, User Certificates for
Authentication
- Excluding [WAPCert] Section 6.3, User Certificates for
Digital Signatures
RFC2459 contains sections which are not relevant to
implementations of this specification. The WAP Certificate
Profile does not mention these functions. The sections to be
excluded are:
- Exclude the requirements from Paragraphs 4 of
Section 4.2 - Standard Certificate Extensions. A conforming
implementation of this specification does not need to recognize
extensions that must or may be critical including certificate
policies, name constraints, and policy constraints.
- Exclude RFC2459 Section 6.2 Extending Path Validation.
Support for Policy Certificate Authority or policy attributes
is not required.
Certificate Extensions
A version 1 X.509 certificate MUST be considered equivalent to a
version 3 certificate with no extensions.
At a minimum, a device conforming to this profile MUST
recognize key usage (see RFC2459 sec. 4.2.1.3),
basic constraints (see RFC2459 sec. 4.2.1.10).
Although a conforming device may not recognize the authority and subject
key identifier (see RFC2459 sec. 4.2.1.1 and 4.2.1.2) extensions it MUST
support certificate authorities that sign certificates using the same
distinguished name but using multiple public keys.
Implementations MUST be able to process certificates with
unknown distinguished name attributes.
Implementations MUST be able to process certificates with
unknown, non-critical certificate extensions.
The serialNumber
attribute defined by [WAPCert]
must be recognized in distinguished names for Issuer and Subject.
Certificate Size
Devices must be able to process certificates that are not
self-signed root CA certificates of size up to at least 1500
bytes.
Algorithm Support
A device MUST support the RSA signature algorithm with the
SHA-1 hash function sha1WithRSAEncryption
as defined by PKCS #1 [RFC2437].
Devices that support these algorithms MUST be capable of
verifying signatures made with RSA keys of length up to and
including 2048 bits.
Devices SHOULD support signature algorithms
md2WithRSAEncryption
and
md5WithRSAEncryption
as defined in [RFC2437].
Devices that support these algorithms MUST be capable of
verifying signatures made with RSA keys of length up to and
including 2048 bits.
Certificate Processing for HTTPS
Devices MUST recognize the extended key usage extension defined
of RFC2818 if it
is present and is marked critical and when present MUST verify that
the extension contains the id-kp-serverAuth
object
identifier (see RFC2459 sec. 4.2.1.13).
SSL and TLS allow the web server to include the redundant root
certificate in the server certificate message. In practice this
certificate may not have the basic constraint extension (it is
most likely a version 1 certificate), a device MUST ignore the
redundant certificate in this case. Web servers SHOULD NOT
include a self-signed root CA in a certificate chain.
@since MIDP 2.0