Ifdtest2 Part E (SC Reader LOGO) - (Test manuale)
Questo test manuale del lettore di schede verifica la funzionalità del lettore di smart card convalidando le schede di test del gruppo di lavoro PC/SC. È possibile eseguire parte E con qualsiasi smart card.
Dettagli del test
Specifiche |
|
Piattaforme |
|
Versioni supportate |
|
Tempo di esecuzione previsto (in minuti) | 5 |
Categoria | Compatibilità |
Timeout (in minuti) | 300 |
Richiede il riavvio | false |
Richiede una configurazione speciale | false |
Tipo | automatic |
Documentazione aggiuntiva
I test in questa area di funzionalità potrebbero avere documentazione aggiuntiva, inclusi i prerequisiti, la configurazione e le informazioni sulla risoluzione dei problemi, disponibili negli argomenti seguenti:
Esecuzione del test
Prima di eseguire il test, completare l'installazione del test come descritto nei requisiti di test: Prerequisiti di test del lettore di smart card.
Risoluzione dei problemi relativi
Per la risoluzione generica degli errori di test HLK, vedere Risoluzione dei problemi di test di Windows HLK.
Per informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi relativi a Device.Input Testing.
Altre informazioni
Questo test verifica la funzionalità del lettore di smart card convalidando la revisione due delle schede di test del gruppo di lavoro PC/SC.
Il test e il relativo hardware devono essere in grado di eseguire test IFD specifici e produrre un report di test. Requisiti specifici riguardano l'operazione nominale e l'operazione eccezionale (condizioni di errore). Inoltre, questi devono essere applicati a tutti i protocolli supportati dal sottosistema reader.
È necessario specificare un file di configurazione per i tipi seguenti di lettori di smart card:
- Contactless
- Le macchine
- Richiede la rete
Il file di configurazione deve essere denominato ifdtest_config.xml e deve essere inserito in C:\SmartCardReaderTest. Il frammento di codice seguente mostra un file di configurazione di esempio:
<SmartCardReader>
<Version>1</Version>
<Contactless>False</Contactless>
<Virtual>False</Virtual>
<Network>False</Network>
</SmartCardReader>
IFDTEST2 esegue test case in tre processi di test distinti: i test dell'interfaccia lettore vengono eseguiti senza alcun elemento inserito nel lettore. Resource Manager test case di stato vengono eseguiti come scheda di esempio viene inserita e rimossa dal lettore e si gestisce il rilevamento dell'inserimento di schede in varie condizioni (è possibile usare qualsiasi scheda per questo test).
I test del protocollo di scheda comportano l'operazione con smart card normalmente disponibili rappresentative inserite e con schede speciali che presentano un comportamento specifico programmato. I test case che usano schede normalmente disponibili eseguono operazioni di routine sulle schede selezionate per rappresentare una varietà di combinazioni di velocità di comunicazione e protocolli. Questi test sono stati modificati con il set di schede 2.
Test case di stato di Resource Manager
Parte A
Il test case di monitoraggio della scheda verifica la correttezza del rilevamento dello stato di inserimento della smart card e la corretta gestione delle operazioni interrotte dalla rimozione imprevista della scheda.
Testare il rilevamento di lettori vuoti usando IOCTL_SMARTCARD_IS_PRESENT
Testare il rilevamento della scheda inserita usando IOCTL_SMARTCARD_IS_PRESENT
Testare la rimozione della scheda inserita usando IOCTL_SMARTCARD_IS_ABSENT
Testare la gestione corretta dell'inserimento e della rimozione casuale delle schede per 15 secondi
- Verificare che IOCTL_SMARTCARD_IS_PRESENT e IOCTL_SMARTCARD_IS_ABSENT produrre risultati validi
Parte C
I test case di Resource Manager verificano che il completamento delle operazioni di modifica dello stato venga normalmente eseguito dal gestore risorse della smart card.
Verificare che IOCTL_SMARTCARD_GET_STATE abbia esito positivo senza scheda
Verificare che lo stato restituito sia valido
Verificare la corretta restituzione da IOCTL_SMARTCARD_IS_PRESENT
Verificare la corretta restituzione da IOCTL_SMARTCARD_IS_ABSENT
L'operatore inserisce una scheda
Verificare che IOCTL_SMARTCARD_GET_STATE abbia esito positivo con la scheda inserita
Verificare che lo stato restituito sia valido
Verificare la corretta restituzione da IOCTL_SMARTCARD_IS_ABSENT
Reimpostazione a freddo della scheda
Verificare che lo stato della scheda sia SCARD_NEGOTIABLE
Impostare il protocollo scheda su T0 o T1
Verificare l'esito positivo di IOCTL_SMARTCARD_POWER per disattivare la scheda
L'operatore rimuove la scheda
Verificare che IOCTL_SMARTCARD_GET_STATE abbia esito positivo senza una scheda
Parte E
I test case di risparmio energia verificano che il driver restituisca le informazioni sullo stato corrette per il lettore in sequenze di ibernazione, anche quando lo stato del lettore viene modificato durante l'inserimento o la rimozione di una scheda.
L'operatore rimuove tutte le schede
Computer di ibernazione dell'operatore
L'operatore avvia il computer
Verificare lo stato del lettore SCARD_ABSENT al ritorno dall'ibernazione
Scheda Inserimenti operatore
Computer di ibernazione dell'operatore
L'operatore avvia il computer
Verificare lo stato del lettore SCARD_PRESENT al ritorno dall'ibernazione
L'operatore rimuove la scheda
Computer di ibernazione dell'operatore
L'operatore rimuove la scheda durante l'ibernazione
L'operatore avvia il computer
Verificare lo stato del lettore SCARD_ABSENT al ritorno dall'ibernazione
Computer di ibernazione dell'operatore
L'operatore inserisce la scheda durante l'ibernazione
L'operatore avvia il computer
Verificare lo stato del lettore SCARD_PRESENT al ritorno dall'ibernazione
Test case dell'interfaccia lettore
Parte B
I test case dell'interfaccia lettore controllano la proprietà di implementazione e le informazioni sullo stato corrette nel driver reader.
Controllare gli attributi segnalati dal lettore con una scheda di esempio inserita
Verificare che il nome del dispositivo segnalato dal driver sia conforme a WDM PnP
Verificare che il driver gestisca correttamente le richieste di lettura degli attributi con il buffer restituito NULL
Verificare che il driver arresti correttamente le richieste di i/o in sospeso se il driver viene chiuso e riaperto con un'operazione di i/o in sospeso
Testare gli attributi di lettura senza schede inserite
SCARD_ATTR_VENDOR_NAME : stringa di lunghezza non zero
SCARD_ATTR_VENDOR_IFD_TYPE : stringa di lunghezza non zero
SCARD_ATTR_DEVICE_UNIT : un valore di lunghezza di 4 byte o maggiore
SCARD_ATTR_ATR_STRING : tentativo di lettura non riuscito
SCARD_ATTR_DEFAULT_CLK : 1000 <= valore <= 20000
SCARD_ATTR_MAX_CLK : 1000 <= valore <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE : il tentativo di lettura ha esito positivo
SCARD_ATTR_MAX_DATA_RATE : il tentativo di lettura ha esito positivo
SCARD_ATTR_MAX_IFSD : 1 <= valore <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE : tentativo di lettura non riuscito
Testare gli attributi di lettura con una scheda inserita
SCARD_ATTR_VENDOR_NAME : stringa di lunghezza non zero
SCARD_ATTR_VENDOR_IFD_TYPE : stringa di lunghezza non zero
SCARD_ATTR_DEVICE_UNIT : un valore di lunghezza di 4 byte o maggiore
SCARD_ATTR_ATR_STRING : il tentativo di lettura ha esito positivo
SCARD_ATTR_DEFAULT_CLK : valore 1000 <= valore <= 20000
SCARD_ATTR_MAX_CLK : valore 1000 <= valore <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE : il tentativo di lettura ha esito positivo
SCARD_ATTR_MAX_DATA_RATE : il tentativo di lettura ha esito positivo
SCARD_ATTR_MAX_IFSD : 1 <= valore <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE : valore = 0
Leggere lo stato della scheda con la scheda rimossa usando IOCTL_SMARTCARD_GET_STATE : stato <= SCARD_SWALLOWED
Reimposta scheda: verificare che il risultato sia ERROR_UNRECOGNIZED_MEDIA
Test case del protocollo card
Parte D
Infineon Technologies PC/SC Compliance Test Card (Scheda 0/Senza etichetta)
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
Tentativo di lettura con buffer troppo piccolo
Richiesta di estensione del tempo in attesa - Figura della richiesta di route al file 0001, leggere e verificare
Blocca il test di risincronizzazione del concatenamento nel file 0002: la scheda accetta il primo blocco. Quindi richiede ripetutamente la ritrasmissione del blocco 2; risincronizzazione dell'host: aspettarsi ERROR_IO_DEVICE
Block chaining resync test on file 0002: card ripetutamente dichiara l'errore EDC nel blocco 2; risincronizzazione dell'host: aspettarsi ERROR_IO_DEVICE
Sequenza di blocco errata per lettura nel file 0003- aspettarsi ERROR_IO_DEVICE
ID file di richiesta Ifsc 0004
Forzare il timeout per la lettura nel file 0005. Attendere ERROR_IO_DEVICE
Leggere ed elaborare il file dei risultati (A000), analizzare e segnalare gli errori
Scheda test di Atene T0 (scheda 1)
ATR: 3B D6 18 00 80 B1 80 6D
1F 03 80 51 00 61 10 30
9E
Ripristino con tempo di trasmissione ATR lungo (circa 900 mSec)
Impostare Protocollo su T0, attendere l'esito positivo
Cancellare tutti i file delle schede con il comando proprietario, aspettarsi un esito positivo
Creare il file di test 0002, attendere l'esito positivo
Selezionare il file di test 0002, attendere l'esito positivo
Scrivere 256 byte come 4 blocchi di 64 byte, prevedere l'esito positivo
Leggere e verificare 256 byte come 4 blocchi di 64 byte, attendere l'esito positivo
Scrivere 255 byte come singolo blocco e prevedere l'esito positivo. La scheda riceverà i byte in modalità a byte singolo fino a quando non rimangono 8 byte, a quel punto il resto dei dati verrà richiesto dall'host come singolo blocco, si prevede che l'esito positivo sia positivo.
Impostare il buffer di ricezione su 9 byte e tentare di ricevere una risposta di 10 byte dalla scheda, prevedere ERROR_INSUFFICIENT BUFFER
Inviare un formato non valido (Lc non coerente con la lunghezza dei dati) selezionare il comando 00 a4 00 00 08 00, aspettarsi ERROR_INVALID_PARAMETER
Selezionare un file inesistente, aspettarsi 6A 82
Inviare il comando per disattivare la scheda (80 00 01 00 01 11), aspettarsi ERROR_SEM_TIMEOUT
Reimpostare la scheda
Inviare il comando echo alla scheda per testare l'estensione del tempo di attesa della richiesta per i conteggi delle estensioni di 1, 2, 5 e 30 estensioni, si prevede che l'esito positivo sia riuscito
Scheda test di Convention Inverse\Convention (scheda 2)
ATR: 3F 96 18 80 01 80 51 00
61 10 30 9F
Ripristino con tempo di trasmissione ATR lungo (circa 900 mSec)
Impostare Protocollo su T0, attendere l'esito positivo
Cancellare tutti i file delle schede con il comando proprietario, aspettarsi un esito positivo
Creare il file di test 0002, attendere l'esito positivo
Selezionare il file di test 0002, attendere l'esito positivo
Scrivere 256 byte come 4 blocchi di 64 byte, prevedere l'esito positivo
Leggere e verificare 256 byte come 4 blocchi di 64 byte, attendere l'esito positivo
Scrivere 255 byte come singolo blocco e prevedere l'esito positivo. La scheda riceverà i byte in modalità a byte singolo fino a quando non rimangono 128 byte, a quel punto il resto dei dati verrà richiesto dall'host come singolo blocco, si prevede l'esito positivo
Impostare il buffer di ricezione su 9 byte e tentare di ricevere una risposta di 10 byte dalla scheda, prevedere ERROR_INSUFFICIENT BUFFER
Inviare un formato non valido (Lc non coerente con la lunghezza dei dati) selezionare il comando 00 a4 00 00 08 00, aspettarsi ERROR_INVALID_PARAMETER
Selezionare un file inesistente, aspettarsi 6A 82
Inviare il comando per disattivare la scheda (80 00 01 00 01 11), aspettarsi ERROR_SEM_TIMEOUT
Reimpostare la scheda
Inviare il comando echo alla scheda per testare l'estensione del tempo di attesa della richiesta per i conteggi delle estensioni di 1, 2, 5 e 30 estensioni, si prevede che l'esito positivo sia riuscito
Scheda di test di Axalto 32K eGate (scheda 3)
ATR: 3B 95 18 40 FF 62 01 02
01 04
Tentare di impostare il protocollo T=1, aspettarsi ERROR_NOT_SUPPORTED
Impostare il protocollo T=0
Eseguire l'autenticazione con la chiave di trasporto della scheda, attendere il successo
Pulire lo stato della scheda eliminando i file dalle esecuzioni precedenti (rimuovere i file di chiave pubblica e privata RSA, il file PIN dell'utente e il file di test), attendere l'esito positivo
Creare un nuovo file di test 0055, attendere l'esito positivo
I blocchi di scrittura dei test 1, 25, 75, 128 byte per testare il file, prevedono l'esito positivo
Testare 128 byte dal file di test, confrontare i dati, aspettarsi l'esito positivo
Eliminare il file di test 0055, attendere l'esito positivo
Creare un file PIN, aspettarsi un esito positivo
Impostare il PIN utente su 00000000, attendere l'esito positivo
Creare un file di chiave privata, attendere l'esito positivo
Creare un file di chiave pubblica, aspettarsi un esito positivo
Selezionare il file di chiave privata, attendere l'esito positivo
Autenticare l'utente che ha il PIN, aspettarsi il successo
Generare una coppia di chiavi, aspettarsi un esito positivo
Dati hash di 16 byte, previsto esito positivo
Ottenere i dati di risposta all'operazione hash, 20 byte + 2 byte di risposta, prevedere l'esito positivo
Infineon SiCrypt Card Test Card Test Card (Scheda 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
Tentare di impostare il protocollo T=0, aspettarsi ERROR_NOT_SUPPORTED
Impostare il protocollo T=1, attendere l'esito positivo
Eseguire l'autenticazione con 12345678 PIN, attendere il successo
Rimuovere i file dalle esecuzioni precedenti, se esistenti
Creare un nuovo file di test 0007, attendere l'esito positivo
Selezionare il file 0007, attendere il successo
Registrare l'ora di sistema
Scrivere blocchi di test di 1, 25, 50, 75, 100, 125, 128 byte nella scheda: leggere e verificare i dati dopo ogni scrittura di blocchi, attendere l'esito positivo
Ottenere il tempo di sistema e visualizzare il tempo trascorso in secondi per il completamento del test
Selezionare il file 0007, attendere il successo
Scrivere un blocco di byte di 128 byte di valore di byte 55, leggere indietro e verificare, attendere l'esito positivo
Scrivere un blocco di byte a 128 byte di valore AA, leggere e verificare, aspettarsi l'esito positivo
Scrivere un blocco di byte di 128 byte di valore 00, leggere indietro e verificare, attendere l'esito positivo
Scrivere un blocco di byte a 128 byte di valore FF, leggere indietro e verificare, aspettarsi l'esito positivo
Selezionare il file inesistente 7777, previsto 9404
Selezionare MF per 00 a4 00 00, aspetta 90 00 (esito positivo)
Selezionare il file non valido 77, previsto 94 04
Inviare un formato non valido (Lc incoerente con la lunghezza dei dati) selezionare il comando 00 a4 00 08 00, previsto 94 04
Invia un comando di selezione in formato non valido (troppo breve) di 00 a4 00, previsto 67 00
Creare DF 5555 da MF, aspettarsi il successo
Selezionare in 5555, aspettarsi il successo
Creare DF 5656 da 5555, attendere il successo
Selezionare in 5656, aspettarsi il successo
Creare file 5757 in DF 5656, attendere il successo
Selezionare il file da MF per percorso completo, attendere l'esito positivo
Scrivere 8 byte nel file, leggere e verificare, attendere l'esito positivo
Eliminare il file selezionato, attendere l'esito positivo
Tentare di selezionare il file per percorso completo, prevedere 94 04
Selezionare ed eliminare DF 5656, attendere il successo
Selezionare ed eliminare DF 5555, attendere il successo
Selezionare ed eliminare il file 0007, attendere l'esito positivo
Esecuzione del test del lettore di schede
Avviso
Per i test case di risparmio energia nella parte D, il computer verrà ibernato e potrebbe essere necessario rimuovere o reinserire una smart card nel lettore di smart card di test.
Parti A, B, C ed E
Seguire le istruzioni visualizzate sullo schermo per parti A, B, C e E usando le schede del gruppo di lavoro PC/SC set di schede di test 2. Quando viene richiesto, inserire e quindi rimuovere ogni smart card dal lettore di smart card di test.
Parte D
Seguire le istruzioni visualizzate per la parte D per completare i quattro test case di risparmio energia. Quando viene richiesto, inserire o rimuovere la smart card dal lettore di smart card di test e ibernare o riavviare il computer di test.
Per eseguire il test test out/card out/card out case:
Rimuovere la smart card dal lettore di smart card di test.
Il computer verrà automaticamente ibernato dopo 15 secondi.
Consentire al computer di ibernare da 30 a 60 secondi.
Premere il pulsante di alimentazione del computer per uscire dall'ibernazione del computer e continuare il test.
Quando viene richiesto, reinserire la smart card nel lettore di smart card di test.
Per eseguire il Test 2 Card In/Card Out test case:To run the Test 2 Card In/Card Out test case:
Verificare che la smart card si trova nel lettore di smart card di test.
Il computer verrà automaticamente ibernato dopo 15 secondi.
Consentire al computer di ibernare da 30 a 60 secondi.
Rimuovere la smart card dal lettore di smart card di test.
Premere il pulsante di alimentazione del computer per uscire dal computer di ibernazione.
Quando richiesto, reinserire la smart card nel lettore di smart card di test prima di avviare il test case successivo.
Per eseguire la scheda Test 3 In/Card Nel test case:
Verificare che la smart card si trova nel lettore di smart card di test.
Il computer verrà automaticamente ibernato dopo 15 secondi.
Consentire al computer di ibernare da 30 a 60 secondi.
Premere il pulsante di alimentazione del computer per uscire dal computer di ibernazione.
Quando viene richiesto, rimuovere la smart card dal lettore di smart card di test prima di avviare il test case successivo.
Per eseguire la scheda test 4 out/card nel test case:
Verificare che non sia presente alcuna smart card nel lettore di smart card di test.
Il computer verrà automaticamente ibernato dopo 15 secondi.
Consentire al computer di ibernare da 30 a 60 secondi.
Reinserire la smart card nel lettore di smart card di test.
Premere il pulsante di alimentazione del computer per uscire dal computer di ibernazione. Il test del lettore di smart card viene completato.
Visualizzare i file di log di test.
Eseguire tutti gli altri test necessari.
Dopo aver completato tutti i test necessari per l'invio di test, restituire i risultati del test.
Sintassi dei comandi
Per eseguire questo comando all'esterno di HLK Studio, è necessario arrestare il servizio Smart Card, eseguire il comando e quindi avviare il servizio Smart Card.
Comando | Descrizione |
---|---|
ifdtest2.exe -sa -sb -sc -sd -sf |
Esegue il test. |
Elenco file
File | Posizione |
---|---|
ifdtest2.exe |
<testbinroot>\nttest\Driverstest\storage\wdk\ |
Parametri
Nome parametro | Descrizione dei parametri |
---|---|
LLU_NetAccessOnly | Account utente per l'accesso alla condivisione file di test. |
LLU_LclAdminUsr | Account utente per l'esecuzione del test. |