Qu'est-ce qu'un enregistrement NDEF signé, et que prouve-t-il ?
Que le contenu porte une signature faite avec une clé donnée, et qu'il n'a pas changé depuis. Ce qu'il n'établit pas, c'est que ce tag est l'original, parce qu'une signature voyage avec le contenu et se copie parfaitement sur un support vierge avec tout le reste.
Ce que c'est
Un enregistrement transporté à côté des autres dans le message, portant une signature calculée sur eux et un moyen d'identifier la clé qui l'a produite.
C'est du contenu, exactement au sens où tout le reste du tag est du contenu. Il occupe de la place dans le message et se lit comme n'importe quel enregistrement.
Le type d'enregistrement, les algorithmes admis et les dispositions relatives aux certificats sont définis par la Signature Record Type Definition, spécification technique du NFC Forum. Elle ne définit délibérément aucune infrastructure à clés publiques, ce qui est le manque que décrit cette page.
Quelles plateformes et quelles applications le vérifient, plutôt que de se contenter de le transporter, est la question qui décide s'il sert à quelque chose en pratique.
Ce qu'il prouve
Que celui qui a préparé ce contenu détenait la clé. Si la clé est réellement privée à un éditeur, alors un contenu portant sa signature vient de lui.
Et que le contenu n'a pas été modifié depuis. Un enregistrement altéré après signature ne correspond plus, donc la signature échoue.
Ces deux propriétés sont réelles et valent quelque chose. L'ennui commence quand on les étend à une troisième qui n'en découle pas.
Ce qu'il ne prouve pas
Que ce tag est celui que l'éditeur a écrit. La signature est à l'intérieur du contenu, le contenu se copie entièrement, et la copie porte une signature qui se vérifie parfaitement.
C'est le point que l'on trouve contre-intuitif et c'est tout le sujet : une signature authentifie un message, pas l'objet qui le transporte.
Elle ne prouve rien non plus de l'article sur lequel le tag est collé, ni du fait que le tag ait été déplacé d'un article à un autre.
Pour tout cela, la preuve doit venir de la puce plutôt que du contenu, ce qui est un autre mécanisme avec un autre coût.
Là où il vaut la peine
Là où l'inquiétude porte sur un contenu altéré plutôt que sur des tags dupliqués : un tag posé sur un mur public que quelqu'un pourrait réécrire pour le faire pointer ailleurs.
Là où un lecteur en face le vérifie réellement, ce qui suppose en général une application prévue pour cela plutôt que le comportement ordinaire du système.
Cela coûte de la mémoire, ce qui sur une petite puce est une vraie contrainte, et cela coûte le travail de conserver une clé en sûreté pendant des années.
Là où l'inquiétude porte sur la contrefaçon, c'est le mauvais outil, et l'acheter produira un dispositif qui échoue précisément le jour où on l'éprouve.
Questions fréquentes
Une signature empêche-t-elle la copie d'un tag ?
Non. La signature est du contenu, et le contenu se copie entièrement. La copie porte une signature qui se vérifie.
Empêche-t-elle l'altération du contenu ?
Oui, au sens où un contenu altéré ne correspond plus à la signature. C'est ce à quoi elle sert.
Un téléphone la vérifie-t-il automatiquement ?
En général non. La vérification réclame le plus souvent une application conçue pour cela, et c'est ce qui décide de son utilité.
Que faut-il employer contre la contrefaçon ?
Une puce qui prouve détenir une clé. La preuve doit venir de la puce plutôt que du contenu.