Stap 2: Wat is opgeslagen op de kaart?
De RFID-kaarten die ik gebracht heb nummers afgedrukt op de achterkant van hen. Dit getal zegt welke gegevens de kaart is opgenomen in het.
de kaart met 0007820706 119,21922 gedrukt op het verzendt dit patroon:
1111111110010111000000000000001111011110101001010101000010101100
De eerste set van 111111111 bits zijn de start volgorde - het wordt gebruikt om de lezer te vertellen dat een code komt - de lezer maakt ook gebruik van de reeks te lock op de kaartgegevens.
Gegevens die zijn opgeslagen wordt in groepen van 4 bits, met een pariteitsbit aan het einde van elke groep verzonden.
De gegevens kunnen worden opgesplitst als volgt;
00101 11000 00000 00000 01111 01111 01010 01010 10100 00101 0110 0
Als we het pariteitsbit aan het einde van elke knabbelen negeren er
0010 1100 0000 0000 0111 0111 0101 0101 1010 0010 0110 0
2 C 0 0 7 7 5 5 A 2 CHECKSUM STOP
Deze code is 2c 0077 55a2 als we de code in 3 groepen opdelen, wij 2c hebben, gevolgd door 0077 (oftewel 119 in decimale notatie) en tot slot 55A2, die 21922 in decimale - dit komt met de 119,21922 overeen.
Hetzelfde nummer is ook geschreven in een andere manier op deze kaarten 0007820706 (in decimaal) is gewoon het hexadecimale nummer 7755A2.
WOOT we nu begrijpen hoe de gegevens worden opgeslagen.
2C is een constante code dat wordt verzonden met alle kaarten. Het is gewoon een faciliteit id voor deze RFID-systeem.
Hoe werkt de pariteit en controlesom werk?
Een laatste stukje van de gegevens die de kaart verzendt is een controlesom-woord - dit wordt gebruikt om ervoor te zorgen dat alle gegevens correct zijn ontvangen. In de eerste plaats het pariteitsbit aan het einde van elke nibble vangegevens is Even pariteit - dit betekent dat de zender zal het toevoegen van een 1 om ervoor te zorgen dat elk blok een 'even' getal '1'-bits heeft - dus als we kijken een de '2', oftewel 0010 in binair - de pariteit systeem zou detecteren dat er sprake was van een oneven aantal '1'-bits , en zou een toe te voegen compenseren. Vergelijk dat aan de 'C' die 1100 is, de pariteit systeem zijn er een even aantal '1' bits detecteren zou, zodat het een nul zou toevoegen.
00101 2
11000 C
00000 0
00000 0
01111 7
01111 7
01010 5
01010 5
10100 A
00101 2
0110 controlesom + 0 stopbit
Tot slot is de controlesom een zelfs pariteitsbit toegepast op elk van de verticale rij bits. Deze manier, er is dat een horizontale en verticale controle van elke bit verzonden - alles moet line-up of de lezer zal gewoon weigeren de transmissie.
Wanneer ik de gegevens gedecodeerd voor mijn werk prox kaart, het volgde een soortgelijke reeks hier, maar (voor de hand liggende redenen) ik eigenlijk zal niet publiceren van de nummers. Nogmaals, onderdeel van de sequentie was een faciliteit code, en de rest van de reeks plaats hetzelfde nummer dat op de achterkant van de kaart werd gedrukt.