Ciao a tutti,
sto testando su iOS e Android l’interazione con l’applicazione ICAO esposta dalla CIE3 via NFC.
Quando utilizzo l’autenticazione BAC riesco ad autenticarmi con successo e a leggere i vari Data Group, ma nel caso del PACE dopo alcuni tentativi non andati a buon fine ora la connessione NFC viene sistematicamente persa subito dopo avere inviato il primo comando General Authenticate. C’è sulla CIE qualche meccanismo che blocca l’uso del PACE in caso siano stati effettuati troppi tentativi di autenticazione? In tal caso c’è modo di riportare la CIE allo stato iniziale e riprovare?
Per testare con il PACE su Android sto utilizzando l’applicazione ReadID su Google Pixel 2 e Samsung Galaxy A5.
Novità qui? Ho notato anche io che succede qualcosa del genere…
Tentando l’autenticazione con MRZ ha funzionato per un po’ poi facendo un po’ di debugging pare non andare dopo alcuni tentativi… Mentre ReadID pare continuare
Neanche io… Ma ReadID utilizza BAC per accedere ai dati della CIE, non PACE.
Il problema è che lavorand su PACE apparentemente sia io che @dmazzoni siamo giunti ad un punto in cui la propria CIE non risponde più ai messaggi e crasha (ulteriori dettagli qui):
P:739893; T:0x139741119854592 02:24:39.523 [npa-tool] sm-eac.c:786:eac_gen_auth_1_encrypted_nonce:
General authenticate (Encrypted Nonce) command data (2 bytes):
7C 00 |.
P:739893; T:0x139741119854592 02:24:39.524 [npa-tool] apdu.c:550:sc_transmit_apdu: called
P:739893; T:0x139741119854592 02:24:39.524 [npa-tool] card.c:473:sc_lock: called
P:739893; T:0x139741119854592 02:24:39.524 [npa-tool] reader-pcsc.c:688:pcsc_lock: called
P:739893; T:0x139741119854592 02:24:39.524 [npa-tool] card.c:513:sc_lock: returning with: 0 (Success)
P:739893; T:0x139741119854592 02:24:39.524 [npa-tool] apdu.c:515:sc_transmit: called
P:739893; T:0x139741119854592 02:24:39.525 [npa-tool] apdu.c:363:sc_single_transmit: called
P:739893; T:0x139741119854592 02:24:39.525 [npa-tool] apdu.c:367:sc_single_transmit: CLA:10, INS:86, P1:0, P2:0, data(2) 0x55ba94f1c360
P:739893; T:0x139741119854592 02:24:39.525 [npa-tool] reader-pcsc.c:325:pcsc_transmit: reader 'Virtual PCD 00 01'
P:739893; T:0x139741119854592 02:24:39.525 [npa-tool] reader-pcsc.c:326:pcsc_transmit:
Outgoing APDU (8 bytes):
10 86 00 00 02 7C 00 00 .....|..
P:739893; T:0x139741119854592 02:24:39.525 [npa-tool] reader-pcsc.c:244:pcsc_internal_transmit: called
P:739893; T:0x139741119854592 02:24:40.145 [npa-tool] reader-pcsc.c:332:pcsc_transmit: unable to transmit
P:739893; T:0x139741119854592 02:24:40.145 [npa-tool] apdu.c:380:sc_single_transmit: unable to transmit APDU: -1213 (Unknown data received from card)
P:739893; T:0x139741119854592 02:24:40.145 [npa-tool] apdu.c:518:sc_transmit: transmit APDU failed: -1213 (Unknown data received from card)
P:739893; T:0x139741119854592 02:24:40.145 [npa-tool] card.c:523:sc_unlock: called
P:739893; T:0x139741119854592 02:24:40.145 [npa-tool] reader-pcsc.c:740:pcsc_unlock: called
P:739893; T:0x139741119854592 02:24:40.146 [npa-tool] reader-pcsc.c:749:pcsc_unlock: Virtual PCD 00 01:SCardEndTransaction failed: 0x80100069
P:739893; T:0x139741119854592 02:24:40.146 [npa-tool] apdu.c:640:sc_transmit_apdu: sc_unlock failed
P:739893; T:0x139741119854592 02:24:40.146 [npa-tool] sm-eac.c:1342:perform_pace: Could not get encrypted nonce from card (General Authenticate step 1 failed).
P:739893; T:0x139741119854592 02:24:40.146 [npa-tool] sm-eac.c:1536:perform_pace: returning with: -1213 (Unknown data received from card)
E da quel punto non pare sia possibile rieseguire alcuna interazione usando PACE.
Di fatto gli APDU invati son molto semplici, per lo meno io non ho neanche mai inviato parametri di autenticazione errati: