What problem does it solve? Building an NFC access-control reader that accepts AccessGrid mobile wallet credentials requires implementing two distinct cryptographic transports — Apple Wallet's ECP2/DESFire flow and Google Wallet's SmartTap 2.0 flow — plus secure key handling, and getting any byte, IV, or status word wrong breaks the tap. ## Core Features & Use Cases - Dual-transport protocol guidance: Step-by-step implementation of Apple ECP2 polling, HCE preflight, DESFire EV1 AES three-pass authentication, AN10922 key diversification, and encrypted ReadData, plus Google SmartTap NEGOTIATE, ECDH + HKDF-SHA256 session keys, and AES-CTR/HMAC record-bundle decryption. - Config-driven key management: Enforces the rule that TCI, AIDs, AES keys, collector IDs, and long-term EC private keys load at runtime via OSDP, config files, config apps, or BLE provisioning — never baked into firmware — with schema, storage-tier, and rotation guidance. - C-shaped pseudo-code reference: A language-neutral reference implementation covering the full read loop, dispatch, both transports, and a verification checklist for bench and field testing. - Use Case: A firmware engineer building a door reader on an NXP PN5180 uses the skill to wire config plumbing first, then implement both wallet transports, route feedback cues over OSDP, and pass the field-test checklist before shipping. ## Quick Start Use the read-accessgrid-credential skill to walk me through implementing an NFC reader firmware that accepts AccessGrid credentials from both Apple Wallet and Google Wallet devices.