Возможно ли для апплета javacard загрузить и установить другой апплет?
Нет, это невозможно, просто для этого нет API. Во всех примерах из Global Platform, которая, вероятно, более актуальна, чем спецификации Java Card, данные апплета загружаются через команды APDU. Конечно, в Java Card API есть метод Applet.install
, но он вызывается системой и не может использоваться другим апплетом - даже доменом безопасности, насколько я знаю.
Возможно ли, чтобы апплет отправлял APDU (информацию) другому апплету?
Да, вы можете иметь один класс, реализующий Shareable
интерфейс и поделиться им через getShareableInterfaceObject
метод. Все учебные пособия по Java будут включать это.
Буфер APDU не может использоваться совместно, но в этом нет необходимости, вы можете просто получить к нему доступ с помощью методов APDU
. Из API:
Среда выполнения карты Java определяет объект APDU как временный Java Объект точки входа среды выполнения карты (см. Спецификацию среды выполнения, Java Платформа карты, Classi *) 1040 * издание, раздел 6.2.1 для деталей). Доступ к временной среде Java Card Entry Point Object можно получить из любого контекста апплета. Ссылки на эти временные объекты не могут быть сохранены в переменных класса или переменных экземпляра или компонентах массива.
Пожалуйста, прочитайте учебные пособия или купите старую, но все еще действующую Java карточную технологию для смарт-карт . Он старый, но основные принципы по-прежнему полностью действительны, и большинство других основ c вещей можно узнать, изучив API.