Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Wolfgang Effing
Giesecke & Devrient GmbH
1 2 3
Operating System
Chip Card
Platform
Microprocessor
1 2 3
Java Interpreter
Java Virtual
Machine
Operating System
Microprocessor
• Native Functions
– Access to the chip hardware
• Communication protocols (T=0/T=1)
• Memory Access (E²PROM writing)
– Special Card Functions
• Atomic Transaction Facility
• Transient Storage
– Crytographic services
• Symmetric Cryptography (DES, 3DES)
• Public Key Cryptography (RSA 1024 Bit key, DSA)
– Hashing (SHA-1)
– Padding (ISO 9797, PKCS#1, PKCS#5)
– Signing
– Encipher, Decipher
– Firewall control
.class .cap
files Converter file Interpreter
off-card on-card
• javacard.framework
– Applet (base class for all Applets)
– AID
– APDU (high level IO)
– System (Transactions, Transient Data, JCRE requests)
– PIN
– Util (arrayCopy(NonAtomic), secure arrayCompare)
– Exceptions, Shareable Interface, ISO7816 Interface
Java TM Source Java Compiler Java™ G&D Card Application Java Card
Code (Symantec Visual C@fe, Class File Professional Package (CAP) (On-Card VM)
Borland J-Builder, (Off-Card VM
Microsoft J++, ...) Converter-Module)
z The Java™ source code will be converted into the class files with standard tools
z Input of the G&D Java Card VM are class files, containing byte code
z Some work of the JVM is done outside the card
z A new simplified and smaller card class file (CAP-Format) is generated
z The CAP-file with the applet is loaded onto the card
z The applet will be interpreted on the smart card