|
Summary of Changes and Enhancements
This document lists all the changes and enhancements since the JCE 1.2 release.
The major new feature in JCE 1.2.1 is the exportability. This feature is further explained in the section New Features. There are a few new methods and classes in the JCE 1.2.1.
This document is divided into the following sections:
- New Features
- Made JCE exportable. The JCE 1.2.1 framework is digitally signed.
A provider must be signed by a trusted entity. Otherwise, the provider cannot be plugged
into the JCE 1.2.1 framework. The JCE 1.2.1 framework and providers do mutual authentication
at runtime. The JCE 1.2.1 introduces an architecture which allows flexible cryptographic
strength be configured via jurisdiction policy files. There are two sets of jurisdiction
policy files: one represents the U.S. export laws; the other represents country specific (local)
laws. The JCE framework needs to enforce the more restrictive law if the U.S. laws and the
local laws are different. This new feature doesn't cause any API changes. So it is transparent
to JCE application developers.
Note for CSPs:
The JCE provider signing policies have yet to be finalized. The document
How to Implement a Provider for JCE
contains information about how to ensure your provider working with the JCE 1.2.1 framework.
- Added support for key wrapping.
- Added support for key usage control.
- New Classes
- Added
javax.crypto.ExemptionMechanism , which is used for enforcing jurisdiction policies.
Justification: Customer request.
Note for CSPs: Added corresponding SPI class javax.crypto.ExemptionMechanismSpi .
- New Methods
- Added
wrap(java.security.Key key) and unwrap(byte[] wrappedKey) methods to javax.crypto.Cipher , which allow users to do key wrapping.
Justification: Customer request.
Note for CSPs: Added corresponding SPI methods engineWrap(java.security.Key key) and engineUnwrap(byte[] wrappedKey) in javax.crypto.CipherSpi .
- Added
init(int opmode, java.security.cert.Certificate certificate) and init(int opmode, java.security.cert.Certificate certificate, java.security.SecureRandom random) methods to javax.crypto.Cipher , which enforce key usage control.
Justification: Customer request.
- Added
engineGetKeySize(java.security.Key key) in javax.crypto.CipherSpi , which returns the size of the given key.
Justification: In order to enforce jurisdiction policies, the JCE needs to know the key size. The CipherSpi class is the best place to add this method. Note: this is a protected SPI method. There is no corresponding API method.
Note for CSPs: This method must be overwritten by the CSP if the CSP is intended for exporting outside the U.S. and Canada.
CHANGES |
README |
LICENSE |
INSTALL |
FAQ |
KNOWN BUGS |
SUBMIT BUGS
|