Metodo ISCardISO7816::InternalAuthenticate
[Il metodo InternalAuthenticate è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Non è disponibile per l'uso in Windows Server 2003 con Service Pack 1 (SP1) e versioni successive, Windows Vista, Windows Server 2008 e versioni successive del sistema operativo. I moduli smart card offrono funzionalità simili.
Il metodo InternalAuthenticate costruisce un comando APDU ( Application Protocol Data Unit ) che avvia il calcolo dei dati di autenticazione dalla scheda usando i dati di sfida inviati dal dispositivo di interfaccia e un segreto pertinente (ad esempio, una chiave) archiviata nella scheda.
Quando il segreto pertinente è collegato a MF, il comando può essere usato per autenticare la scheda nel suo complesso.
Quando il segreto pertinente è collegato a un'altra DF, il comando può essere usato per autenticare tale DF.
Sintassi
HRESULT InternalAuthenticate(
[in] BYTE byAlgorithmRef,
[in] BYTE bySecretRef,
[in] LPBYTEBUFFER pChallenge,
[in] LONG lReplyBytes,
[in, out] LPSCARDCMD *ppCmd
);
Parametri
-
byAlgorithmRef [in]
-
Riferimento dell'algoritmo nella scheda.
Se questo valore è zero, questo indica che non vengono fornite informazioni. Il riferimento dell'algoritmo è noto prima di eseguire il comando o viene fornito nel campo dati.
-
bySecretRef [in]
-
Riferimento al segreto.
Valore Significato - Nessuna informazione
Posizione bit: 00000000
Non viene fornita alcuna informazione. Il riferimento del segreto è noto prima di eseguire il comando o viene fornito nel campo dati.- Riferimento globale
Posizione bit: 0-------
Dati di riferimento globali (chiave specifica MF).- Riferimento specifico
Posizione bit: 1-------
Dati di riferimento specifici (una chiave specifica di DF).- RFU
Posizione bit: -xx-----
00 (altri valori sono RFU).- Segreto
Posizione bit: ---xxxxx
Numero del segreto. -
pChallenge [in]
-
Puntatore ai dati correlati all'autenticazione( ad esempio, sfida).
-
lReplyBytes [in]
-
Numero massimo di byte previsti in risposta.
-
ppCmd [in, out]
-
In input, un puntatore a un oggetto interfaccia ISCardCmd o NULL.
Al ritorno, viene riempito con il comando APDU costruito da questa operazione. Se ppCmd è stato impostato su NULL, viene creato e restituito internamente un oggetto ISCardCmd usando il puntatore ppCmd.
Valore restituito
Il metodo restituisce uno dei valori possibili seguenti.
Codice restituito | Descrizione |
---|---|
|
Operazione completata correttamente. |
|
Parametro non valido. |
|
Un puntatore non valido è stato passato. |
|
Memoria insufficiente. |
Commenti
L'esecuzione riuscita del comando può essere soggetta al completamento corretto dei comandi precedenti (ad esempio, VERIFY o SELECT FILE) o selezioni (ad esempio, il segreto pertinente).
Se una chiave e un algoritmo sono attualmente selezionati durante l'emissione del comando, il comando può usare in modo implicito la chiave e l'algoritmo.
Il numero di volte in cui viene eseguito il comando può essere registrato nella scheda per limitare il numero di tentativi di utilizzo del segreto o dell'algoritmo pertinenti.
Per un elenco di tutti i metodi forniti da questa interfaccia, vedere ISCardISO7816.
Oltre ai codici di errore COM elencati in precedenza, questa interfaccia può restituire un codice di errore della smart card se è stata chiamata una funzione smart card per completare la richiesta. Per altre informazioni, vedere Valori restituiti smart card.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Fine del supporto client |
Windows XP |
Fine del supporto server |
Windows Server 2003 |
Intestazione |
|
Libreria dei tipi |
|
DLL |
|
IID |
IID_ISCardISO7816 è definito come 53B6A68-3F56-11D0-916B-00AA0C18068 |
Vedi anche