Update README.md

This commit is contained in:
Joris 2020-10-16 08:21:22 +00:00
parent b52f0b20ec
commit b07d35a964

View File

@ -40,16 +40,9 @@ Das Ziel ist, ein System zur Verfügung zu stellen, welches möglichst wenig anf
Alle 4 Optionen werden vom Lesegerät unterstützt. Die Option kann über die Konfigurationsseite des Lesegerätes eingestellt werden.
<<<<<<< HEAD
Das Szenario, dass die Karte unerlaubt weitergegeben wird, läßt sich alleine über die Wahl der RFID Technologie lösen, daher bleibt ein gewisses Restrisiko von Missbrauch.
Zur Zeit wird die Karte einmal gelesen und dann vom Lesegerät abgeschaltet. Eine Option, dass die Anwesenheit der Karte kontinuierlich überprüft wird, könnte bei Bedarf hinzugefügt werden.
=======
Das Szenario, dass die Karte unerlaubt weitergegeben wird, läßt sich nicht alleine über die Wahl der RFID Technologie lösen, daher bleibt ein gewisses Restrisiko von Missbrauch.
Zur Zeit wird die Karte einmal gelesen und dann vom Lesegerät abgeschaltet. Eine Option, dass die Anwesenheit der Karte kontinuierlich überprüft wird, könnte bei Bedarf hinzugefügt werden.
>>>>>>> a8c06fbb59fb8e7d3e544abf2e23fade16fec9b8
### 2. Kommunikation über MQTT
Das Lesegerät kann über die Konfigurationsseite entweder über LAN oder über WLAN in einem Netzwerk eingebunden werden. Die IP-Adresse des Brokers muss, zusammen mit der Geräte-ID ebenfalls manuell über die Konfigurationsseite eingegeben werden. Über standardisierte Adressen (Topics), in der die ID des Lesegerätes enthalten ist, werden Nachrichten (Payload) verschickt. Das Gerät abonniert ebenfalls ein standardisiertes Topic um Nachrichten empfangen zu können.
@ -167,11 +160,8 @@ Es existieren eine vielzahl von "Magic Cards" die über verschiedene Lesegeräte
Als erste Schritt zur Erhöhung der Sicherheit kann man den Typ der gelesene Karte identifizieren (über den sogenannten SAK Wert). Auch hier gibt es mittlerweile "Magic Cards" bei denen sogar der SAK-wert geändert werden kann, und die Karte sich somit als einen beliebigen Typ identifiziert.
#### Karten Typ abfragen
Als zweiter Schritt sollte man daher Typ-spezifische Anfragen starten um sicher zu gehen, dass es sich auch tatsächlich um den vorgetäuschten Typ handelt. Identtifiziert sich die Karte als DESFire (SAK=0x20), kann man ein DESFire-spezifischen Befehl schicken. Nur so, läßt sich sicherstellen, dass es sich auch tatsächlich um eine Karte diesen Typs handelt. Diese Vorgehensweise reicht nur für den Typ Mifare Plus aus, für alle andere jedoch nicht, da es mittlerweile zu jede andere "sichere" Karte auch "Magic Cards" gibt.
<<<<<<< HEAD
#### Verschlüsslung
=======
#### Verschlüsselung
>>>>>>> a8c06fbb59fb8e7d3e544abf2e23fade16fec9b8
Als dritter Schritt bleibt somit nur die Freigabe übver eines geheimen Schlüssels oder die verschlüsselte Kommunikation mit der Karte übrig. Hier eigenen sich nur Mifare Classic, Mifare Ultralight C, Mifare Desfire und Mifare Plus, andere (Standard-) Karten sind unverschlüsselt und können daher kopiert werden. Bei der Verschlüsselung gilt es zwischen den System Crypto1 (Mifare Classic) und DES/AES (Ultralight C, DESFire, Mifare Plus) zu unterscheiden. Ersteres ist gehackt und die Daten können mit etwas Aufand dupliziert werden (inkl. Schlüssel). DES / AES ist in zusammenhang mit RFID noch nicht gehackt, kann also als sicher angesehen werden.
#### Zeitstempel
Eine alternative Methode ist die Verwendung eines Zeitstempels auf der Karte, der mit jedem Lesevorgang aktualisiert wurd und mit einem gespeicherten Zeitstempel abgeglichen wird. Dieser Zeitstempel kann sogar unverschlüsselt gespeichert werden, da nach dem Klonen einer Karte, nur einer der beiden Klone weiterverwendet werden kann. Die andere Karte ist nach der ersten Aktualisierung des Zeitstempels ungültig.