ISCardISO7816::ExternalAuthenticate, méthode
[La méthode ExternalAuthenticate est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Exigences. Il n’est pas disponible pour une utilisation dans Windows Server 2003 avec Service Pack 1 (SP1) et versions ultérieures, Windows Vista, Windows Server 2008 et les versions ultérieures du système d’exploitation. Les modules de carte à puce offrent des fonctionnalités similaires.]
La méthode ExternalAuthenticate construit une commande APDU (Application Protocol Data Unit) qui met à jour de manière conditionnelle les status de sécurité, en vérifiant l’identité de l’ordinateur lorsque le carte intelligent ne lui fait pas confiance.
La commande utilise le résultat (oui ou non) du calcul par le carte (en fonction d’un défi émis précédemment par le carte, par exemple, par la commande INS_GET_CHALLENGE), d’une clé (éventuellement secrète) stockée dans le carte et des données d’authentification transmises par l’appareil d’interface.
Syntaxe
HRESULT ExternalAuthenticate(
[in] BYTE byAlgorithmRef,
[in] BYTE bySecretRef,
[in] LPBYTEBUFFER pChallenge,
[in, out] LPSCARDCMD *ppCmd
);
Paramètres
-
byAlgorithmRef [in]
-
Référence de l’algorithme dans le carte.
Si cette valeur est égale à zéro, cela indique qu’aucune information n’est donnée. La référence de l’algorithme est connue avant l’émission de la commande ou est fournie dans le champ de données.
-
bySecretRef [in]
-
Référence du secret.
Valeur Signification - Aucune information
Position du bit : 000000000
Aucune information n’est donnée. La référence du secret est connue avant l’émission de la commande ou est fournie dans le champ de données.- Référence globale
Position du bit : 0-------
Données de référence globales (une clé spécifique à MF).- Référence spécifique
Position du bit : 1-------
Données de référence spécifiques (une clé spécifique À DF).- RFU
Position du bit : -xx-----
00 (les autres valeurs sont RFU).- Secret
Position du bit : ---xxxxx
Numéro du secret. -
pChallenge [in]
-
Pointeur vers les données liées à l’authentification. Ce paramètre peut avoir la valeur NULL.
-
ppCmd [in, out]
-
En entrée, pointeur vers un objet d’interface ISCardCmd ou NULL.
Au retour, il est rempli avec la commande APDU construite par cette opération. Si ppCmd a été défini sur NULL, un objet smart carteISCardCmd est créé et retourné en interne à l’aide du pointeur ppCmd.
Valeur retournée
La méthode retourne l’une des valeurs possibles suivantes.
Code de retour | Description |
---|---|
|
L’opération s’est terminée avec succès. |
|
Un paramètre non valide a été passé. |
|
Un pointeur incorrect a été passé. |
|
Mémoire insuffisante. |
Notes
Pour que la commande encapsulée réussisse, le dernier défi obtenu à partir du carte doit être valide.
Des comparaisons infructueuses peuvent être enregistrées dans le carte (par exemple, pour limiter le nombre de nouvelles tentatives d’utilisation des données de référence).
Pour obtenir la liste de toutes les méthodes fournies par cette interface, consultez ISCardISO7816.
En plus des codes d’erreur COM répertoriés ci-dessus, cette interface peut renvoyer un code d’erreur smart carte si une fonction de carte intelligente a été appelée pour terminer la demande. Pour plus d’informations, consultez Valeurs de retour de carte à puce.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
Fin de la prise en charge des clients |
Windows XP |
Fin de la prise en charge des serveurs |
Windows Server 2003 |
En-tête |
|
Bibliothèque de types |
|
DLL |
|
IID |
IID_ISCardISO7816 est défini comme 53B6AA68-3F56-11D0-916B-00AA00C18068 |
Voir aussi