The thing is com.apple.developer.nfc.readersession.iso7816.select-identifiers Info.plist record is also needed in order to work with smart cards through CoreNFC API, but the specific A000000308000010000100 is not required in this record, whereas it seems to be the case with CryptoTokenKit API.
It seems weird to me that this behavior occurs on every smart card, independently of what it contains, whereas an AID it the Info.plist record should be needed only if corresponds to an application in the smart card. I can ensure this issue happens on a smart card which does not contain any application with the A000000308000010000100 ID.
I understand by reading the Apple documentation (https://support.apple.com/en-gb/guide/deployment/depd0b888248/web), that PIV smart cards have a native support from iOS 16.1. Thus, I believe it is not a coincidence that this AID, which seems to be mandatory for every smart card, is related to PIV. Could it be possible that there is a kind of "system default" CryptoTokenKit supporting PIV cards which could have an influence on the behavior of other apps/CTK extensions ?
My main concern is that as this specific AID is not mentioned in the Apple documentation, there could be other hidden ones which would be mandatory in some cases in order to work with any smart card.
Topic:
Privacy & Security
SubTopic:
General
Tags: