I am working with ISO15963 tags. I am able to get the tag info, such as UID, etc etc, also can read and write EPROM. But this tags also provide an AES128 bit cryptography module that requires custom commands with a byte string payload to execute security authentication. Android NFC framework provides developers a “transceive()” command that only takes a string of bytes and automatically reads the buffer to catch the answer from the tag. So developers can create their own custom payloads according to manufacturers specifications. Apple’s new CoreNFC customCommand for ISO15963 protocol is limited to commands from A0 to DF (ISO15963-3 standard) Leaving out extremely important optional commands on the ISO15963-4 standard like. '34' Optional Yes Yes Yes Extended write multiple blocks '35' Optional No No Authenticate '36' Optional Yes Yes KeyUpdate '37' Optional No No AuthComm crypto format indicator '38' Optional No No SecureComm crypto format indicator '39' Optional No No Challenge '3A' Optional No Yes No ReadBuffer '3B' Optional No No No Extended get system information '3C' Optional No No No Extended get multiple block security Where can we ask Apple CoreNFC team to enable us to use more than A0~DF commands? I am mainly interested in the 0x35 command for AES128 Crypto Authentication.
iOS 13 CoreNFC ISO15963 customCommand 0x35
Add a Comment