Как начать работу с Java-картами?
Я новичок в разработке смарт-карт. Пожалуйста, помогите мне понять, как начать.
- Каковы отношения между Java-картой и JCOP?
- как сопоставить версию JCOP с GlobalPlatform Спецификация Карты? Например, с какой спецификацией сопоставляется JCOP 2.4.1?
- когда мне нужно кодировать один API против другого?
- где я могу найти хорошие уроки для начала?
5 ответов
- JCOP-это программная платформа от IBM, которая реализует API Javacard и GlobalPlatform (ранее открытая платформа). Теперь принадлежит и управляется NXP.
- JCOP 2.4.1? Вероятно, GP 2.1.1. Сделать поиск в интернете для конкретных продукции.
- javacard и GP:
- Javacard используется для написания приложений-апплетов javacard - для платформ смарт-карт, используя язык программирования Java и ограниченную версию JVM и java библиотеки.
- GlobalPlatform-это спецификация для управления смарт-картами с апплетами, определяющая операции для таких вещей, как:
- управление жизненным циклом карты,
- проверки подлинности карты/узла,
- установка/удаление/создание / выбор апплетов и
- управление политиками безопасности на карточке.
- используя GlobalPlatform, вы обменяете APDUs с картой GP для вышеупомянутых операций; используя javacard вы будете писать апплеты, которые могут принимать и обрабатывать APDUs, специфичные для вашего приложения. GlobalPlatform не javacard специфический, но javacard является единственной соответствующей технологией для разработки апплетов смарт-карт.
- для учебников javacard начните с сайт javacard. Просмотрите раздел документации для Начало Работы вещи. Скачать dev kit, и вы найдете некоторые HTML howtos. Для GlobalPlatform, вам нужно будет начать с последней спецификации GP; это, конечно, не учебник, но я не думаю, что вы найдете что-то более полезное. Спецификация потребует сильных основ smartcard. Также смотрите необходимые вещи для запуска программирования смарт-карт с помощью Javacard
Я использовал этот отличный учебник при запуске с JavaCard:http://javacard.vetilles.com/tutorial/
jcManager http://www.brokenmill.com/2010/03/java-secure-card-manager/ поставляется с исходным кодом, который пригодится
Это может быть полезно - я провел некоторое время, получая старые учебники, работающие на реальном оборудовании (например, физические Java-карты с GP), включая отправку APDUs и т. д. Я собрал некоторые из моих заметок в видео-формате, как это было слишком много работы, чтобы записать каждую мелочь.
видео здесь:https://www.youtube.com/watch?v=oj2l0X8D4y0&hd=1 и включает в себя в основном быстрый прогон того, что нужно установить, создание программы, установку на Java-карту и разговор с указанная программа через Python. Это очень, очень просто, но иногда это то, что вам нужно...
два лучших вводных уроки Я нашел:
и этот на JavaWorld,
например, код есть раздел под названием обучение в этом РЕПО Github,
javacard-куратор-список апплетов
чтобы дать представление о первых темах, которые обычно охватываются, заголовки из второй ссылки:
создание апплета
указание функций апплета
С Указанием СПИДа
определение структуры и метода класса функции апплета
определение интерфейса между апплетом и приложением терминала
праймер APDU
определение команд APDU
класс Javacard APDU
апплет обрабатывает команду APDU, вызывая методы на объекте APDU. В общем, он выполняет следующие шаги:
Шаг 1. Получить буфер APDU
Шаг 2. Получить данные
Шаг 3. Вернуть данные
Шаг 4. Вернуть статус слово
построение кода апплета
реализация проверки ошибок
эта статья Zhiqun Чэнь кто и писал книги технология Java Card для смарт-карты