Rus Eng
Решения
Технологии
Дискуссии
Компания
 
Rambler's Top100
©Copyright iNetique
info@inetique.ru

 

С архитектурной точки зрения JCRE  располагается поверх собственной системы поддержки смарт-карты. JCRE содержит виртуальную машину Java Card (интерпретатор байт-кода), классы Java Card API, возможные специализированные API и, естественно, собственные системные классы. Общая архитектура смарт-карт представлена на следующем рисунке:

Апплеты:
Апплет
Апплет
Апплет

JCRE:
API
Расширения
Инсталлятор
Системные классы:
Управление аплетами
Управление транзакциями
Сетевые протоколы
Другие сервисы
Виртуальная машина Java Card
Native code

Аппаратный уровень смарт-карты и собственные методы

JCRE позволяет разделить собственно апплеты и конкретную реализацию смарт-карты. Таким образом поддерживается главная идея Java – переносимость. Собственные методы смарт-карты (так называемый native code) поддерживают низкоуровневую передачу данных, управление памятью, криптографию и т.п.

Системные классы  отвечают за управление транзакциями, за взаимодействие апплета и пользовательского приложения, а также за создание, запуск и остановку апплета.

Java Card API включает в себя базовый пакет и расширения. Расширения могут включать в себя специфические пакеты для конкретных вертикальных рынков.

Инсталлятор, во взаимодействии с программой инсталляции вне карты обеспечивает безопасную загрузку программ  (апплетов). Инсталлятор может и отсутствовать. В этом случае все программное обеспечение записывается в память карты в процессе ее изготовления.

 

Жизненный цикл JCRE

На рабочей станции виртуальная машина Java выполняется как обычный процесс операционной системы. Данные и объекты создаются в памяти общего доступа. Как только процесс прерывается, Java приложение и все созданные объекты автоматически уничтожаются.
Виртуальная машина Java Card выполняется внутри JCRE. Инициализация JCRE происходит один раз в течении жизни карты. Это происходит в момент инициализации карты. При инсталляции апплета JCRE создает экземпляр этого объекта, а далее уже сам апплет создает нужные ему объекты.