Partager via


Ifdtest2 Part E (SC Reader LOGO) - (Test manuel)

Ce test manuel carte lecteur vérifie les fonctionnalités du lecteur smart carte en validant les cartes de test du groupe de travail PC/SC. Vous pouvez exécuter la partie E avec n’importe quelle carte à puce.

Détails du test

   
Spécifications
  • Device.Input.SmartCardReader.SupportsInsertionAndRemovalMonitor
  • Device.Input.SmartCardReader.UsbCcidCompliesWithUsbDeviceClassSpec
Plateformes
  • Windows 10, éditions clientes (x86)
  • Windows 10, éditions clientes (x64)
  • Windows 10, éditions clientes (Arm64)
Versions prises en charge
  • Windows 10
  • Windows 10, version 1511
  • Windows 10, version 1607
  • Windows 10 version 1703
  • Windows 10, version 1709
  • Windows 10 version 1803
  • Windows 10, version 1809
  • Windows 10 version 1903
  • Prochaine mise à jour de Windows 10
Durée d’exécution attendue (en minutes) 5
Catégorie Compatibilité
Délai d’expiration (en minutes) 300
Nécessite un redémarrage false
Nécessite une configuration spéciale false
Type automatique

 

Documentation supplémentaire

Les tests de cette zone de fonctionnalité peuvent avoir une documentation supplémentaire, y compris les conditions préalables, l’installation et les informations de résolution des problèmes, que vous trouverez dans les rubriques suivantes :

Exécution du test

Avant d’exécuter le test, effectuez la configuration du test comme décrit dans les conditions requises pour le test : Prérequis pour le test du lecteur de carte à puce.

Dépannage

Pour la résolution des problèmes génériques des échecs de test HLK, consultez Résolution des échecs de test HLK Windows.

Pour plus d’informations sur la résolution des problèmes, consultez Résolution des problèmes liés aux tests Device.Input.

Plus d’informations

Ce test vérifie les fonctionnalités du lecteur smart carte en validant la révision deux des cartes de test du groupe de travail PC/SC.

Le test et son matériel doivent être en mesure d’exécuter des tests IFD spécifiques et de produire un rapport de test. Les exigences spécifiques concernent les opérations nominales et les opérations exceptionnelles (conditions d’erreur). En outre, ceux-ci doivent être appliqués à tous les protocoles pris en charge par le sous-système de lecteur.

Un fichier de configuration doit être fourni pour les types de lecteurs de carte intelligents suivants :

  • Contactless
  • Les machines
  • Nécessite un réseau

Le fichier de configuration doit être nommé ifdtest_config.xml et placé dans C:\SmartCardReaderTest. L’extrait de code suivant montre un exemple de fichier de configuration :

<SmartCardReader>
   <Version>1</Version>
   <Contactless>False</Contactless>
   <Virtual>False</Virtual>
   <Network>False</Network>
</SmartCardReader>

IFDTEST2 effectue des cas de test dans trois travaux de test distincts : les tests de l’interface lecteur sont effectués sans que rien n’soit inséré dans le lecteur. Resource Manager cas de test d’état sont effectués en tant qu’exemple carte est inséré et supprimé du lecteur, et gèrent la détection d’insertion carte dans différentes conditions (n’importe quel carte peut être utilisé pour ce test).

Les tests de protocole de carte impliquent une opération à la fois avec des cartes à puce représentatives insérées normalement disponibles et avec des cartes spéciales qui présentent certains comportements spécialement programmés. Les cas de test utilisant des cartes habituellement disponibles effectuent des opérations de routine sur les cartes sélectionnées pour représenter une variété de combinaisons de vitesse de communication et de protocole. Ces tests ont changé avec le carte-set 2.

Cas de test status Resource Manager

Partie A

Le carte surveiller les cas de test case activée pour la détection correcte de l’état d’insertion des carte intelligentes et la gestion correcte des opérations interrompues par la suppression inattendue du carte.

  1. Tester la détection des lecteurs vides à l’aide de IOCTL_SMARTCARD_IS_PRESENT

  2. Tester la détection des carte insérées à l’aide de IOCTL_SMARTCARD_IS_PRESENT

  3. Tester la suppression des carte insérées à l’aide de IOCTL_SMARTCARD_IS_ABSENT

  4. Tester la gestion correcte des actions d’insertion et de suppression de carte de façon aléatoire pendant 15 secondes

    • Vérifier que IOCTL_SMARTCARD_IS_PRESENT et IOCTL_SMARTCARD_IS_ABSENT produisent des résultats valides

Partie C

Les cas de test resource manager vérifient la réussite des opérations de changement d’état normalement censées être commandées par le gestionnaire de ressources smart carte.

  1. Vérifier IOCTL_SMARTCARD_GET_STATE réussit sans carte

  2. Vérifier que l’état retourné est valide

  3. Vérifier le bon retour de IOCTL_SMARTCARD_IS_PRESENT

  4. Vérifier le bon retour de IOCTL_SMARTCARD_IS_ABSENT

  5. L’opérateur insère un carte

  6. Vérifier IOCTL_SMARTCARD_GET_STATE réussit avec carte inséré

  7. Vérifier que l’état retourné est valide

  8. Vérifier le bon retour de IOCTL_SMARTCARD_IS_ABSENT

  9. Réinitialisation à froid du carte

  10. Vérifier carte’état est SCARD_NEGOTIABLE

  11. Définir le protocole de carte sur T0 ou T1

  12. Vérifier la réussite de IOCTL_SMARTCARD_POWER pour désactiver le carte

  13. L’opérateur supprime le carte

  14. Vérifier IOCTL_SMARTCARD_GET_STATE réussit sans carte

Partie E

Les cas de test de gestion de l’alimentation vérifient que le pilote retourne les informations d’état correctes pour le lecteur dans les séquences de mise en veille prolongée, même lorsque l’état du lecteur est modifié pendant la mise en veille prolongée par insertion ou suppression d’un carte.

  1. L’opérateur supprime toutes les cartes

  2. L’opérateur met l’ordinateur en veille prolongée

  3. L’opérateur démarre l’ordinateur

  4. Vérifier l’état du lecteur SCARD_ABSENT au retour de la mise en veille prolongée

  5. L’opérateur insère des carte

  6. L’opérateur met l’ordinateur en veille prolongée

  7. L’opérateur démarre l’ordinateur

  8. Vérifier l’état du lecteur SCARD_PRESENT au retour de la mise en veille prolongée

  9. L’opérateur supprime carte

  10. L’opérateur met l’ordinateur en veille prolongée

  11. L’opérateur supprime carte pendant la mise en veille prolongée

  12. L’opérateur démarre l’ordinateur

  13. Vérifier l’état du lecteur SCARD_ABSENT au retour de la mise en veille prolongée

  14. L’opérateur met l’ordinateur en veille prolongée

  15. L’opérateur insère carte pendant la mise en veille prolongée

  16. L’opérateur démarre l’ordinateur

  17. Vérifier l’état du lecteur SCARD_PRESENT au retour de la mise en veille prolongée

Cas de test de l’interface lecteur

Partie B

Les cas de test de l’interface lecteur case activée la propriété d’implémentation et les informations d’état correctes sur le pilote de lecteur.

  1. Vérifier les attributs signalés par le lecteur avec un exemple carte inséré

  2. Testez que le nom d’appareil signalé par le pilote est compatible WDM PnP

  3. Tester que le pilote gère correctement les demandes de lecture d’attribut avec la mémoire tampon de retour NULL

  4. Vérifiez que le pilote arrête correctement les demandes d’e/s en attente si le pilote est fermé et rouvert avec une opération d’e/s en attente

  5. Attributs de lecture de test sans carte insérés

    • SCARD_ATTR_VENDOR_NAME : chaîne de longueur non nulle

    • SCARD_ATTR_VENDOR_IFD_TYPE : chaîne de longueur non nulle

    • SCARD_ATTR_DEVICE_UNIT : une valeur de longueur de 4 octets ou plus

    • SCARD_ATTR_ATR_STRING : échec de la tentative de lecture

    • SCARD_ATTR_DEFAULT_CLK : 1000 <= valeur <= 20000

    • SCARD_ATTR_MAX_CLK : 1000 <= valeur <= 20000

    • SCARD_ATTR_DEFAULT_DATA_RATE : la tentative de lecture réussit

    • SCARD_ATTR_MAX_DATA_RATE : la tentative de lecture réussit

    • SCARD_ATTR_MAX_IFSD : 1 <= valeur <= 254

    • SCARD_ATTR_CURRENT_PROTOCOL_TYPE : échec de la tentative de lecture

  6. Tester les attributs de lecture avec un carte inséré

    • SCARD_ATTR_VENDOR_NAME : chaîne de longueur non nulle

    • SCARD_ATTR_VENDOR_IFD_TYPE : chaîne de longueur non nulle

    • SCARD_ATTR_DEVICE_UNIT : une valeur de longueur de 4 octets ou plus

    • SCARD_ATTR_ATR_STRING : la tentative de lecture réussit

    • SCARD_ATTR_DEFAULT_CLK : valeur 1000 <= valeur <= 20000

    • SCARD_ATTR_MAX_CLK : valeur 1000 <= valeur <= 20000

    • SCARD_ATTR_DEFAULT_DATA_RATE : la tentative de lecture réussit

    • SCARD_ATTR_MAX_DATA_RATE : la tentative de lecture réussit

    • SCARD_ATTR_MAX_IFSD : 1 <= valeur <= 254

    • SCARD_ATTR_CURRENT_PROTOCOL_TYPE : valeur = 0

  7. Lire l’état carte avec carte supprimé à l’aide de IOCTL_SMARTCARD_GET_STATE : state <= SCARD_SWALLOWED

  8. Réinitialiser carte : vérifiez que le résultat est ERROR_UNRECOGNIZED_MEDIA

Cas de test du protocole de carte

Partie D

Infineon Technologies PC/SC Carte de test de conformité (carte 0 / sans étiquette)

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

  1. Tentative de lecture avec mémoire tampon trop petite

  2. Demande d’extension de délai d’attente : chiffre de demande de routage vers le fichier 0001, lecture et vérification

  3. Test de resynchronisation du chaînage de blocs sur le fichier 0002 : carte accepte le premier bloc. Ensuite, demande à plusieurs reprises la retransmission du bloc 2 ; resynchronisations de l’hôte : attendez-vous à ERROR_IO_DEVICE

  4. Test de resynchronisation du chaînage de blocs sur le fichier 0002 : carte déclare à plusieurs reprises une erreur EDC sur le bloc 2 ; resynchronisations de l’hôte - attendez-vous à ERROR_IO_DEVICE

  5. Séquence de blocs incorrecte par lecture dans le fichier 0003 - attendez-ERROR_IO_DEVICE

  6. Id de fichier de requête Ifsc 0004

  7. Forcer le délai d’expiration en lecture dans le fichier 0005 - attendez-vous à ERROR_IO_DEVICE

  8. Lire et traiter le fichier de résultats (A000), analyser et signaler les erreurs

Carte de test Athena T0 (carte 1)

ATR : 3B D6 18 00 80 B1 80 6D

1F 03 80 51 00 61 10 30

9E

  1. Réinitialisation avec un temps de transmission ATR long (environ 900 mSec)

  2. Définissez Protocole sur T0, attendez-vous à la réussite

  3. Effacer tous les fichiers carte par commande propriétaire, attendez-vous à la réussite

  4. Créer le fichier de test 0002, attendez-vous à la réussite

  5. Sélectionnez le fichier de test 0002, attendez-vous à la réussite

  6. Écrire 256 octets sous forme de 4 blocs de 64 octets, attendez-vous à la réussite

  7. Lire et vérifier 256 octets sous forme de 4 blocs de 64 octets, attendez-vous à la réussite

  8. Écrivez 255 octets en un seul bloc, attendez-vous à la réussite. Le carte recevra les octets en mode un octet jusqu’à ce qu’il reste 8 octets, auquel cas le reste des données sera demandé à l’hôte sous la forme d’un seul bloc.

  9. Définissez la mémoire tampon de réception sur 9 octets et tentez de recevoir une réponse de 10 octets de carte, attendez-vous à ERROR_INSUFFICIENT BUFFER

  10. Envoyer mal formé (Lc incohérent avec la longueur des données) sélectionnez la commande 00 a4 00 00 08 00, attendez-vous à ERROR_INVALID_PARAMETER

  11. Sélectionnez un fichier inexistant, attendez-vous à 6A 82

  12. Envoyer la commande pour faire taire le carte (80 00 01 00 01 11), attendez-vous à ERROR_SEM_TIMEOUT

  13. Réinitialiser le carte

  14. Envoyer une commande d’écho à carte pour tester l’extension de délai d’attente de la demande pour le nombre d’extensions de 1, 2, 5 et 30 extensions, attendez-vous à la réussite

Athena\Inverse Convention Test Card (Carte 2)

ATR : 3F 96 18 80 01 80 51 00

61 10 30 9F

  1. Réinitialisation avec un temps de transmission ATR long (environ 900 mSec)

  2. Définissez Protocole sur T0, attendez-vous à la réussite

  3. Effacer tous les fichiers carte par commande propriétaire, attendez-vous à la réussite

  4. Créer le fichier de test 0002, attendez-vous à la réussite

  5. Sélectionnez le fichier de test 0002, attendez-vous à la réussite

  6. Écrire 256 octets sous forme de 4 blocs de 64 octets, attendez-vous à la réussite

  7. Lire et vérifier 256 octets sous forme de 4 blocs de 64 octets, attendez-vous à la réussite

  8. Écrivez 255 octets en un seul bloc, attendez-vous à la réussite. Le carte recevra les octets en mode octet unique jusqu’à ce qu’il reste 128 octets, auquel cas le reste des données sera demandé à l’hôte sous la forme d’un bloc unique.

  9. Définissez la mémoire tampon de réception sur 9 octets et tentez de recevoir une réponse de 10 octets de carte, attendez-vous à ERROR_INSUFFICIENT BUFFER

  10. Envoyer mal formé (Lc incohérent avec la longueur des données) sélectionnez la commande 00 a4 00 00 08 00, attendez-vous à ERROR_INVALID_PARAMETER

  11. Sélectionnez un fichier inexistant, attendez-vous à 6A 82

  12. Envoyer la commande pour faire taire le carte (80 00 01 00 01 11), attendez-vous à ERROR_SEM_TIMEOUT

  13. Réinitialiser le carte

  14. Envoyer une commande d’écho à carte pour tester l’extension de délai d’attente de la demande pour le nombre d’extensions de 1, 2, 5 et 30 extensions, attendez-vous à la réussite

Carte de test axalto 32K eGate (carte 3)

ATR : 3B 95 18 40 FF 62 01 02

01 04

  1. Essayez de définir le protocole T=1, attendez-vous à ERROR_NOT_SUPPORTED

  2. Définir le protocole T=0

  3. S’authentifier à l’aide de carte clé de transport, attendez-vous à la réussite

  4. Nettoyez carte’état en supprimant les fichiers des exécutions précédentes (supprimer les fichiers de clé publique et privée RSA, le fichier pin utilisateur et le fichier de test), attendez-vous à la réussite

  5. Créer un fichier de test 0055, attendez-vous à la réussite

  6. Blocs d’écriture de test 1, 25, 75, 128 octets pour le fichier de test, attendez-vous à la réussite

  7. Lire 128 octets du fichier de test, comparer les données, attendre la réussite

  8. Supprimer le fichier de test 0055, attendez-vous à la réussite

  9. Créer un fichier PIN, s’attendre à la réussite

  10. Définissez le code pin utilisateur sur 00000000, attendez-vous à la réussite

  11. Créer un fichier de clé privée, s’attendre à un succès

  12. Créer un fichier de clé publique, s’attendre à un succès

  13. Sélectionnez le fichier de clé privée, attendez-vous à la réussite

  14. Authentifier l’utilisateur qui a un code confidentiel, attendez-vous à la réussite

  15. Générer une paire de clés, s’attendre à un succès

  16. Hachage des données de 16 octets, attendez-vous à la réussite

  17. Obtenir des données de réponse à l’opération de hachage, 20 octets + 2 octets de réponse, attendez-vous à la réussite

Infineon SiCrypt Card Module Test Card (Carte 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

  1. Essayez de définir le protocole T=0, attendez-vous à ERROR_NOT_SUPPORTED

  2. Définissez le protocole T=1, attendez-vous à la réussite

  3. S’authentifier à l’aide du code confidentiel 12345678, attendez-vous à la réussite

  4. Supprimer des fichiers des exécutions précédentes si existant

  5. Créer un fichier de test 0007, s’attendre à un succès

  6. Sélectionnez le fichier 0007, attendez-vous à la réussite

  7. Enregistrer le temps système

  8. Écrire des blocs de test de 1, 25, 50, 75, 100, 125, 128 octets dans le carte - Lire et vérifier les données après chaque écriture de bloc, attendez-vous à la réussite

  9. Obtenir le temps système et afficher le temps écoulé en secondes pour l’achèvement du test

  10. Sélectionnez le fichier 0007, attendez-vous à la réussite

  11. Écrire un bloc de 128 octets de la valeur d’octet 55, Lire et vérifier, s’attendre à la réussite

  12. Écrire un bloc de 128 octets de la valeur d’octet AA, Lire et vérifier, s’attendre à la réussite

  13. Écrire un bloc de 128 octets de la valeur d’octet 00, Lire et vérifier, s’attendre à la réussite

  14. Écrire un bloc de 128 octets de la valeur d’octet FF, Lire et vérifier, s’attendre à la réussite

  15. Sélectionnez le fichier inexistant 7777, attendez-vous à 9404

  16. Sélectionnez MF par 00 a4 00 00, attendez-vous à 90 00 (réussite)

  17. Sélectionnez le fichier non valide 77, attendez-vous à 94 04

  18. Envoyer malformed (Lc incompatible avec la longueur des données) select command 00 a4 00 00 08 00, attendez-vous à 94 04

  19. Envoyer une commande de sélection incorrecte (trop courte) par 00 a4 00, attendez-vous à 67 00

  20. Créer DF 5555 à partir du MF, attendez-vous à un succès

  21. Sélectionnez 5555, attendez-vous à la réussite

  22. Créer DF 5656 à partir de 5555, attendez-vous à la réussite

  23. Sélectionnez 5656, attendez-vous à la réussite

  24. Créer le fichier 5757 dans DF 5656, attendez-vous à la réussite

  25. Sélectionnez ce fichier à partir de MF par chemin d’accès complet, attendez-vous à la réussite

  26. Écrire 8 octets dans le fichier, Lire et vérifier, s’attendre à la réussite

  27. Supprimez le fichier sélectionné, attendez-vous à la réussite

  28. Tentative de sélection de ce fichier par chemin d’accès complet, attendez-vous à 94 04

  29. Sélectionnez et supprimez DF 5656, attendez-vous à la réussite

  30. Sélectionnez et supprimez DF 5555, attendez-vous à la réussite

  31. Sélectionnez et supprimez le fichier 0007, attendez-vous à la réussite

Exécution du test du lecteur carte

Avertissement

   Pour les cas de test de gestion de l’alimentation dans la partie D, l’ordinateur est mis en veille prolongée et vous devrez peut-être supprimer ou réinsérer un carte intelligent dans le lecteur smart carte de test.

 

Parties A, B, C et E

Suivez les instructions à l’écran pour les parties A, B, C et E à l’aide des cartes du test du groupe de travail PC/SC carte-set 2. Lorsque vous y êtes invité, insérez puis supprimez chaque carte intelligent du lecteur de carte de test.

Partie D

Suivez les instructions à l’écran de la partie D pour effectuer les quatre cas de test de gestion de l’alimentation. Lorsque vous y êtes invité, insérez ou supprimez le carte intelligent du lecteur smart carte de test, puis mettez en veille prolongée ou redémarrez l’ordinateur de test.

Pour exécuter le cas de test Test 1 Card Out/Card Out :

  1. Supprimez le carte intelligent du lecteur de carte de test.

  2. L’ordinateur est automatiquement mis en veille prolongée après 15 secondes.

  3. Autoriser l’ordinateur à mettre en veille prolongée pendant 30 à 60 secondes.

  4. Appuyez sur le bouton d’alimentation de l’ordinateur pour sortir l’ordinateur de la mise en veille prolongée et poursuivre le test.

  5. Lorsque vous y êtes invité, réinsérez le carte intelligent dans le lecteur de carte de test.

Pour exécuter le cas de test Card In/Card Out Test 2 :

  1. Vérifiez que le carte intelligent se trouve dans le lecteur smart carte de test.

  2. L’ordinateur est automatiquement mis en veille prolongée après 15 secondes.

  3. Autoriser l’ordinateur à mettre en veille prolongée pendant 30 à 60 secondes.

  4. Supprimez le carte intelligent du lecteur de carte de test.

  5. Appuyez sur le bouton d’alimentation de l’ordinateur pour sortir l’ordinateur de la mise en veille prolongée.

  6. Lorsque vous y êtes invité, réinsérez le carte intelligent dans le lecteur smart carte de test avant de commencer le cas de test suivant.

Pour exécuter le test 3 Card In/Card Dans le cas de test :

  1. Vérifiez que le carte intelligent se trouve dans le lecteur smart carte de test.

  2. L’ordinateur est automatiquement mis en veille prolongée après 15 secondes.

  3. Autoriser l’ordinateur à mettre en veille prolongée pendant 30 à 60 secondes.

  4. Appuyez sur le bouton d’alimentation de l’ordinateur pour sortir l’ordinateur de la mise en veille prolongée.

  5. Lorsque vous y êtes invité, supprimez le carte intelligent du lecteur smart carte de test avant de commencer le cas de test suivant.

Pour exécuter le test 4 Card Out/Card dans le cas de test :

  1. Vérifiez qu’il n’existe aucune carte intelligente dans le lecteur smart carte de test.

  2. L’ordinateur est automatiquement mis en veille prolongée après 15 secondes.

  3. Autoriser l’ordinateur à mettre en veille prolongée pendant 30 à 60 secondes.

  4. Réinsérez le carte intelligent dans le lecteur smart carte de test.

  5. Appuyez sur le bouton d’alimentation de l’ordinateur pour sortir l’ordinateur de la mise en veille prolongée. Le test du lecteur smart carte est terminé.

  6. Affichez les fichiers journaux de test.

  7. Exécutez tous les autres tests requis.

  8. Une fois que vous avez effectué tous les tests requis pour cette soumission de test, retournez les résultats du test.

Syntaxe de commande

Pour exécuter cette commande en dehors de HLK Studio, vous devez arrêter le service de carte à puce, exécuter la commande, puis démarrer le service de carte à puce.

Commande Description

ifdtest2.exe -sa -sb -sc -sd -sf

Exécute le test.

 

Liste de fichiers

Fichier Emplacement

ifdtest2.exe

<testbinroot>\nttest\Driverstest\storage\wdk\

 

Paramètres

Nom du paramètre Description des paramètres
LLU_NetAccessOnly Compte d’utilisateur pour accéder au partage de fichiers de test.
LLU_LclAdminUsr Compte d’utilisateur pour l’exécution du test.