Télécharger Imprimer la page

Matrix EBLOCKS 2 Guide page 47

Publicité

16.
Exercice 9 - Utilisation du format Value
16.1
Introduction
Les transpondeurs Mifare classiques peuvent utiliser des blocs de mémoire de 16 octets pour stocker des valeurs numériques de 4 octets (32 bits) en utilisant un
format spécial de "valeur" qui permet d'utiliser trois commandes supplémentaires.
Dans le format Value, un bloc de seize octets ne stocke que quatre octets de données, mais les stocke deux fois, et stocke également la forme inversée
(complément à 2) des données, afin de réduire le risque d'erreur. La manière la plus simple de trouver cette forme inversée est de soustraire les données, sous
forme de nombre décimal, de 255. Par exemple, si les données = 200, la forme inversée est 255 - 200 = 55.
Il reste donc quatre octets inutilisés dans le bloc. Ceux-ci sont utilisés pour stocker l'adresse du bloc d'un octet (1 à 62 pour la carte 1k, et 1 à 254 pour la carte 4k).
Là encore, pour des raisons de sécurité contre la corruption des données, cette adresse de bloc est stockée deux fois, et la forme inversée (complément à 2) de
l'adresse est également stockée deux fois. Ce format de valeur est illustré dans le diagramme suivant :
Octet
0
Contenu
200
Le diagramme suivant représente la situation dans laquelle les données= 200 sont stockées dans le bloc 25 :
Octet
0
1
2
Contenu
Données
16.1.1
La fonction FormatRFIDValue
La fonction FormatRFIDValue permet de paramétrer les 16 octets d'un bloc mémoire au format Value.
Dans le cadre d'une utilisation normale, les données contenues dans chaque octet d'un bloc n'ont pas de relation directe avec les autres octets. Lorsqu'un bloc est
utilisé au format Valeur, seuls les quatre premiers octets sont utilisés directement. Il stocke un nombre de 32 bits en d'autres termes. Les douze autres octets
contiennent des copies de ce nombre, ou de son inverse, sont utilisés comme simple somme de contrôle et doivent être reliés aux quatre premiers octets comme
décrit ci-dessus.
Dans le format Valeur, le transpondeur RFID est capable d'effectuer des opérations arithmétiques simples sur 32 bits à l'aide des trois commandes supplémentaires
(incrémentation, décrémentation et transfert). Des données aléatoires peuvent être écrites dans le bloc mémoire à tout moment, mais si elles rompent la structure
du format Value, les commandes supplémentaires ne fonctionneront pas.
1
2
3
4
5
55
3
4
5
6
7
8
Données inversées
Données
6
7
8
9
10
11
200
9
1
1
12
13
0
1
Adresse
Adresse Inv.
12
13
14
15
25
230
25
230
14
15
Adresse
Adresse Inv.
47

Publicité

loading

Produits Connexes pour Matrix EBLOCKS 2

Ce manuel est également adapté pour:

Cp9329