Ifdtest2 Teil E (LOGO für SC-Lesegerät) – (manueller Test)
Mit diesem manuellen Test für Kartenleser wird die Funktionalität des Smartcard-Lesegeräts durch Validierung der PC/SC-Workgroup-Testkarten überprüft. Sie können Teil E mit einer beliebigen Smartcard ausführen.
Testdetails
Spezifikationen |
|
Plattformen |
|
Unterstützte Versionen |
|
Voraussichtliche Laufzeit (in Minuten) | 5 |
Kategorie | Kompatibilität |
Zeitüberschreitung (in Minuten) | 300 |
Neustart erforderlich | false |
Erfordert eine spezielle Konfiguration | false |
Typ | automatic |
Zusätzliche Dokumentation
Tests in diesem Funktionsbereich enthalten möglicherweise zusätzliche Dokumentation, einschließlich Informationen zu Voraussetzungen, Einrichtung und Fehlerbehebung, die in den folgenden Themen zu finden sind:
Ausführen des Tests
Bevor Sie den Test ausführen, schließen Sie die Testeinrichtung ab, wie in den Testanforderungen beschrieben: Voraussetzungen für das Testen von Smartcard-Lesegeräten.
Problembehandlung
Informationen zur allgemeinen Problembehandlung bei HLK-Testfehlern finden Sie unter Problembehandlung bei Windows HLK-Testfehlern.
Informationen zur Problembehandlung finden Sie unter Problembehandlung bei Device.Input-Tests.
Weitere Informationen
Dieser Test überprüft die Funktionalität des Smartcard-Lesegeräts, indem die Revision zwei der PC/SC-Arbeitsgruppen-Testkarten validiert wird.
Der Test und seine Hardware müssen in der Lage sein, spezifische IFD-Tests auszuführen und einen Testbericht zu erstellen. Spezifische Anforderungen betreffen den Nennbetrieb und den Ausnahmebetrieb (Fehlerbedingungen). Außerdem müssen diese auf alle vom Reader-Subsystem unterstützten Protokolle angewendet werden.
Für die folgenden Arten von Smartcard-Lesegeräten muss eine Konfigurationsdatei bereitgestellt werden:
- Kontaktlos
- Virtuell
- Erfordert Netzwerk
Die Konfigurationsdatei muss ifdtest_config.xml benannt werden und muss in C:\SmartCardReaderTest platziert werden. Das folgende Beispiel zeigt eine Beispielkonfigurationsdatei:
<SmartCardReader>
<Version>1</Version>
<Contactless>False</Contactless>
<Virtual>False</Virtual>
<Network>False</Network>
</SmartCardReader>
IFDTEST2 führt Testfälle in drei separaten Testaufträgen aus: Leseschnittstellentests werden ohne etwas in die Leseausgabe eingefügt. Azure Ressourcen-Manager-Status-Testfälle werden durchgeführt, während eine Musterkarte in das Lesegerät eingeführt und aus diesem entfernt wird, und behandeln die Karteneinführungserkennung unter verschiedenen Bedingungen (jede Karte kann für diesen Test verwendet werden).
Kartenprotokolltests umfassen den Betrieb sowohl mit eingeführten repräsentativen, gewöhnlich erhältlichen Chipkarten als auch mit speziellen Karten, die ein bestimmtes speziell programmiertes Verhalten zeigen. Die Testfälle mit verfügbaren Karten führen Routinevorgänge auf Karten aus, die ausgewählt sind, um eine Vielzahl von Kommunikationsgeschwindigkeiten und Protokollkombinationen darzustellen. Diese Tests haben sich mit dem Kartensatz 2 geändert.
Testfälle des Ressourcen-Manager-Status
Teil A
Die Testfälle der Kartenüberwachung prüfen die korrekte Erkennung des Einsteckzustands der Smartcard und die korrekte Handhabung von Vorgängen, die durch das unerwartete Entfernen der Karte unterbrochen wurden.
Testen der Erkennung leerer Leser mithilfe von IOCTL_SMARTCARD_IS_PRESENT
Testen der Erkennung der eingefügten Karte mithilfe von IOCTL_SMARTCARD_IS_PRESENT
Testen der Entfernung der eingefügten Karte mithilfe von IOCTL_SMARTCARD_IS_ABSENT
Testen Sie 15 Sekunden lang die korrekte Handhabung von zufällig zeitgesteuerten Aktionen zum Einlegen und Entfernen von Karten
- Überprüfen Sie, ob IOCTL_SMARTCARD_IS_PRESENT und IOCTL_SMARTCARD_IS_ABSENT gültige Ergebnisse erstellen
Teil C
Die Ressourcenmanager-Testfälle verifizieren den erfolgreichen Abschluss von Zustandsänderungsoperationen, von denen normalerweise erwartet wird, dass sie von dem Smartcard-Ressourcenmanager befohlen werden.
Überprüfen, ob IOCTL_SMARTCARD_GET_STATE ohne Karte erfolgreich ist
Überprüfen, ob der zurückgegebene Status gültig ist
Überprüfen der korrekten Rückgabe von IOCTL_SMARTCARD_IS_PRESENT
Überprüfen der korrekten Rückgabe von IOCTL_SMARTCARD_IS_PRESENT
Operator fügt eine Karte ein
Überprüfen, ob IOCTL_SMARTCARD_GET_STATE ohne Karte erfolgreich ist
Überprüfen, ob der zurückgegebene Status gültig ist
Überprüfen der korrekten Rückgabe von IOCTL_SMARTCARD_IS_PRESENT
Kalter Zurücksetzen der Karte
Überprüfen des Kartenstatus SCARD_NEGOTIABLE
Festlegen des Kartenprotokolls auf T0 oder T1
Überprüfen des Erfolgs von IOCTL_SMARTCARD_POWER zum Deaktivieren der Karte
Operator entfernt die Karte
Überprüfen, ob IOCTL_SMARTCARD_GET_STATE ohne Karte erfolgreich ist
Teil E
Die Power-Management-Testfälle verifizieren, dass der Treiber die korrekten Zustandsinformationen für das Lesegerät über Ruhezustandssequenzen hinweg zurückgibt, selbst wenn der Zustand des Lesegeräts während des Ruhezustands durch Einstecken oder Entfernen einer Karte geändert wird.
Operator entfernt alle Karten
Der Operator versetzt den Computer in den Ruhezustand
Operator startet Computer
Überprüfen Sie den Leserstatus SCARD_ABSENT bei der Rückkehr aus dem Ruhezustand
Operator fügt eine Karte ein
Der Operator versetzt den Computer in den Ruhezustand
Operator startet Computer
Überprüfen Sie den Leserstatus SCARD_ABSENT bei der Rückkehr aus dem Ruhezustand
Operator entfernt Karte
Der Operator versetzt den Computer in den Ruhezustand
Der Bediener entfernt die Karte während des Ruhezustands
Operator startet Computer
Überprüfen Sie den Leserstatus SCARD_ABSENT bei der Rückkehr aus dem Ruhezustand
Der Operator versetzt den Computer in den Ruhezustand
Der Bediener steckt die Karte während des Ruhezustands ein
Operator startet Computer
Überprüfen Sie den Leserstatus SCARD_ABSENT bei der Rückkehr aus dem Ruhezustand
Testfälle der Reader-Schnittstelle
Teil B
Testfälle für die Reader-Schnittstelle prüfen die korrekte Implementierungseigenschaft und Zustandsinformationen beim Reader-Treiber.
Überprüfen Sie die vom Lesegerät gemeldeten Attribute mit einer eingeführten Musterkarte
Testen Sie, dass der vom Treiber gemeldete Gerätename WDM PnP-konform ist
Testen Sie, ob der Treiber Attribut-Leseanforderungen mit NULL-Rückgabepuffer korrekt verarbeitet
Testen Sie, ob der Treiber anstehende E/A-Anforderungen korrekt stoppt, wenn der Treiber geschlossen und mit einem anstehenden E/A-Vorgang erneut geöffnet wird
Testen von Leseattributen ohne eingefügte Karte
SCARD_ATTR_VENDOR_NAME : Zeichenfolge ohne Länge null
SCARD_ATTR_VENDOR_IFD_TYPE : Zeichenfolge ohne Länge null
SCARD_ATTR_DEVICE_UNIT : ein 4 Byte- oder größerer Längenwert
SCARD_ATTR_ATR_STRING: Fehler beim Leseversuch
SCARD_ATTR_DEFAULT_CLK : 1000 <= Wert <= 20000
SCARD_ATTR_MAX_CLK : 1000 <= Wert <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE : Leseversuch erfolgreich
SCARD_ATTR_DEFAULT_DATA_RATE : Leseversuch erfolgreich
SCARD_ATTR_MAX_IFSD : 1 <= Wert <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE: Leseversuch schlägt fehl
Testen von Leseattributen ohne eingefügte Karte
SCARD_ATTR_VENDOR_NAME : Zeichenfolge ohne Länge null
SCARD_ATTR_VENDOR_IFD_TYPE : Zeichenfolge ohne Länge null
SCARD_ATTR_DEVICE_UNIT : ein 4 Byte- oder größerer Längenwert
SCARD_ATTR_ATR_STRING: Fehler beim Leseversuch
SCARD_ATTR_DEFAULT_CLK : 1000 <= Wert <= 20000
SCARD_ATTR_MAX_CLK : Wert 1000 <= Wert <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE : Leseversuch erfolgreich
SCARD_ATTR_DEFAULT_DATA_RATE : Leseversuch erfolgreich
SCARD_ATTR_MAX_IFSD : 1 <= Wert <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE : Wert = 0
Kartenzustand mit entfernter Karte mit IOCTL_SMARTCARD_GET_STATE : zustand <= SCARD_SWALLOWED
Karte zurücksetzen: Überprüfen des Ergebnisses ERROR_UNRECOGNIZED_MEDIA
Kartenprotokolltestfälle
Teil D
Infineon Technologies PC/SC Compliance Test Card (Karte 0 / unbeschriftet)
ATR: 3B EF 00 00 81 31 20 49
00 5C 50 43 54 10 27 F8
D2 76 00 00 38 33 00 4D
Leseversuch mit zu kleinem Puffer
Wartezeitverlängerungsanforderung - Anforderungszahl an Datei 0001 weiterleiten, zurücklesen und verifizieren
Block-Chaining-Resync-Test auf Datei 0002: Karte akzeptiert ersten Block. Fordert dann wiederholt eine erneute Übertragung von Block 2 an; Host-Resynchronisierungen - erwarten Sie ERROR_IO_DEVICE
Block-Chaining-Resync-Test auf Datei 0002: Karte erklärt wiederholt EDC-Fehler auf Block 2; Host-Resynchronisierungen - erwarten Sie ERROR_IO_DEVICE
Falsche Blockreihenfolge beim Lesen in Datei 0003 - erwarten Sie ERROR_IO_DEVICE
Ifsc-Anforderungsdatei-ID 0004
Zeitüberschreitung durch Lesen in Datei 0005 erzwingen - erwarten Sie ERROR_IO_DEVICE
Ergebnisdatei (A000) lesen und verarbeiten, Fehler analysieren und melden
Athena T0 Testkarte (Karte 1)
ATR: 3B D6 18 00 80 B1 80 6D
1F 03 80 51 00 61 10 30
9E
Zurücksetzen mit langer (ca. 900 mSec) ATR-Übertragungszeit
Protokoll auf T0 setzen, Erfolg erwarten
Löschen Sie alle Kartendateien mit einem proprietären Befehl, Erfolg erwarten
Testdatei 0002 erstellen, Erfolg erwarten
Testdatei 0002 auswählen, Erfolg erwarten
Schreiben Sie 256 Bytes als 4 Blöcke von 64 Bytes, Erfolg erwarten
Lesen und überprüfen Sie 256 Bytes als 4 Blöcke von 64 Bytes, Erfolg erwarten
Schreiben Sie 255 Bytes als einen einzigen Block, Erfolg erwarten. Die Karte empfängt die Bytes im Single-Byte-Modus, bis noch 8 Bytes übrig sind. An diesem Punkt werden die restlichen Daten vom Host als einzelner Block angefordert, Erfolg erwarten
Setzen Sie den Empfangspuffer auf 9 Byte und versuchen Sie, eine 10-Byte-Antwort von der Karte zu erhalten, erwarten Sie ERROR_INSUFFICIENT BUFFER
Senden Sie einen fehlerhaften (Lc widerspricht der Datenlänge) Auswahlbefehl 00 a4 00 00 08 00, erwarten Sie ERROR_INVALID_PARAMETER
Wählen Sie nicht vorhandene Datei aus, erwarten Sie 6A 82
Senden Sie den Befehl zum Stummschalten der Karte (80 00 01 00 01 11), erwarten Sie ERROR_SEM_TIMEOUT
Karte zurücksetzen
Senden Sie den Echobefehl an die Karte, um die Verlängerung der Wartezeit für die Anforderung von Nebenstellen für 1, 2, 5 und 30 Nebenstellen zu testen, Erfolg erwarten
Athena\Inverse Convention Test Card (Karte 2)
ATR: 3F 96 18 80 01 80 51 00
61 10 30 9F
Zurücksetzen mit langer (ca. 900 mSec) ATR-Übertragungszeit
Protokoll auf T0 setzen, Erfolg erwarten
Löschen Sie alle Kartendateien mit einem proprietären Befehl, Erfolg erwarten
Testdatei 0002 erstellen, Erfolg erwarten
Testdatei 0002 auswählen, Erfolg erwarten
Schreiben Sie 256 Bytes als 4 Blöcke von 64 Bytes, Erfolg erwarten
Lesen und überprüfen Sie 256 Bytes als 4 Blöcke von 64 Bytes, Erfolg erwarten
Schreiben Sie 255 Bytes als einen einzigen Block, Erfolg erwarten. Die Karte empfängt die Bytes im Single-Byte-Modus, bis 128 Bytes verbleiben, an diesem Punkt werden die restlichen Daten vom Host als einzelner Block angefordert, Erfolg erwarten
Setzen Sie den Empfangspuffer auf 9 Byte und versuchen Sie, eine 10-Byte-Antwort von der Karte zu erhalten, erwarten Sie ERROR_INSUFFICIENT BUFFER
Senden Sie einen fehlerhaften (Lc widerspricht der Datenlänge) Auswahlbefehl 00 a4 00 00 08 00, erwarten Sie ERROR_INVALID_PARAMETER
Wählen Sie nicht vorhandene Datei aus, erwarten Sie 6A 82
Senden Sie den Befehl zum Stummschalten der Karte (80 00 01 00 01 11), erwarten Sie ERROR_SEM_TIMEOUT
Karte zurücksetzen
Senden Sie den Echobefehl an die Karte, um die Verlängerung der Wartezeit für die Anforderung von Nebenstellen für 1, 2, 5 und 30 Nebenstellen zu testen, Erfolg erwarten
Axalto 32K eGate Testkarte (Karte 3)
ATR: 3B 95 18 40 FF 62 01 02
01 04
Versuchen Sie, Protokoll T=1 festzulegen, erwarten Sie ERROR_NOT_SUPPORTED
Protokoll T=0 festlegen
Authentifizieren Sie sich mit dem Kartentransportschlüssel, Erfolg erwarten
Bereinigen Sie den Kartenstatus, indem Sie Dateien aus früheren Läufen löschen (öffentliche und private RSA-Schlüsseldateien, die Benutzer-PIN-Datei und die Testdatei entfernen), Erfolg erwarten
Neue Testdatei 0055 erstellen, Erfolg erwarten
Test schreiben Blöcke 1, 25, 75, 128 Bytes in Testdatei, Erfolg erwarten
Testweise 128 Bytes aus Testdatei lesen, Daten vergleichen, Erfolg erwarten
Testdatei 0055 löschen, Erfolg erwarten
PIN-Datei erstellen, Erfolg erwarten
Festlegen der Benutzer-PIN auf 00000000, Erfolg erwarten
Erstellen einer privaten Schlüsseldatei, Erfolg erwarten
Öffentliche Schlüsseldatei erstellen, Erfolg erwarten
Wählen Sie die private Schlüsseldatei aus, Erfolg erwarten
Benutzer mit PIN authentifizieren, Erfolg erwarten
Schlüsselpaar generieren, Erfolg erwarten
Hash 16 Byte Daten, Erfolg erwarten
Antwortdaten auf Hash-Operation abrufen, 20 Byte + 2 Byte Antwort, Erfolg erwarten
Infineon SiCrypt Card Module Testkarte (Karte 4)
ATR: 3B DF 18 00 81 31 FE 67
00 5C 49 43 4D D4 91 47
D2 76 00 00 38 33 00 58
Versuchen Sie, Protokoll T=0 zu setzen, erwarten Sie ERROR_NOT_SUPPORTED
Protokoll T=1 setzen, Erfolg erwarten
Authentifizieren Sie sich mit PIN 12345678, Erfolg erwarten
Entfernen Sie Dateien aus früheren Läufen, falls vorhanden
Neue Testdatei 0007 erstellen, Erfolg erwarten
Wählen Sie Datei 0007 aus, Erfolg erwarten
Systemzeit aufzeichnen
Schreiben Sie Testblöcke von 1, 25, 50, 75, 100, 125, 128 Bytes auf die Karte - Lesen und überprüfen Sie die Daten nach jedem Blockschreiben, Erfolg erwarten
Holen Sie sich die Systemzeit und zeigen Sie die verstrichene Zeit in Sekunden für den Testabschluss an
Wählen Sie Datei 0007 aus, Erfolg erwarten
128-Byte-Block mit Byte-Wert 55 schreiben, zurücklesen und verifizieren, Erfolg erwarten
128-Byte-Block mit Byte-Wert AA schreiben, zurücklesen und verifizieren, Erfolg erwarten
128-Byte-Block mit Byte-Wert 00 schreiben, zurücklesen und verifizieren, Erfolg erwarten
128-Byte-Block mit Byte-Wert FF schreiben, zurücklesen und verifizieren, Erfolg erwarten
Wählen Sie nicht vorhandene Datei 7777 aus, erwarten Sie 9404
Wählen Sie MF um 00 a4 00 00 aus, erwarten Sie 90 00 (Erfolg)
Ungültige Datei 77 auswählen, erwarten Sie 94 04
Senden Sie einen fehlerhaften (Lc widerspricht der Datenlänge) Auswahlbefehl 00 a4 00 00 08 00, erwarten Sie 94 04
Senden Sie einen fehlerhaften (zu kurzen) Auswahlbefehl von 00 a4 00, erwarten Sie 67 00
Erstellen Sie DF 5555 aus dem MF, Erfolg erwarten
Wählen Sie 5555 aus, Erfolg erwarten
Erstellen Sie DF 5656 aus 5555, Erfolg erwarten
Wählen Sie 5656 aus, Erfolg erwarten
Erstellen Sie Datei 5757 in DF 5656, Erfolg erwarten
Wählen Sie diese Datei von MF nach vollständigem Pfad aus, Erfolg erwarten
8 Bytes in Datei schreiben, zurücklesen und verifizieren, Erfolg erwarten
Löschen Sie die ausgewählte Datei, Erfolg erwarten
Versuchen Sie, diese Datei anhand des vollständigen Pfads auszuwählen, erwarten Sie 94 04
Wählen und löschen Sie DF 5656, Erfolg erwarten
Wählen und löschen Sie DF 5555, Erfolg erwarten
Datei 0007 auswählen und löschen, Erfolg erwarten
Ausführen des Kartenlesertests
Warnung
Bei den Testfällen zur Energieverwaltung in Teil D wechselt der Computer in den Ruhezustand und Sie müssen möglicherweise eine Smartcard aus dem Test-Smartcard-Lesegerät entfernen oder erneut einlegen.
Router A, B, C und E
Befolgen Sie die Anweisungen auf dem Bildschirm für die Teile A, B, C und E, indem Sie die Karten aus dem PC/SC-Arbeitsgruppen-Testkartensatz 2 verwenden. Wenn Sie dazu aufgefordert werden, legen Sie jede Smartcard in das Test-Smartcard-Lesegerät ein und entfernen Sie sie dann.
Part D
Befolgen Sie die Anweisungen auf dem Bildschirm für Teil D, um die vier Testfälle für die Energieverwaltung abzuschließen. Wenn Sie dazu aufgefordert werden, legen Sie die Smartcard in das Test-Smartcard-Lesegerät ein oder entfernen Sie sie und versetzen Sie den Testcomputer in den Ruhezustand oder starten Sie ihn neu.
So führen Sie den Testfall Test 1 Card Out/Card Out aus:
Entfernen Sie die Smartcard aus dem Test-Smartcard-Lesegerät.
Der Computer geht nach 15 Sekunden automatisch in den Ruhezustand.
Lassen Sie den Computer 30 bis 60 Sekunden lang in den Ruhezustand wechseln.
Drücken Sie den Netzschalter des Computers, um den Ruhezustand zu beenden und den Test fortzusetzen.
Wenn Sie dazu aufgefordert werden, legen Sie die Smartcard erneut in das Test-Smartcard-Lesegerät ein.
So führen Sie den Testfall Test 2 Card In/Card Out aus:
Stellen Sie sicher, dass sich die Smartcard im Test-Smartcard-Lesegerät befindet.
Der Computer geht nach 15 Sekunden automatisch in den Ruhezustand.
Lassen Sie den Computer 30 bis 60 Sekunden lang in den Ruhezustand wechseln.
Entfernen Sie die Smartcard aus dem Test-Smartcard-Lesegerät.
Drücken Sie den Netzschalter des Computers, um den Ruhezustand des Computers zu beenden.
Wenn Sie dazu aufgefordert werden, legen Sie die Smartcard erneut in das Test-Smartcard-Lesegerät ein, bevor Sie den nächsten Testfall starten.
So führen Sie den Testfall Test 3 Card In/Card In aus:
Stellen Sie sicher, dass sich die Smartcard im Test-Smartcard-Lesegerät befindet.
Der Computer geht nach 15 Sekunden automatisch in den Ruhezustand.
Lassen Sie den Computer 30 bis 60 Sekunden lang in den Ruhezustand wechseln.
Drücken Sie den Netzschalter des Computers, um den Ruhezustand des Computers zu beenden.
Wenn Sie dazu aufgefordert werden, entfernen Sie die Smartcard aus dem Test-Smartcard-Lesegerät, bevor Sie den nächsten Testfall starten.
So führen Sie Test 4 Karte aus/Karte im Testfall aus:
Stellen Sie sicher, dass sich keine Smartcard im Test-Smartcard-Lesegerät befindet.
Der Computer geht nach 15 Sekunden automatisch in den Ruhezustand.
Lassen Sie den Computer 30 bis 60 Sekunden lang in den Ruhezustand wechseln.
Setzen Sie die Smartcard erneut in das Test-Smartcard-Lesegerät ein.
Drücken Sie den Netzschalter des Computers, um den Ruhezustand des Computers zu beenden. Der Test des Smartcard-Lesegeräts ist abgeschlossen.
Zeigen Sie die Testprotokolldateien an.
Führen Sie alle anderen erforderlichen Tests aus.
Nachdem Sie alle für diese Testübermittlung erforderlichen Tests erfolgreich abgeschlossen haben, senden Sie die Testergebnisse zurück.
Befehlssyntax
Um diesen Befehl außerhalb von HLK Studio auszuführen, müssen Sie den Smartcard-Dienst beenden, den Befehl ausführen und dann den Smartcard-Dienst starten.
Befehl | Beschreibung |
---|---|
ifdtest2.exe -sa -sb -sc -sd -sf |
Führt den Test aus. |
Dateiliste
Datei | Standort |
---|---|
ifdtest2.exe |
<testbinroot>\nttest\Driverstest\storage\wdk\ |
Parameter
Parametername | Parameterbeschreibung |
---|---|
LLU_NetAccessOnly | Benutzerkonto für den Zugriff auf die Testdateifreigabe. |
LLU_LclAdminUsr | Benutzerkonto zum Ausführen des Tests. |