Why it's not possible to port this app to iOS #1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Core NFC framework only supports ISO 7816-4 APDUs and NDEF messages. Mifare Classic uses NFC-A (ISO 14443-A) at the RF level but its memory access protocol is proprietary to NXP and isn't ISO 7816-4. iOS has no API to access raw ISO 14443-A transceiver commands, so it's not possible to send READ or WRITE commands.
Every sector on a Mifare Classic card is protected by NXP's proprietary CRYPTO1 stream cipher. To read a sector, we must complete a three pass authentication exchange using crypto1. There is no cipher or anti-collision API needed to initiate it, so iOS can't authenticate with the card or retrieve plaintext sector data.
iOS restricts NFC to high-level tag types from NFCTagReaderSession API. iPhone's NFC chip can physically communicate at 13.56 MHz, but Core NFC restricts access to whitelist that doesn't include Mifare Classic.