pro.javacard.gp.GPException: СТРОГОЕ ПРЕДУПРЕЖДЕНИЕ: обнаружен незащищенный JCOP

При попытке вывести содержимое смарт-карты с помощью следующей команды

gp -l

Получение следующего исключения:

pro.javacard.gp.GPException: STRICT WARNING: Unfused JCOP detected
at pro.javacard.gp.GlobalPlatform.printStrictWarning(GlobalPlatform.java:184)
at pro.javacard.gp.GlobalPlatform.select(GlobalPlatform.java:213)
at pro.javacard.gp.GPTool.main(GPTool.java:334)

При поиске узнал, что карта не персонифицирована. Мой вопрос: что такое предварительная персонализация смарт-карт? Кто занимается этой препресонализацией? это продавец?


person Kunal Surana    schedule 11.02.2016    source источник


Ответы (4)


Предварительная персонализация для JCOP Cards заключается в отправке набора команд в апплет с именем Root Applet.

Производитель установил этот специальный апплет, чтобы предоставить некоторые специальные доступы для поставщиков карт (г-н Бодевес упомянул эти доступы в своем ответе).

Корневой апплет AID с именем Transport Key безопасно передается провайдеру карты или любому, кто запросил у NXP карты без слияния. (Этот AID зависит от карты или набора карт, запрошенных поставщиком)

Команды, которые поддерживает этот апплет, включали некоторые команды READ и WRITE для ограниченной области EEPROM.

Последним и обязательным шагом предварительной персонализации является отправка команды FUSE в апплет ROOT. Эта команда отключает корневой апплет навсегда.

До предварительной персонализации на карте нет доступного для выбора домена безопасности, и корневой апплет является единственным активным объектом на карте, но после предварительной персонализации у вас есть доступ к домену безопасности и больше нет доступа к корневому апплету.

Я считаю эту информацию конфиденциальной, поэтому не публикуйте ее! :)

person Ebrahim Ghasemi    schedule 12.02.2016
comment
что такое вызов хоста и базовый ключ апплета. Этот базовый ключ апплета отправляется на карту с помощью командного байта E6? что означает этот байт инструкции E6? Пожалуйста, помогите мне с некоторым пониманием этих команд? - person Kunal Surana; 15.02.2016
comment
@KunalSurana Host Challenge — это 8-байтовое случайное число, которое используется в процессе взаимной аутентификации между смарт-картой и хостом. (Вы можете прочитать об этом в Спецификации Global Platform Card). - person Ebrahim Ghasemi; 15.02.2016
comment
И я не знаю, что такое базовый ключ апплета, я думаю, что у нас нет ничего известного с названием базового ключа апплета. Что касается INS=E6, это для удаления DF на основе стандарта ISO7816 и для УСТАНОВКИ на основе глобального стандарта платформы. Это может означать что угодно! (Апплет, которому вы отправляете эту команду, укажите ее значение) - person Ebrahim Ghasemi; 15.02.2016

Предварительная персонализация для карты Java состоит в основном из настройки параметров в операционной системе. Вы должны думать о таких вещах, как ATR, но также, например, о наборе ключей глобальной платформы, конфигурации памяти и т. Д. После того, как карта «слита», эти настройки больше нельзя изменить.

Предварительная персонализация не стандартизирована. Это означает, что вы должны связаться с производителем карты по поводу деталей. В данном случае это означает NXP Semiconductors.

Слияние означает, что этап предварительной персонализации завершен и что настройки больше не могут быть изменены. Это указывает на плавление резистора для отключения определенных функций чипа. В современных схемах чипов / операционных систем это вполне может быть логистический процесс.

При использовании в полевых условиях чипы обычно должны быть сплавлены. Обычно предварительная персонализация проводится у производителя демо-карт или в защищенных помещениях производителей карт или вкладышей.

Как правило, вы должны пройти аутентификацию на карте, чтобы выполнить предварительную персонализацию. Таким образом, наличие незакрепленной карты может не дать вам особых способностей.


Обратите внимание, что если вы посмотрите на это слово, предварительная персонализация может включать в себя все, что предшествует персонализации. Таким образом, это может включать, например. загрузка апплета. В этом смысле, вероятно, лучше подумать о команде fuse для завершения фазы инициализации. Поскольку в этом нет авторитета, вы услышите разные названия для разных этапов процесса производства чипов.

person Maarten Bodewes    schedule 12.02.2016

Для большинства приложений смарт-карт требуется, чтобы определенные программы и/или файлы данных были установлены на каждом чипе, прежде чем карта может быть персонализирована и передана конкретному держателю карты. Эта общая подготовка программного обеспечения или файлов на карте выполняется посредством операции, называемой предварительной персонализацией.

Таким образом, это делается продавцом или держателем карты.

person vikky    schedule 12.02.2016

Предварительная персонализация похожа на настройку смарт-карты для конкретных требований. В предперсонализации могут быть следующие шаги: 1) Изменение исторических байтов ATR. 2) Установка доменов безопасности и/или приложений. 3) Хранение ключей безопасного канала глобальной платформы. 4) Персонализация доменов безопасности. ... так далее...

Зачем нам персонализация?

Мы делаем общую операционную систему для смарт-карт, чтобы ее можно было настроить в соответствии с требованиями. Например, конфигурация для Visa, Master Card и т. д.

Поэтому после загрузки ОС Smart Card на чип нам необходимо персонализировать карту в соответствии с требуемыми функциями.

Кто занимается этой препресонализацией?

Это зависит от производителя карты или поставщика, которые могут настроить в соответствии с требованиями.

person Anurag Bajpai    schedule 12.02.2016