Java-карта с открытой платформой
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Разработчик | IBM , > 2007 NXP |
---|---|
Семейство ОС | Встроенные операционные системы |
Рабочее состояние | Текущий |
Последний выпуск | СОП 3.1 |
Маркетинговая цель | Смарт-карты , Элементы безопасности , USB- токены безопасности , Телематика |
Платформы | Java-карта |
Официальный сайт | Идентификатор JCOP и оплата JCOP |
Java Card OpenPlatform ( JCOP ) — для смарт-карт операционная система для платформы Java Card , разработанная исследовательской лабораторией IBM в Цюрихе. 31 января 2006 года обязанности по разработке и поддержке были переданы команде IBM Smart Card Technology в Бёблингене , Германия . С июля 2007 года поддержка и разработка операционной системы JCOP на кристаллах NXP / Philips осуществляется компанией NXP Semiconductors .
Название происходит от стандартов, которым оно соответствует:
- карты Java Характеристики
- Спецификации GlobalPlatform (ранее известной как Visa Inc OpenPlatform)
Карта Java Card JCOP имеет виртуальную машину Java Card (JCVM), которая позволяет запускать приложения, написанные на языке программирования Java .
История
[ редактировать ]Первые маски JC/OP
[ редактировать ]Маска 0 : 1998 (весна)
- Первый прототип на 8-битном uC Atmel — флэш-память, медленная
Маска 1: 1998 г.
- Siemens / Infineon SLE66 IC – с открытым ключом криптография
Маска 2 и 3: 1999 г.
- Gemplus International (теперь Gemalto ) имеет лицензию JC/OP.
- Базовая маска для GemXpresso линейки продуктов
- Генерация открытого ключа
- Виза Открытая Платформа
Маска 4: 1999 г.
- Philips Mifare Pro Бесконтактный JC/OP на чипе
- 256 байт ОЗУ, 20 КБ ПЗУ и 8 КБ EEPROM
- Двойной интерфейс
JCOP01 и сотрудничество с Philips
[ редактировать ]Маска 5 : 2000 г.
- Микроконтроллер смарт-карты Philips P8WE
- «JCOP01» является основой для всех последующих версий.
- JCOP по лицензии IBM
- Инструменты JCOP для разработки
Программа визового прорыва
- Чтобы противостоять MasterCard от MULTOS
- Сотрудничество между IBM (OS), Visa (OpenPlatform) и Philips (IC)
- JCOP v1 принадлежит Visa
JCOP v2
- Принадлежит IBM, продано Philips
- Philips SmartMX (SMX) Контроллер
JCOP v2.2
- Глобальная Платформа 2.1.1
- Java-карта 2.2.1
- Поддержка криптографии эллиптических кривых (ECC) F2M
- Инструменты JCOP Eclipse на основе
Передача JCOP
[ редактировать ]JCOP v2.2.1 – JCOP v2.3.1
- Принадлежит IBM, продано Philips/NXP
- Разработка передана IBM в Бёблингене, Германия.
- USB-интерфейс
JCOP v2.3.2
- Технология JCOP, принадлежащая IBM
- Изменение политики в IBM
- Лицензия на исходный код приобретена NXP Semiconductors.
- Для обслуживания запросов и проектов клиентов
JCOP от NXP
[ редактировать ]JCOP v2.4
- первая версия JCOP, разработанная NXP
- Поддержка ECC GF(p)
- Java-карта 2.2.2
JCOP v2.4.1
- Поддержка примитивных вычислений ECC (сложение и умножение точек)
- Сертификация по общим критериям 5+ (CC)
- Одобрено EMV, Visa и MasterCard
- Интеграция NFC в комбинированный чип PN65N: NFC и Secure Element
JCOP v2.4.2
- дополнительные алгоритмы для поддержки сценариев использования электронного правительства, например AES CMAC
- СС 5+
- Интеграция NFC в PN65O
КСОП 3
[ редактировать ]мобильный
[ редактировать ]Контроллер смарт-карт SmartMX2, P61, энергонезависимая флэш-память
JCOP 3.0
- Интеграция NFC в PN65T
- Классическая версия Java Card 3.0.1
- Глобальная Платформа 2.2.1
- Сертификация платформы EMV
СОП 3.1
- Интеграция NFC в PN66T
карта
[ редактировать ]SMX2, P60, постоянная память на основе EEPROM
JCOP 3.x (не выпущено по состоянию на 26 декабря 2014 г.)
Технический обзор
[ редактировать ]JCOP — это операционная система для чувствительных к безопасности встроенных систем, в частности, для смарт-карт или контроллеров защищенных элементов. Функциональную архитектуру можно разделить на три части:
- Java Card для разработки приложений, т.е. API и структура карточных апплетов, аналогичная файлам классов.
- GlobalPlatform, для администрирования приложений и операционной системы, т.е. загрузки и контроля доступа.
- Собственные функции JCOP, в основном расширения API Java Card, например, примитивные вычисления ECC или MIFARE DESFIRE. управление
NXP также предлагает эмуляции MIFARE для Classic и DESFIRE на том же чипе, что и дополнительные (родные) операционные системы. Хотя JCOP основан на открытых стандартах, технология MIFARE специфична для NXP. Апплеты Java Card, работающие в JCOP, затем можно использовать для управления памятью MIFARE через API Java Card. MIFARE Plus и MIFARE Ultralight (пока) не поддерживаются.
Глобальная платформа
[ редактировать ]GP — это стандарт высокого уровня с множеством опций. Начиная с JCOP 3, была добавлена поддержка GP 2.2.1, в частности, для поддержки случаев мобильного использования. JCOP 3 полностью совместим с конфигурацией Secure Element.
Спецификация карты GP 2.2.1, ядро
- эмитентцентричная или простая модель
- делегированное управление
- уполномоченное руководство
- орган проверки (контролирующий орган ГП 2.1.1)
- Шаблон аутентификации данных (DAP)
- Протокол безопасного канала 02 (SCP), псевдослучайный, C-MAC, C-ENC, R-MAC, R-ENC
- все привилегии поддерживаются
Поправка A – Управление конфиденциальным содержанием карт (C3M)
- подробности реализации см. в конфигурации UICC и поправке E.
Поправка C – Бесконтактные услуги
- все протоколы, кроме FeliCa поддерживаются
- дополнительно поддерживаются MIFARE Classic и DESFIRE
- Уведомления HCI поддерживаются
Поправка D – Протокол безопасного канала 03 (AES)
- только АЕС-128
- поддерживаются все параметры (случайно)
Поправка E – Обновление безопасности
- ША-256 и ЕС-256
- Сценарий C3M №3
Конфигурация UICC
- сценарии №1, №2А и №2Б
- SCP 80 и 81 не поддерживаются (ETSI)
Конфигурация безопасного элемента
- JCOP 3 полностью соответствует требованиям
Java-карта
[ редактировать ]Из дополнительных пакетов JCOP 3 не поддерживает javacardx.framework. Из классов шифрования и подписи некоторые алгоритмы не поддерживаются, например MD5 и EC F2M. Поддерживаемые длины ключей (среди прочих): AES-128, DES, 2DES3, 3DES3, EC до 521 бит, RSA до 2048 бит.
Протоколы связи
[ редактировать ]JCOP 3 поддерживает ISO-7816, ISO-14443 типа A и B (через SWP — контроллер NFC) и SWP/HCI. Низкая скорость USB поддерживалась только в JCOP v2.3.1.
Расширения
[ редактировать ]JCOP 3 поддерживает различные расширения, например поддержку управления MIFARE DESFIRE для MIFARE4Mobile . Важно знать, что использование расширений, используемых в апплетах (не являющихся частью спецификаций Java Card и GlobalPlatform), делает эти приложения непереносимыми в другие операционные системы, совместимые с Java Card и GlobalPlatform.
Инструменты JCOP
[ редактировать ]Инструменты JCOP изначально были разработаны IBM. Первым модулем был инструмент командной строки под названием JCOP Shell или JCShell. Инструменты разработки представляют собой плагин к Eclipse IDE . NXP поддерживает JCOP Tools и расширяет его с помощью CryptoPlugin и новых моделей JCOP. Инструменты предлагаются для платформ Windows , macOS и Linux .
JCShell
[ редактировать ]JCShell — это Java-программа, инструмент командной строки, который также поддерживает сценарии. Язык сценариев JCShell позволяет создавать сценарии тестирования и проверки. JCShell имеет структуру плагинов, в которой существующий базовый плагин (аналогичный плагинам Eclipse), поддерживающий самые основные команды APDU на карте, такие как необработанная отправка, расширяется за счет функций GlobalPlatform и шифрования. Все плагины расширяются собственным функционалом (на языке Java ). Существует автономная версия JCShell без необходимости установки Eclipse, а также версия на основе Eclipse, встроенная в виде представления в перспективе отладки плагина JCOP Tools.11