Ich habe das Tag zuvor mit etwas NDEF im Tag gesperrt, das zur Überprüfung des Tags mit Telefonen verwendet wird.
Nach dem Sperren des NFC-Tags kann die Anwendung nicht auf das geschriebene NDEF zugreifen, obwohl das NDEF im NFC-Tag vorhanden ist
Code: Select all
def lock_nfc_tag_readonly_safe():
try:
block2 = pn532.ntag2xx_read_block(2)
if block2 is None or len(block2) != 4:
log("❌ Failed to read block 2")
return False
block2 = list(block2)
# ---------------------------
# byte 2: pages 3–15
# bit 0 = page 3 (CC) → MUST stay 0
# bits 1–7 = pages 4–15 → lock
# ---------------------------
block2[2] |= 0b11111110 # 0xFE
# ---------------------------
# byte 3: pages 16–39
# lock all remaining user memory
# ---------------------------
block2[3] |= 0xFF
if not pn532.ntag2xx_write_block(2, bytes(block2)):
log("❌ Failed to write lock bytes")
return False
return True
except Exception as e:
log(f"❌ Error locking NFC tag: {e}")
return False
Mobile version