Build

NFC hardware

The hardware layer is the physical anchor of the ORACULS stack (Oracle-Augmented Chain for Universal Logistics Security): secure NFC chips that cryptographically bind a physical item to its on-chain digital twin. Every chip in the portfolio produces an unclonable, authenticated tap — SUN (Secure Unique NFC) is the floor across every tier, and there is no no-crypto tier.

The standard item chip is the NXP NTAG 424 DNA — deployed as a 25 mm tamperproof label with AES-128 encryption, SUN authentication, and Common Criteria EAL4+ certification. This is the chip in stock and used for current deployments; every other tier is an upgrade or downgrade from this baseline.

Legacy, not supported: NTAG 213 / 215 / 216 have no on-chip cryptography, cannot produce a SUN tap, and are never recommended for new work.

NTAG 424 DNA — the workhorse

ParameterValue
ManufacturerNXP Semiconductors
Form factor (standard)25 mm tamperproof label
User memory416 bytes
UID7 bytes, unique, read-only
CryptographyAES-128, 5 customer keys
AuthenticationSUN (Secure Unique NFC) with per-tap CMAC
Write endurance200,000 cycles
Data retention50 years
CertificationCommon Criteria EAL4+
Read distanceUp to 10 cm
ProtocolsISO/IEC 14443-A, NFC Forum Type 4
Data rateUp to 848 kbit/s

SUN authentication

SUN provides cryptographic proof that a specific physical chip was present at the moment of scanning — a plain URL or QR code can be copied; a SUN tap cannot. On every read, the chip's Secure Dynamic Messaging engine rewrites two mirrors inside the stored NDEF URL: an AES-128-encrypted PICC block carrying the chip's UID and its rolling read counter, and an AES-CMAC over that block. Both keys never leave the chip's secure memory.

https://verify.tagit.network/sun?picc=EF963FF7828658A599F3041510671E88&cmac=94EED9EE65337086

The UID and counter are not in the clear — that is the point of the encrypted PICC mirror, and it is why a reader cannot correlate taps across deployments without the key. Anything documenting this URL as ?uid=…&ctr=…&mac=… is describing a plaintext layout this chip does not emit; that form appeared in earlier revisions of this page and the path it used does not exist.

ComponentSizeDescription
picc16 bytes (32 hex)AES-128 encrypted PICC data. Decrypts to the 7-byte UID (factory-programmed, read-only) and the 3-byte read counter, which increments on every tap.
cmac8 bytes (16 hex)Truncated AES-CMAC over the PICC data, keyed by the chip's secret

The verifier decrypts picc and checks the CMAC server-side, which yields:

  • Anti-cloning — the CMAC can only be produced by the chip holding the secret key; copying the URL yields a stale counter/CMAC pair that fails validation.
  • Anti-replay — the server tracks the last-seen counter per UID. A tap with a counter at or below the last-seen value is rejected as a replay, and abnormal counter jumps raise a fraud alert.
  • Tamper evidence — TagTamper variants permanently record loop status in the SUN message (see modifiers below).

A valid SUN tap resolves to the tag's on-chain digital twin on Base Sepolia. The envelope is uniform across chip tiers — every TAG IT chip exposes a verify URL that resolves to the correct twin — but how each tier proves the pointer differs, and that variation is handled server-side by the verifier. It is not abstracted in the TypeScript SDK: that package covers the ERC-8004 agent layer only and has no NFC, SUN or chip surface of any kind.

Chip tiers — item level

The tier menu trades cost against memory, certification level, and key architecture. The crypto floor never drops below AES-128 + SUN.

TierChipUser memoryCrypto / authCertUse
COMMERCIAL (floor)NTAG 224 DNA208 BAES-128 · SUN · 3-pass mutual auth · ECC originality signatureEAL3+Low-cost unclonable taps; machine/agent challenge-response
budget variantNTAG 223 DNA144 BAES-128 · SUN · password-gated · ECC signatureEAL3+Only when absolute cheapest is needed and mutual auth isn't
PRESTIGE (standard)NTAG 424 DNA416 BAES-128 · SUN · Type-4 file systemEAL4+The workhorse — enterprise and high-value assets
FORTRESS (pro)MIFARE DESFire EV32 / 4 / 8 KBAES multi-app · SDM/SUN per file · 28 apps × 32 filesEAL5+Multi-zone data, keyed agent access, on-chip incident logs
SOVEREIGNNTAG X DNA~16 KBPKI/ECC P-256 + AES-128/256 · SUN (CMAC or ECDSA)EAL6+True asymmetric crypto, on-chip key, defense-grade
SIGMA BOY — roadmap ~2030Custom sNFC ASIC—AES-256 · ECDSA/EdDSA · PQC (Kyber/Dilithium)RoadmapSpace/defense: radiation-hard, PING beacon, on-chip AI
Roadmap tiers are not orderable today. SIGMA BOY is a 2028–2030 roadmap program (custom silicon with post-quantum cryptography), not a COTS part. Everything else in the table is commercial NXP silicon available now, with NTAG 424 DNA as the stocked default.

Tamper is a modifier, not a tier

A tamper loop can be layered on top of any chip in the table:

  • Tamper-evident — NTAG 22x DNA StatusDetect / NTAG 424 DNA TagTamper: the chip keeps working after removal but permanently flags the broken loop in the SUN message on every subsequent tap.
  • Tamper-killing — a frangible, destructible substrate (converter specification): the antenna physically destroys itself on peel, leaving a dead tag.

Package & pallet layer

Item-level DNA chips pair with a longer-range RFID layer for case-, pallet-, and logistics-level identification. One deployment spans item → package → pallet, and both layers carry the same resolvable GS1 Digital Link URL — which also makes the package layer EU Digital Product Passport (DPP) compatible.

LayerNXP familyFrequency / standardRangeRole
Package / item ID (HF)ICODE (SLIX)13.56 MHz HF · ISO/IEC 15693~0.3–1.5 mProduct and package ID, inventory, brand-protection labels
Case / pallet (UHF)UCODE RAIN (incl. UCODE DNA)860–960 MHz UHF · ISO 18000-63 / EPC Gen2Up to ~10 m+Warehouse and supply-chain visibility, bulk dock/gate reads

Why two layers: HF/NFC (ICODE plus the DNA tags) is tap-range and phone-readable — right for consumers and item authentication. UHF RAIN (UCODE) reads at distance and in bulk — right for dock doors, conveyors, and warehouse portals.

Provisioning a tag

Provisioning turns a blank chip into a bound, verifiable tag. Keys are injected in a controlled environment and never transmitted or stored on chain — the contracts hold only a Keccak-256 commitment to the tag.

  1. Read the UID from the blank chip (7 bytes, factory-programmed).
  2. Inject keys — authenticate with the factory default key, then rotate per-tag AES-128 keys into the chip's key slots. Keys are generated in an HSM and registered against the UID in the key-management service.
  3. Write the NDEF template — the SUN URL with mirror placeholders for uid, ctr, and mac, and enable Secure Dynamic Messaging so the chip fills them in live on every tap.
  4. Lock the configuration — set NDEF read-only, enable counter-on-read, and permanently lock security settings so they cannot be altered after issuance.
  5. Bind on chain — compute the tag commitment and call bindTag() on the minted twin, moving it MINTED → BOUND in the asset lifecycle.
  6. Verify with a test scan — confirm the CMAC validates, the counter increments, and the URL resolves to the correct on-chain twin.

Readers

Consumers need no hardware at all — any NFC-capable smartphone performs a full SUN verification tap. For desk-side enrollment and provisioning, the TAG IT admin console uses the ACR1252U USB reader (PC/SC compliant, ~$80–100).

CategoryUse caseExamples
MobileConsumer verification (the vast majority of taps)Any NFC smartphone
DesktopDevelopment, enrollment, admin console provisioningACR1252U
Enterprise handheldWarehouse and logisticsZebra TC52x / TC72x
Fixed infrastructureDock doors, conveyors, automated checkpoints (UHF layer)Impinj, Alien

Next steps

  • Asset Lifecycle — what bindTag() and the 7-state machine do on chain
  • Security Model — where chip cryptography sits in the 5-layer architecture
  • TypeScript SDK — the verification envelope abstraction in @tagit/sdk