Java Card OpenPlatform - Java Card OpenPlatform
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Разработчик | IBM, > 2007 NXP |
---|---|
Семейство ОС | Встроенные операционные системы |
Рабочее состояние | ток |
Последний релиз | JCOP 3.1 |
Маркетинговая цель | Смарт-карты, Безопасные элементы, USB токены безопасности, Телематика |
Платформы | Карта Java |
Официальный веб-сайт | [1] |
Java Card OpenPlatform (JCOP) это интеллектуальная карточка Операционная система для Карта Java платформа, разработанная IBM Цюрихская исследовательская лаборатория. 31 января 2006 г. ответственность за разработку и поддержку была передана группе разработчиков смарт-карт IBM в г. Бёблинген, Германия.С июля 2007 г. деятельность по поддержке и развитию операционной системы JCOP на NXP / Philips кремний обслуживаются Полупроводники NXP.
Название происходит из стандартов, которым оно соответствует:
- Карта Java технические характеристики
- GlobalPlatform (ранее известная как Visa Inc OpenPlatform) спецификации
Java Card JCOP имеет Виртуальная машина Java Card (JCVM), который позволяет запускать приложения, написанные на Язык программирования Java.
История
Первые маски JC / OP
Маска 0: 1998 (весна)
- Первый прототип на Атмель 8-битный uC - флэш-память, медленная
Маска 1: 1998
- Сименс /Infineon SLE66 IC - Открытый ключ криптография
Маска 2 и 3: 1999
- Gemplus International (сейчас же Gemalto ) лицензированный JC / OP
- Базовая маска для GemXpresso продуктовая линейка
- Генерация открытого ключа
- Visa OpenPlatform
Маска 4: 1999
- Бесконтактный JC / OP на Philips Mifare Профессиональный чип
- 256 байт RAM, 20 КБ ROM и 8 КБ EEPROM
- Двойной интерфейс
JCOP01 и сотрудничество с Philips
Маска 5: 2000
- Микроконтроллер смарт-карты Philips P8WE
- «JCOP01» является основой для всех более поздних версий.
- JCOP по лицензии IBM
- JCOP Инструменты для разработки
Программа открытия визы
- Чтобы противостоять MasterCard С MULTOS
- Сотрудничество между IBM (ОС), Visa (OpenPlatform) и Philips (IC)
- JCOP v1 принадлежит Visa
JCOP v2
- Принадлежит IBM, продается Philips
- Philips SmartMX контроллер (SMX)
JCOP v2.2
- GlobalPlatform 2.1.1
- Карта Java 2.2.1
- Криптография с эллиптическими кривыми (ECC) Поддержка F2M
- Инструменты JCOP Затмение на основании
Перевод 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
- первая разработанная NXP версия JCOP
- Поддержка ECC GF (p)
- Карта Java 2.2.2
JCOP v2.4.1
- Поддержка расчета примитивов ECC (сложение и умножение точек)
- Общие критерии Сертификация 5+ (CC)
- EMV, Visa и MasterCard одобрены
- NFC интеграция в комбинированный чип PN65N: NFC и Безопасный элемент
JCOP v2.4.2
- дополнительные алгоритмы для поддержки вариантов использования электронного правительства, т. е. AES CMAC
- CC 5+
- Интеграция NFC в PN65O
JCOP 3
мобильный
Контроллер смарт-карт SmartMX2, P61, постоянная память на основе флэш-памяти
JCOP 3.0
- Интеграция NFC в PN65T
- Классическая версия Java Card 3.0.1
- GlobalPlatform 2.2.1
- Сертификация платформы EMV
JCOP 3.1
- Интеграция NFC в PN66T
карта
Постоянная память на основе SMX2, P60, EEPROM
JCOP 3.x (не выпущен 26 декабря 2014 г.)
Технический обзор
JCOP - это операционная система для чувствительной к безопасности среды встроенных систем, в частности для смарт-карт или контроллеров защищенных элементов. Функциональную архитектуру можно разделить на три части:
- Карточка Java, для разработки приложений, т.е. 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 (пока) не поддерживаются.
GlobalPlatform
GP - это стандарт высокого уровня с множеством опций. Начиная с JCOP 3, была добавлена поддержка GP 2.2.1, в частности, для поддержки мобильных вариантов использования JCOP 3 полностью совместим с конфигурацией Secure Element.
Спецификация карты GP 2.2.1, ядро
- ориентированная на эмитента или простая модель
- делегированное управление
- уполномоченное руководство
- центр проверки (контролирующий орган GP 2.1.1)
- Шаблон проверки подлинности данных (DAP)
- Протокол безопасного канала 02 (SCP), псевдослучайный, C-MAC, C-ENC, R-MAC, R-ENC
- все привилегии поддерживаются
Поправка А - Управление конфиденциальным содержимым карты (C3M)
- см. детали реализации в конфигурации UICC и поправке E
Поправка C - Бесконтактные услуги
- каждый протокол, но Фелика поддерживается
- дополнительно поддерживаются MIFARE Classic и DESFIRE
- Уведомления HCI поддерживаются
Поправка D - Протокол безопасного канала 03 (AES)
- только AES-128
- поддерживаются все варианты (случайный)
Поправка E - Повышение безопасности
- SHA-256 и EC-256
- C3M сценарий # 3
Конфигурация UICC
- сценарии №1, №2А и №2Б
- SCP 80 и 81 не поддерживаются (ETSI)
Конфигурация Secure Element
- 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 для MIFARE4Мобильный. Важно знать, что использование расширений, используемых в апплетах (не являющихся частью спецификаций Java Card и GlobalPlatform), делает эти приложения непереносимыми в другие операционные системы, совместимые с Java Card и GlobalPlatform.
Инструменты JCOP
Инструменты JCOP изначально были разработаны IBM. Первым модулем был инструмент командной строки под названием JCOP Shell или JCShell. Инструменты разработки - это плагин для Затмение IDE. NXP поддерживает JCOP Tools и расширяет его с помощью CryptoPlugin и новых симуляций JCOP. Инструменты предлагаются для Windows, macOS и Linux платформы.
JCShell
JCShell - это программа на Java, инструмент командной строки, которая также поддерживает сценарии. Язык сценариев JCShell сложен для создания сценариев тестирования и проверки. JCShell имеет структуру подключаемых модулей, в которой существующий базовый подключаемый модуль (аналогичный подключаемым модулям Eclipse), который поддерживает самые основные команды APDU на карте, такие как необработанная отправка, расширяется с помощью GlobalPlatform и криптографических функций. Все плагины расширяются за счет собственной функциональности (в Ява ). Существует автономная версия JCShell без необходимости установки Eclipse и версия на основе Eclipse, встроенная в виде представления в перспективе отладки плагина JCOP Tools.