--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.
To view this discussion visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/2dff1071-2089-4aa4-8ca5-46fd16c4e1ebn%40fidoalliance.org.
They’re saying they won’t support short APDU format for applet selection because the spec requires authenticators to handle both short and extended formats for FIDO2 commands.
However, I don’t think that requirement should be applied to applet selection itself. Applet selection is part of the card management layer, not the FIDO2 command set, and enforcing extended-only behavior there would break a number of existing Java Card applet implementations that already function correctly on iOS.
To view this discussion visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/f2114a41-4fc7-4303-a751-88a8e575d776n%40fidoalliance.org.
Title: GMS sends extended-length applet SELECT over NFC; FIDO2-certified Java Card authenticators reject it (works on iOS/Windows/USB)
Confirming the applet-SELECT analysis from fido-dev thread VzOR9PnArZY with bench data.
Environment
Symptom (Entra ID / any UV-required CTAP2 RP over NFC): SELECT returns U2F_V2, then 67 00 in ~18 ms, retries, doReconnect, exception at bxah.h:384 (bxaj), ~30 s hang.
Bench isolation — Identiv uTrust 3720 contactless reader, same card, varying only SELECT length-form:
Applet SELECT
Hirsch GOV (JCOP4.5)
YubiKey 5 NFC
Short 00 A4 04 00 08 A0000006472F0001 00
90 00 U2F_V2 ✓
90 00 ✓
Extended 00 A4 04 00 00 00 08 A0000006472F0001 00 00
67 00 (sometimes + ISO-DEP reset)
90 00 ✓
The JCOP4 applet accepts short-form SELECT and rejects extended-form SELECT — at the ISO 7816-4 card-management layer, before any NFCCTAP command. YubiKey accepts both.
Why this is a platform issue: these certified keys work over NFC on iOS and over PC/SC + USB-HID on Windows, all of which send short-form SELECT. Only Android/GMS sends extended-length SELECT, and only Android fails. Applet SELECT is ISO 7816-4 card management, not an NFCCTAP command — the binding's extended-length requirement is arguably scoped to FIDO command APDUs, not selection.
Title: GMS sends extended-length applet SELECT over NFC; FIDO2-certified Java Card authenticators reject it (works on iOS/Windows/USB)
Confirming the applet-SELECT analysis from fido-dev thread VzOR9PnArZY with bench data.
Environment
Symptom (Entra ID / any UV-required CTAP2 RP over NFC): SELECT returns U2F_V2, then 67 00 in ~18 ms, retries, doReconnect, exception at bxah.h:384 (bxaj), ~30 s hang.
Bench isolation — Identiv uTrust 3720 contactless reader, same card, varying only SELECT length-form:
The JCOP4 applet accepts short-form SELECT and rejects extended-form SELECT — at the ISO 7816-4 card-management layer, before any NFCCTAP command. YubiKey accepts both.
Why this is a platform issue: these certified keys work over NFC on iOS and over PC/SC + USB-HID on Windows, all of which send short-form SELECT. Only Android/GMS sends extended-length SELECT, and only Android fails. Applet SELECT is ISO 7816-4 card management, not an NFCCTAP command — the binding's extended-length requirement is arguably scoped to FIDO command APDUs, not selection.
Request: send a short-form applet SELECT (as iOS/Windows do), or fall back to short-form when the authenticator rejects extended, instead of hard-failing with an unrecoverable reconnect.