RFID/NFC - Sammlung

Als Elektronik-Bastler bleibt der Kontakt mit RFID nicht aus. Diese kleinen passiven Tags können ähnlich wie NFC sehr einfach gelesen und teilweise geschrieben werden. Ideal also für Zugangskontrollen, Warenkontrollen etc.

Achtung: RFID ist nicht sicher. Alle Karten, die nur eine Seriennummer haben, können kopiert werden. Die Sicherheit ist hier also nur bedingt gegeben. Entsprechender "Reader/Writer" gibt es für unter 10€ und man braucht nur eine beschreibbare Karte, die es in der Bucht aber auch gibt.

Für eine effektive Zugangskontrolle ist RFID daher eigentlich nicht zu gebrauchen und selbst Hersteller, die Frequenzen und Codes verändern, sind nicht sicher. Passive "ReadOnly"-Techniken sind daher ein Kompromiss zwischen Preis und Leistung. Besser sind Karten, die einen Code gesendet bekommen und diesen quasi verschlüsseln zurück senden.

Funktionsweise

RFID steht für "Radio Frequency IDentification", also per Funk z.B. eine Seriennummer auszulesen. Wenn die Träger der Information nur ein paar Cent kosten, dann lohnt es sich sogar Waren zu kennzeichnen. So kennzeichnet Gerry Weber seine Waren entsprechend um die Logistik zu verbessern. Der RFID-Chip ist im Etikett vernäht und kann auch verstört werden. Dadurch, das jedes Teil aber eine individuelle Nummer hat, kann die Warenwirtschaft den Weg besser verstehen. Und wenn der spätere Träger den Chip nicht unbrauchbar macht, könnte man die Person auch wieder identifizieren.

Technisch ist der "Leser" eigentlich ein Sender, denn erst durch die Nähe des RFID-Chips zu einem Leser wird genug Spannung induziert, dass das batterielose RFID-Tag arbeiten kann. Aus der abgestrahlten Radiowellen bezieht das TAG aber nicht nur Strom, sondern auch die Information. Dazu moduliert der Leser das abgestrahlte Signal. Das TAG bekommt die Informationen und sendet seinerseits die Antwort zurück. Ohne Batterie ist ein aktives Senden natürlich schwer. Daher schließt es die Antenne einfach entsprechend kurz, was der Leser dann an seinem weiter ausgesendeten Signal erkennt. Erstaunlich, dass das alles funktioniert. Der folgende Vortrag macht das sehr gut deutlich

Tutorial:Using a RFID Card Reader with the Arduino (Update)
https://www.youtube.com/watch?v=yUtFinIsPWw

Da es sich um Funkwellen handelt, ist natürlich die Frequenz interessant. Da gibt es durchaus verschiedene Bänder, daher kann ein RFID-Leser nicht immer auch alle RFID-Tags lesen.

Frequenzband Reichweite Anwendung

125kHz

<1m

Einfachste günstige RFID Systeme, die eigentlich nur mit der ID-Nummer des RFID-Chips.

13,56 MHz

<1m

NFC, Eintrittskarten, EC-Karte, ePerso (ISO 14443), Zugriffssysteme

UHF 433MHz
UHF 868MHz

>1m aber "Mensch" schirmt ab

Gerry Weber Kleidungskennzeichnung (EPC)

Selbst wenn die Frequenz stimmt, ist das immer noch kein Garant für die Funktion, denn es gibt noch unterschiedliche Karten.

Karte  Beschreibung 

EM4100 

Sehr einfache Karten, die eigentlich nur eine UID, eine lange weltweit eindeutige Seriennummer haben. Ein Leser bekommt einfach diese Nummer und kann so das RFID-Token identifizieren. Allerdings ist das nicht sicher, denn es gibt für unter 30€ schon Geräte, die eine UID lesen und auf eine besondere "leere" Karte schreiben. Und schon haben Sie einen identischen Clon.

Allerdings gibt es genau für diese "einfachen" Karten sehr viele Bauteile, Token, Bastelboards im Bereich von 1-20€ bis zu kompletten Zugangssystemen, deren Schwächer aber nicht einmal die Karten sind, sondern oft Leser und Auswerteeinheit in einem Gehäuse und damit im "unsicheren Bereich" sind. Da ist es einfach den Leser zu zertrümmern und die beiden beiden Drähte zur Türöffnung zu verbinden.

Mifare Classic

Diese Karten sind schon etwas besser aber mittlerweile auch kopierbar: Sie nutzen 13,56MHz und kommen in sehr vielen Umgebungen zum Einsatz, z.B.: als Fahrkarten, Städtekarten etc.

Miface Desfire

Diese Karten haben einen aktuell wohl nicht mit vertretbarem Aufwand zu knackenden Verschlüsselungsverfahren. Angeblich sind diese Chips auch in folgenden Karten verbaut

  • ePerso
  • Visa-Karten
  • EC-Karten

Leider sind die Leser auch entsprechend aufwändiger und damit etwas teurer. Das Auslesen der Seriennummer wohl noch einfach und angeblich könnte die auch noch nicht auf eine andere Karte kopiert werden (Stichwort Nachschlüssel). Aber interessant ist hier vor allem die Funktion, eigene Applikationen quasi auf die Karte zu installieren oder Informationen entsprechend sicher zu speichern.

Ob das aber alles technisch korrekt ist, kann ich nicht verifizieren.

Insofern kann man heute schon sagen, dass es eine absolute Sicherheit auch hier kaum geben wird. Die einfachen Karten lassen sich relativ einfach kopieren und die "guten" Karten sind zwar kaum teurer, aber die Lesegeräte und deren Ansteuerung sind natürlich aufwändiger.

Für all das gibt es natürlich Normen und Standards

Basisleser

Es gibt verschiedene Leser, um RFID-Karten zu nutzen. Einige sind natürlich für die Montage im Außenbereich gedacht, um damit eine Zugangskontrolle zu realisieren. Wichtig bei solchen Aufgaben ist natürlich, dass "draußen" nur der Leser sitzt während die Auswerteeinheit innen gesichert montiert ist. für den Einsatz am PC gibt es in der Regel drei Klassen, was insbesondere bei der Nutzung in Verbindung mit dem ePerso oder EC/Geldkarten von Interesse ist

  1. Einfache Leser
    Sie haben keine Anzeigen und keine Tasten. Eigentlich ist es nur die Spule und eine kleine Leseeinheit, die per USB oder seriell angeschlossen Ein und angesteuert wird. Einige dieser Leser senden einfach nur die erkannte ChipID als Zahlenfolge zum Host. Andere geben sich als Tastatur aus und geben die Zahlen quasi als Tastatureingabe an den PC. Das ist natürlich eine ganz einfach Lösung für die Erfassung.
  2. Basis-Leser
    Diese Leser haben ein eigenes Display um Ausgaben der Karte dort wiederzugeben. Diese Daten sind dann nicht auf dem PC sichtbar und können damit auch nicht von einem Virus abgerufen oder verändert werden. Das ist bei Überweisungen wichtig, um so die Zielkontonummer und den Betrag zur Kontrolle anzuzeigen. Sie können das vielleicht schon vom eTan-Generator. Wenn die Karte aber eine Pin braucht, dann wird dieser am Computer eingegeben und übermittelt. Sie könnte entsprechend abgefangen und von einem Schadcode auch ausgeleitet werden.
  3. Erweiterte Leser
    Die Schwäche der PIN-Eingabe auf dem PC lösen die erweiterten Leser, welche neben dem Display auch eine eigene Tastatur haben. Oft können diese Leser dann auch verschiedene Kartentypen unterstützen oder haben auch eine zusätzliche Kontakteinheit. Damit können Sie dann auch kontaktbehaftete Funktionen wie die Geldkarten-Funktion nutzen oder den Leser auch als Smartcard-Leser nutzen. Dies erlaubt dann z.B.: die Anmeldung an Windows mit einer Smartcard oder die Ablage von SMIME-Zertifikaten, die Nutzung von HBCI oder Elster-Zertifikaten..

Ob sie sich einen PC-gestützten Leser zulegen und welche Stufe es sein soll, hängt von ihren Einsatzbereich ab. Ich kann ihnen da keine direkte Empfehlung geben. Manchmal gibt es über die Sparkassen und Banken entsprechende Aktionsangebote. Sogar die BILD-Zeitung hat einmal einen Kartenleser im Rahmen einer Aktion mit verkauft.

Basteln und Bauen mit Arduino und Co

Interessant wird die RFID-Technik natürlich mit kleinen Computern. Es muss ja nicht immer gleiche die Türöffnung mittels RFID sein. Vielleicht sollte es das auch erst mal gar nicht sein. Aber NFC basiert auch auf der RFID-Technik und damit lassen sich dann vielleicht doch das ein oder andere Experiment gestalten. Ich habe hier einige Links zur Technik gefunden, die solche Bastelarbeiten beschreiben.

Tutorial:Using a RFID Card Reader with the Arduino (Update)
https://www.youtube.com/watch?v=yUtFinIsPWw

Tutorial: Using the SPI Bus on the Arduino
https://www.youtube.com/watch?v=2Kr8eHHwcws

Weitere Links