<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Java_Card_OpenPlatform</id>
	<title>Java Card OpenPlatform - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Java_Card_OpenPlatform"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Java_Card_OpenPlatform&amp;action=history"/>
	<updated>2026-04-22T14:51:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Java_Card_OpenPlatform&amp;diff=1763989&amp;oldid=prev</id>
		<title>imported&gt;Grand&#039;mere Eugene: + wl</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Java_Card_OpenPlatform&amp;diff=1763989&amp;oldid=prev"/>
		<updated>2025-02-12T01:46:33Z</updated>

		<summary type="html">&lt;p&gt;+ wl&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Multiple issues|&lt;br /&gt;
{{too many sections|date=September 2016}}&lt;br /&gt;
{{technical|date=January 2016}}&lt;br /&gt;
{{more citations needed|date=October 2024}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Infobox OS&lt;br /&gt;
| name                   = Java Card OpenPlatform&lt;br /&gt;
| logo                   = &lt;br /&gt;
| screenshot             = &lt;br /&gt;
| caption                = &lt;br /&gt;
| developer              = [[IBM]], &amp;gt; 2007 [[NXP]]&lt;br /&gt;
| source_model           = &lt;br /&gt;
| kernel_type            = &lt;br /&gt;
| supported_platforms    = [[Java Card]]&lt;br /&gt;
| ui                     = &lt;br /&gt;
| family                 = [[Embedded operating system]]s&lt;br /&gt;
| released               = &lt;br /&gt;
| latest_release_version = JCOP 3.1&lt;br /&gt;
| latest_release_date    = &lt;br /&gt;
| latest_test_version    = &lt;br /&gt;
| latest_test_date       = &lt;br /&gt;
| marketing_target       = [[Smart card]]s, [[Secure Element]]s, USB [[security token]]s, [[Telematics]]&lt;br /&gt;
| programmed_in          = &lt;br /&gt;
| prog_language          = [[Java Card]]&lt;br /&gt;
| language               = &lt;br /&gt;
| updatemodel            = &lt;br /&gt;
| package_manager        = &lt;br /&gt;
| working_state          = Current&lt;br /&gt;
| license                = &lt;br /&gt;
| website                = [https://www.nxp.com/products/security-and-authentication/end-to-end-services:END-TO-END-SERVICES JCOP ID and JCOP Pay]&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Java Card OpenPlatform&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;JCOP&amp;#039;&amp;#039;&amp;#039;) is a [[smart card]] [[operating system]] for the [[Java Card]] platform developed by [[IBM]] Zürich Research Laboratory.&amp;lt;ref&amp;gt;{{cite web |title=IBM WebSphere Everyplace Chip Operating  System — JavaCard OpenPlatform. |url=https://public.dhe.ibm.com/software/pervasive/info/G507-1676-01_WECOS_Final.pdf |publisher=IBM |access-date=11 September 2024 |ref=1}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
On 31 January 2006 the development and support responsibilities transferred to the IBM Smart Card Technology team in [[Böblingen]], [[Germany]].&lt;br /&gt;
Since July 2007 support and development activities for the JCOP operating system on [[NXP Semiconductors|NXP]] / [[Philips]] silicon are serviced by [[NXP Semiconductors]].&lt;br /&gt;
&lt;br /&gt;
The title originates from the standards it complies with:&lt;br /&gt;
* [[Java Card]] specifications&lt;br /&gt;
* [[GlobalPlatform]] (formerly known as [[Visa Inc]] OpenPlatform) specifications&lt;br /&gt;
&lt;br /&gt;
A Java Card JCOP has a [[Java Card Virtual Machine]] (JCVM) which allows it to run applications written in [[Java (programming language)|Java programming language]].&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
=== First JC/OP Masks ===&lt;br /&gt;
Mask 0 : 1998 (spring)&lt;br /&gt;
* First prototype on [[Atmel]] 8-bit uC – Flash memory, slow&lt;br /&gt;
Mask 1 : 1998&lt;br /&gt;
* [[Siemens]]/[[Infineon]] SLE66 IC – [[Public key]] cryptography&lt;br /&gt;
Mask 2 and 3 : 1999&lt;br /&gt;
* [[Gemplus International]] (now [[Gemalto]]) licensed JC/OP&lt;br /&gt;
* Base mask for [[GemXpresso]] product line &lt;br /&gt;
* Public key generation&lt;br /&gt;
* Visa OpenPlatform&lt;br /&gt;
Mask 4 : 1999&lt;br /&gt;
* Contactless JC/OP on Philips [[Mifare]] Pro chip&lt;br /&gt;
* 256 bytes RAM, 20 KB ROM and 8 KB EEPROM &lt;br /&gt;
* Dual interface&lt;br /&gt;
&lt;br /&gt;
=== JCOP01 and Cooperation with Philips ===&lt;br /&gt;
Mask 5 : 2000&lt;br /&gt;
* Philips P8WE smartcard microcontroller&lt;br /&gt;
* ‘JCOP01’ is the foundation for all later versions &lt;br /&gt;
* JCOP licensed by IBM&lt;br /&gt;
* JCOP Tools for development&lt;br /&gt;
Visa breakthrough program&lt;br /&gt;
* To counter [[MasterCard]]’s [[MULTOS]]&lt;br /&gt;
* Cooperation between IBM (OS), Visa (OpenPlatform) and Philips (IC) &lt;br /&gt;
* JCOP v1 owned by Visa&lt;br /&gt;
JCOP v2&lt;br /&gt;
* Owned by IBM, sold by Philips&lt;br /&gt;
* Philips [[SmartMX]] controller (SMX)&lt;br /&gt;
JCOP v2.2&lt;br /&gt;
* GlobalPlatform 2.1.1&lt;br /&gt;
* Java Card 2.2.1&lt;br /&gt;
* [[Elliptic Curve Cryptography]] (ECC) F2M support&lt;br /&gt;
* JCOP Tools [[Eclipse (software)|Eclipse]] based&lt;br /&gt;
&lt;br /&gt;
=== JCOP Transfer ===&lt;br /&gt;
JCOP v2.2.1 – JCOP v2.3.1&lt;br /&gt;
* Owned by IBM, sold by Philips/NXP&lt;br /&gt;
* Development transferred to IBM in Böblingen, Germany &lt;br /&gt;
* USB interface&lt;br /&gt;
JCOP v2.3.2&lt;br /&gt;
* JCOP technology owned by IBM&lt;br /&gt;
* Policy change at IBM&lt;br /&gt;
* Source code license acquired by NXP Semiconductors &lt;br /&gt;
* To serve customer requests and projects&lt;br /&gt;
&lt;br /&gt;
=== JCOP by NXP ===&lt;br /&gt;
JCOP v2.4&lt;br /&gt;
* first NXP developed JCOP version&lt;br /&gt;
* ECC GF(p) support&lt;br /&gt;
* Java Card 2.2.2&lt;br /&gt;
JCOP v2.4.1&lt;br /&gt;
* ECC primitive calculation support (point addition and multiplication)&lt;br /&gt;
* [[Common Criteria]] 5+ certification (CC)&lt;br /&gt;
* EMV, Visa and MasterCard approved&lt;br /&gt;
* [[Network File Control|NFC]] integration into PN65N combo chip: NFC and [[Secure Element]]&lt;br /&gt;
JCOP v2.4.2&lt;br /&gt;
* additional algorithms to support eGovernment use cases, i.e. [[Advanced Encryption Standard|AES]] [[CMAC]]&lt;br /&gt;
* CC 5+&lt;br /&gt;
* NFC integration into PN65O&lt;br /&gt;
&lt;br /&gt;
=== JCOP 3 ===&lt;br /&gt;
&lt;br /&gt;
==== mobile ====&lt;br /&gt;
Smartcard controller SmartMX2, P61, flash based persistent memory&lt;br /&gt;
&lt;br /&gt;
JCOP 3.0&lt;br /&gt;
* NFC integration into PN65T&lt;br /&gt;
* Java Card 3.0.1 classic edition&lt;br /&gt;
* GlobalPlatform 2.2.1&lt;br /&gt;
* EMV platform certification&lt;br /&gt;
JCOP 3.1&lt;br /&gt;
* NFC integration into PN66T&lt;br /&gt;
&lt;br /&gt;
==== card ====&lt;br /&gt;
SMX2, P60, EEPROM based persistent memory&lt;br /&gt;
&lt;br /&gt;
JCOP 3.x&lt;br /&gt;
(not released as of Dec 26, 2014)&lt;br /&gt;
&lt;br /&gt;
== Technical Overview ==&lt;br /&gt;
JCOP is an operating system for a security sensitive embedded system environment, smartcard or secure element controllers in particular. The functional architecture can be partitioned into three parts:&lt;br /&gt;
* Java Card, for development of applications, i.e. API and structure of card applets similar to class files&lt;br /&gt;
* GlobalPlatform, for administration of applications and operating system, i.e. loading and access control&lt;br /&gt;
* JCOP proprietary features, mainly Java Card API extensions, i.e. ECC primitive calculation or [[MIFARE]] DESFIRE management&lt;br /&gt;
&lt;br /&gt;
NXP offers also MIFARE emulations for Classic and DESFIRE on the same chip as additional (native) operating systems. While JCOP is based on open standards, MIFARE technology is NXP specific. Java Card applets running in JCOP can then be used to manage the MIFARE memory through Java Card API. MIFARE Plus and MIFARE Ultralight are not (yet) supported.&lt;br /&gt;
&lt;br /&gt;
=== GlobalPlatform ===&lt;br /&gt;
GP is a high-level standard with many options. As of JCOP 3, support for GP 2.2.1 was added, in particular to support mobile use cases JCOP 3 is fully Secure Element configuration compliant.&lt;br /&gt;
&lt;br /&gt;
GP 2.2.1 card specification, core&lt;br /&gt;
* issuer centric or simple model&lt;br /&gt;
* delegated management&lt;br /&gt;
* authorized management&lt;br /&gt;
* verification authority (GP 2.1.1 controlling authority)&lt;br /&gt;
* Data Authentication Pattern (DAP)&lt;br /&gt;
* Secure Channel Protocol 02 (SCP), pseudo random, C-MAC, C-ENC, R-MAC, R-ENC&lt;br /&gt;
* all the privileges are supported&lt;br /&gt;
Amendment A - Confidential Card Content Management (C3M)&lt;br /&gt;
* see implementation details in UICC configuration and Amendment E&lt;br /&gt;
Amendment C - Contactless Services&lt;br /&gt;
* every protocol but [[FeliCa]] is supported&lt;br /&gt;
* additionally MIFARE Classic and DESFIRE is supported&lt;br /&gt;
* HCI notifications are supported&lt;br /&gt;
Amendment D - Secure Channel Protocol 03 (AES)&lt;br /&gt;
* only AES-128&lt;br /&gt;
* all options are supported (random)&lt;br /&gt;
Amendment E - Security Upgrade&lt;br /&gt;
* SHA-256 and EC-256&lt;br /&gt;
* C3M scenario #3&lt;br /&gt;
UICC configuration&lt;br /&gt;
* scenarios #1, #2A and #2B&lt;br /&gt;
* SCP 80 and 81 is not supported (ETSI)&lt;br /&gt;
Secure Element configuration&lt;br /&gt;
* JCOP 3 is fully compliant&lt;br /&gt;
&lt;br /&gt;
=== Java Card ===&lt;br /&gt;
From the optional packages JCOP 3 does not support the javacardx.framework. From the crypto and signature classes, some algorithms are not supported, i.e. MD5 and EC F2M. The key lengths (amongst others) supported are AES-128, DES, 2DES3, 3DES3, EC up to 521 bit, RSA up to 2048 bit.&lt;br /&gt;
&lt;br /&gt;
=== Communication Protocols ===&lt;br /&gt;
JCOP 3 supports ISO-7816, ISO-14443 type A and B (through SWP - NFC controller) and SWP/HCI. USB low speed was supported only on JCOP v2.3.1.&lt;br /&gt;
&lt;br /&gt;
=== Extensions ===&lt;br /&gt;
JCOP 3 supports various extensions, i.e. MIFARE DESFIRE management support for [[MIFARE4Mobile]]. It is important to know that usage of extensions used in applets (not part of Java Card and GlobalPlatform specifications) makes this applications not portable to other Java Card and GlobalPlatform compliant operating systems.&lt;br /&gt;
&lt;br /&gt;
=== JCOP Tools ===&lt;br /&gt;
JCOP Tools were initially developed by IBM. The first module was a command line tool called JCOP Shell or JCShell. The development tools is a plugin to [[Eclipse (software)|Eclipse]] [[Integrated development environment|IDE]]. NXP has maintained JCOP Tools and extended it with a CryptoPlugin and new JCOP simulations. The tools are offered for [[Windows]], [[macOS]] and [[Linux]] platforms.&lt;br /&gt;
&lt;br /&gt;
==== JCShell ====&lt;br /&gt;
JCShell is a Java program, command line tool which also supports scripting. The JCShell scripting language is sophisticated to create test and verification scripts. JCShell has a plugin structure where existing base plugin (similar to Eclipse plugins) which supports the most basic on-card APDU commands such as raw send is extended with GlobalPlatform and crypto functionality. All the plugins are extendable by own functionality (in [[Java (programming language)|Java]]). There is a standalone JCShell version without the need to install Eclipse and an Eclipse-based version embedded in form of a View in the Debug perspective of JCOP Tools plugin.11&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [https://www.oracle.com/java/java-card/ Java Card technology page at Oracle]&lt;br /&gt;
* [http://javacardforum.com Java Card Forum]&lt;br /&gt;
&lt;br /&gt;
[[Category:Smart cards]]&lt;br /&gt;
[[Category:Java platform]]&lt;br /&gt;
[[Category:Embedded operating systems]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Grand&#039;mere Eugene</name></author>
	</entry>
</feed>