Академический Документы
Профессиональный Документы
Культура Документы
1 PLATFORM
SPECIFICATION
Contents
- Introduction
- Supported Platforms
- Installation Instructions
Changes in the Classic Edition
- Specifications since the Java Card
Platform, v2.2.2
Application Programming Interface,
Version 3.0.1, Classic Edition
Runtime Environment Specification,
Version 3.0.1, Classic Edition
Virtual Machine Specification, Version
3.0.1, Classic Edition
New Features in the Java Card 3
Connected Edition Specifications
Java Servlet Specification, Java Card 3
Platform, Connected Edition
Application Programming Interface, Java
Card 3 Platform, Connected Edition
Runtime Environment Specification, Java
Card 3 Platform, Connected Edition
Virtual Machine Specification, Java Card
3 Platform, Connected Edition
Changes in the Connected Edition
- Specifications since the Java Card
Platform, v3.0
Java Servlet Specification, Version 3.0.1,
Connected Edition
Application Programming Interface,
Version 3.0.1, Connected Edition
Runtime Environment Specification,
Version 3.0.1, Connected Edition
Virtual Machine Specification, Version
3.0.1, Connected Edition
- Sending Feedback
Introduction
These release notes introduce the Java Card
specifications for the Java Card Platform,
Version 3.0.1. Versions 3.0 and 3.0.1 are,
together, referred to as the Java Card 3
Platform.
The Java Card 3 Platform consists of two
editions, both of which are backward
compatible with previous versions,
including support for classic applet
applications, and share key security
features:
Classic Edition
Runtime
This specification
Environment
describes the runtime
Specification for environment (RE) for the
the Java Card
Classic Edition of the
Platform, Classic Java Card Platform. This
Edition
RE mirrors those REs
Connected Edition
This specification
describes the runtime
environment required for
interoperable execution of
Runtime
Java Card technologyEnvironment
based servlets and applets
Specification for with extended/advanced
the Java Card
capabilities. It also
Platform,
includes some
Connected
information on Classic
Edition
applets, but see the
Classic runtime
environment specification
for the bulk of that
information.
Java Servlet
This specification
Specification for describes the
the Java Card
requirements for
Platform,
interoperable Java Card
Connected
technology-based servlet
Edition
execution.
Application
This API defines a set of
Programming
classes upon which Java
Interface for the Card technology-based
Java Card
Platform,
Connected
Edition
Virtual Machine
Specification for
the Java Card
Platform,
Connected
Edition
This specification
describes the new virtual
machine for the
Connected Edition of the
Java Card Platform.
Back to top
Supported Platforms
The documents are accessible on any
computer system with an unzip utility,
Adobe Acrobat Reader (version 4.0 or
later), and a CSS-compliant web browser.
HTML can be viewed with any CSScompliant browser software, such as:
Back to top
Installation Instructions
Download and unzip the specifications
bundle. The bundle unzips into the
subdirectory javacard_specifications3_0_1-RR, within which you will find the
subdirectories classic/ and connected/.
NOTE: The HTML versions of the
specifications can be viewed in most
browsers but do not render well in Mozilla
Firefox 3.0.10.
classic/
Subdirectory
connected/
subdirectory
at
connected/jcre_connected/html/inde
x.html
- contains the Java
Card virtual machine specification
for the Connected Edition in PDF
format ( JCVMspecCONNECTED3_0_1-RR.pdf) and an HTML
version at
connected/jcvm_connected/html/ind
ex.html
jcvm_connected
servlet_connected
- contains the
servlet specification for the Java
Card Platform in PDF format (
ServletspecCONNECTED-3_0_1RR.pdf ) and an HTML version at
connected/servlet_connected/html/in
dex.html
Back to top
package javacard.framework
o version number = 1.4
package javacard.security
o
package javacardx.crypto
o
descriptions
Clarified methods
getCLAChannel,
isSecureMessaging,
isCommandChaining
with respect to RFU and
0xFF encodings of CLA,
added new isValidCLA
method - #6503484
setOutgoingNoChaini
ng method clarified
comment about 61xx
command chaining
restrictions - #6506163
javacard.security.KeyBuilder
o
javacard.security.KeyAgreement
o
Clarified
ALG_EC_SVDP_DH and
ALG_EC_SVDP_DHC on
requirement of output to
be the computed SHA-1 on
Duplicated
ALG_EC_SVDP_DH and
ALG_EC_SVDP_DHC with
_KDF names with identical
descriptions to make key
derivation step (SHA)
more intuitive - #6557775
javacard.security.InitializedMessa
geDigest
o
javacard.security.HMACKey
o
javacard.security.MessageDigest
o
Clarified the
setInitialDigest() to require
a 512 byte input param for
SHA-384
javacard.security.Signature
o
javacardx.external.Memory
o
javacardx.crypto.Cipher
o
Clarified the
ALG_RSA_NOPAD
algorithm to throw an
ILLEGAL_USE
CryptoException in the
update and doFinal methods
if the input data value is
equal to or greater than the
key modulus
Deprecated the
ALG_RSA_ISO14888
algorithm.
[Top]
specified via
setOutgoingLength method
[Top]
Back to top
Edition.
Summary
Updates to the Java Servlet specification
since the Java Card Platform, Version 3.0
include:
Back to top
com.sun.javacard(x).spi.*
java.lang
o
java.util
The Calendar.hashcode()
method has been added.
The thread-safety
requirements of the
collection classes Hashtable, Vector
and Stack - has been
clarified.
javacard.framework
The JCSystem
method
has been clarified to return
MEMORY_TYPE_TRANSIE
NT_RESET for instances of
TransientReference.
.isTransient()
javacard.security
The
InitializedMessageD
igest.
setInitialDigest()
method has been clarified to
require a 512 byte input
param for SHA-384.
The
HMACKey.setKey/getKey
Key.getTypeName
MessageDigest
class has
added the the SHA-224 hash
algorithm.
javacardx.crypto
o
Deprecated the
Cipher.ALG_RSA_ISO14888
algorithm.
javacardx.framework
o
Authenticator. reset
The ContextPermission
class no longer supports the
standard event URI aliasing
pattern.
The
JCSystem.getPreviousURI
JCSystem.getClientURI
The
JCSystem.getClientURI
and JCSystem.
isClientInRole methods
The JCSystem.
getAppProperty and
JCSystem. isUserInRole
javacardx.facilities
o
The EventRegistry.n
otifyListenersInRole
javacardx.security
o
The CredentialManager
class has been refactored to
support the TLS-PSK
algorithm.
The CredentialManager
class has been refactored to
be align with the
javacard.security
package and the
javax.microedition.pki.
Certificate package.
o
The chooseCipherSuites
method has been added to
the SecurityRequirements
class to allow applications to
SensitiveType,
SensitiveMethod
security
annotation classes have been
added.
javacardx.spi.*
o
com.sun.javacard.spi.*
o
The ProtectionDomain.
initializePlatformPolic
y method has been added.
The
DeploymentUnitLoade
r class default constructor
has been made private to
ensure singleton pattern.
Back to top
Security Annotations
Code Isolation
The classloader to be
requested to dynamically
load a class using
Class.forName() or
ResourceBundle.getBundl
e() has been redefined. It
Transactions
This ClassicSIOProxy
mechanism now ensures the
thread safety of classic
applications. Classic SIO
proxies classes are supported
only inside a classic applet
application.
The ClassicSIOProxy
mechanism now supports he
SIO instance echo pattern
between a classic application
and extended applet
application.
User Authentication
Interface between
Authenticators and the
container for HTTP Digest
authentication has been
specified.
Generic authentication
procedure returns 401 when
authentication fails.
Inter-application Communication
Facilities
Ownership of standard
application events created
and fired by the Java Card
RE on behalf of applications
has been clarified.
The restrictions on
unregistration of service,
event and task has been
clarified (only the
application that previously
registered the object can
unregister it).
Firewall
Exception Objects
Credential Manager
Card Management
Miscellaneous
Back to top