Hors ligne d'abord
Les tables de référence et le catalogue TigerTag+ (environ 1 Mo) sont livrés dans le paquet. offline=True ou TIGERTAG_OFFLINE=1 coupe tout accès réseau.
SDK open source · protocole TigerTag v2.2
Le paquet tigertag transforme les 144 octets d'une puce TigerTag en matière, couleurs, températures et quantité, vérifie sa signature ECDSA-P256 et construit de nouveaux tags. Les données de référence sont incluses dans le paquet : tout fonctionne hors ligne dès le pip install.
$ pip install tigertag
from tigertag import TigerTag
tag = TigerTag.from_pages(uid, payload) # from your NFC SDK
print(tag.pretty()) # human-readable summary
print(tag.verify()) # VALID / NOT SIGNED / INVALID
print(tag.to_dict()) # JSON-ready dictTout ce que documente le README, dans un seul paquet qui fonctionne hors ligne.
Les tables de référence et le catalogue TigerTag+ (environ 1 Mo) sont livrés dans le paquet. offline=True ou TIGERTAG_OFFLINE=1 coupe tout accès réseau.
ECDSA-P256, entièrement hors ligne, avec la clé publique du fichier id_version.json inclus. Installez tigertag[verify] pour ajouter le paquet cryptography.
TigerTag.create() construit un tag de zéro, patch() renvoie un nouveau tag aux champs modifiés, erase() renvoie les 80 octets nuls qui effacent une puce.
TigerTag.from_catalog() transforme un ID produit TigerTag+ en tag complet prêt à écrire, depuis le catalogue officiel. catalog_entry() donne son titre, sa marque, son SKU et sa photo.
Le premier TigerTagDB d'un processus cherche de nouvelles données au plus une fois par jour et ne lève jamais d'erreur : en cas d'échec, les données locales sont utilisées.
from_pages(uid, payload) prend ce que renvoient Android, iOS, Flutter et nfcpy. Le README contient un exemple complet pour un lecteur ACR122U avec nfcpy.
Une puce TigerTag signée porte une signature ECDSA-P256 qui lie l'UID de la puce aux données du produit. Le SDK la vérifie sans appeler aucun serveur. tag.verify() renvoie un SignatureResult : ok vaut True seulement pour une signature valide, et status indique sinon pourquoi (pas de signature, cryptography absent, pas de clé publique, pas d'UID).

from_pages() prend 144 octets (pages 0x04 à 0x27, données et signature) ou 80 octets (données seules). from_dump() accepte aussi un dump complet de 180 octets et en extrait l'UID.

La commande tigertag lit un dump de puce, l'affiche en texte, en JSON ou en champs bruts, et met à jour les données de référence. parse_tigertag.py est une copie autonome et complète du SDK pour les projets qui ne peuvent pas ajouter de dépendance : déposez le fichier et importez-en TigerTag.
Un paquet Python, tigertag sur PyPI, qui lit, vérifie, crée et modifie les puces NFC TigerTag des filaments et résines d'impression 3D. Il est open source sous licence Apache 2.0 et implémente le protocole TigerTag v2.2.
Lancez pip install tigertag avec Python 3.8 ou plus récent. Ajoutez tigertag[verify] pour les signatures, tigertag[full] pour toutes les dépendances optionnelles, ou tigertag[nfc] pour les lecteurs PC/SC du playground.
Non. Les données de référence sont livrées dans le paquet : lecture et vérification fonctionnent hors ligne. Depuis la version 1.3.0, le SDK cherche de nouvelles données au plus une fois par jour ; offline=True, TIGERTAG_OFFLINE=1 ou auto_update=False le désactive.
Les NTAG213, NTAG215 et NTAG216, et toute puce compatible ISO 14443-3. Il lit de la même façon les puces TigerTag et TigerTag+, et les puces vierges prêtes à programmer.
tag.verify() vérifie la signature ECDSA-P256 de la puce, qui lie son UID aux données du produit, avec la clé publique incluse dans le paquet et sans appel serveur. Il faut l'UID : lisez la puce avec from_pages(uid, payload).
pip install tigertag, puis TigerTag.from_pages(uid, payload).
tigertag sur PyPI