2017-06-20 4 views
4

Wenn Sie eine JavaCard-Smartcard einschalten und mit einem Applet kommunizieren möchten, müssen Sie das Applet normalerweise zuerst mit seiner AID auswählen.Greifen Sie direkt auf ein Applet ohne AID-Auswahl zu

Gibt es eine Möglichkeit, ein "Standard-Applet" zu haben, das beim Einschalten der Karte ausgewählt wird?

Was ich wirklich tun möchte, ist in der Lage, meine APDUs auf Anwendungsebene sofort nach Auswahl der Karte zu senden und nicht durch den Anwendungsauswahlprozess gehen zu müssen.

Ist das möglich? Wenn das so ist, wie?

+0

Heh, es heißt ein "default selected" also hast du schon die Wörter angegeben :) –

Antwort

6

Wenn Ihre Java Card-Smartcard die Global Platform Card-Spezifikation implementiert, können Sie in der Regel ein Applet definieren, das beim Zurücksetzen implizit auf dem logischen Basiskanal ausgewählt wird. Beim Einschalten (Zurücksetzen) der Karte wird das Applet daher standardmäßig ausgewählt und empfängt sofort alle Befehle (mit Ausnahme derjenigen, die von der Laufzeitumgebung gehandhabt werden, z. B. Auswahl anderer Applets, logische Kanalverwaltung usw.).

Sie können ein Applet als das standardmäßig ausgewählte Applet festlegen, indem Sie ihm die Berechtigung "Standard ausgewählt" (GP 2.1.1 Terminologie) oder "Karten zurücksetzen" (GP 2.2 Terminologie) geben. Dies wird durch Bit 3 im (ersten) Privilegienbyte gesetzt. Nur eine Anwendung kann diese Berechtigung haben.

Wenn Sie beispielsweise GlobalPlatformPro verwenden, können Sie die Optionen --default (während der Installation) oder --make-default <AID> (für ein vorhandenes Applet) verwenden, um diese Berechtigung festzulegen.


Beachten Sie, dass zwischen Sein standardmäßig ausgewählt und ausgewählt von AID durch die Erfassung des SELECT-APDU innerhalb der Applet#process method unterscheiden können. Am besten rufen Sie Applet.selectingApplet an, um zu überprüfen, ob eine explizite Auswahl durch AID stattgefunden hat.

+2

Mann, bin ich froh, dass ich Oracle gebeten habe, die Java Card Dokumentation zur Verfügung zu stellen :) –

+0

@MaartenBodewes Danke für die Bearbeitung :-) –

Verwandte Themen