Gast
#6452814
Guten Morgen,
ich mache meine ersten Schritte mit Mifare-Classic-Karten.
Die ID kann ich korrekt lesen. Für die Datenblöcke muss ich zuerst
authentifizieren, da komme ich nicht weiter:
Ich sende der Karte folgende Sequenz:
0xFF, 0x82, 0x00, 0x00, 0x06, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5
nach dem Datenblatt soll das den Schlüssel 0xA0 ... 0xA5 in den
volatilen Speicher (Byte 2 (0x00)) als Schlüsselindex 0 (Byte 3) laden.
0xA0 ... 0xA5 ist ein Standart-Schlüssel, den ich mit der NXP-App
auslesen konnte.
Ich bekomme von der Karte den Rückgabewert 0x6988, was bedeutet
"Schlüsselindex" nicht im erlaubten Bereich.
Laut Datenblatt sollte 0 ein gültiger Wert sein.(?)
Ich habe dann den Schlüsselindex auf 1 geändert:
0xFF, 0x82, 0x00, 0x01, 0x06, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5
Nun kommt der Code 0x6989 zurück, der "Schlüssellänge ungültig"
bedeutet.
Laut Datenblatt und der NXP-App sollen es genau 6 Byte sein.
Ich habe dann andere Schlüssellängen ausprobiert:
Solange Byte 4 zur Länge des Schlüssels passt, bleibt es bei 0x6989,
falls nicht, kommt der Code 0x6700 ("Wrong length, Lc incoherent with
Data In").
Ich habe auch den Schlüssel 6 mal 0xFF probiert, mit dem gleichen
Ergebnis.
Ob der Schlüssel stimmt oder nicht ist hier noch egal, ich will ihn
erstmal nur laden ... nur weiß ich nicht warum die Karte da nicht
mitspielt.(?)
Hat jemand eine Idee, was falsch läuft?
Erik