Forum: Mikrocontroller und Digitale Elektronik Innenleben des Basiskartenlesegerätes


von Meike (Gast)


Lesenswert?

Hallo,

ab heute gibt es in der Computerbild (die DVD Version für 3,70 Euro) den 
Basiskartenleser für den neuen Personalausweis.

Wer gerne wissen will wie das Gerät von innen aussieht kann es hier 
anschauen:

http://s3.imgimg.de/uploads/Basisleser103408dd6jpg.jpg
http://s3.imgimg.de/uploads/Basisleser2ece2ae95jpg.jpg
http://s3.imgimg.de/uploads/Basisleser3bbc7cb70jpg.jpg

IC3 ist der PN512 von NXP das Datenblatt ist hier zu finden:
http://www.nxp.com/documents/data_sheet/111334.pdf
Die Pins SIGIN, SIGOUT, AUX1 und AUX2 sind auf ein Lötpad geführt.

Bei IC1 handelt es sich vermutlich um einen Spannungswandler.

Desweiteren ist ein IC mit schlecht lesbaren Zahlen zu finden. Er ist 
mit dem USB-Anschluss verbunden und es sind einige PINS auf Lötpads 
geführt (VCC, CLK, RESET, DATA und GND)



Vielleicht kann jemand so ein Gerät für seinen neuen Personalausweis 
schon gebrauchen. Viele schreiben es soll unsicher sein, weil die 
Tastatur zur Pineingabe fehlt.


Viele Grüße
Meike

von A. N. (bastelmaniac)


Lesenswert?

Ausgerechnet der Computerbild Klientel dreht man einen Basisleser an.

Man will also doch, dass es unsicher ist, oder wie sonst soll man so was 
verstehen?

(Der Verfasser dieses Schreibens hat schon so einige PCs von typischen 
CBild lesern betreuen müssen und spricht daher aus Erfahrung)

P.S.:

Ziemlich "Deutsch" (Beschriftung) die Technik, so was finde ich bei 
Massenprodukten kaum, interessantes Merkmal. Schon fast ein Wunder, dass 
unsere Regierung das nicht an die höchstspezialisierten und supertollen 
Computerinder und lieben, fleissigen Fließbandchinesen outgesourct hat.

P.P.S.:

Wer Ironie findet, darf sie behalten.

von Martin (Gast)


Lesenswert?

Irgendwo (vielleicht der noch nicht identifizierte Chip) muss noch ein 
USB <-> x Wandler drauf sein, weil der NXP Chip kein USB kann (oder ich 
habe es uebersehen).

Was fuer ein Leser ist das ? Wo bekommt man ihn und was kostet er ?

Gruesse,

    Martin

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

das Ding ist übrigens von ReinerSCT (http://www.reiner-sct.com/)

Matthias

von Manuel J. (manuel-j)


Lesenswert?

Hier im Video ab 0:50 gibt es ein paar weitere Infos:
http://www.computerbild.de/videos/Heftvorschau-COMPUTER-BILD-26-10-4993212.html
Also falls ich noch irgendwo eine Computerbild mit Leser finde, dann 
werde ich wohl schwach werden. ;)

von Alex W. (a20q90)


Lesenswert?

Interesannt wäre doch den neuen Perso für eigene Zuganskontrollen zu 
benutzen! Dann fällt auf einmal der ganze RFID-Müll weg, welchen man für 
jede EInrichtung extra verwenden muss.

Gibts irgendwo ne Spec dafür, um einen eigenen Leser zu bauen?

RFID mit den "alten" Transpondern ist ja technisch bei den Bastlern 
schon ausgelutscht

von Meike (Gast)


Lesenswert?

Hallo Martin,

ich nehme auch an, dass der unbekannte IC der USB <-> x Wandler ist. 
Vorallem da er mit dem USB Anschluss verbunden ist :)

Bei dem Lesegerät in der Computerbild ist übrigens auch eine RFID Karte 
mit dabei. Vermutlich zum testen für die Personen die noch keinen neuen 
Personalausweis haben. Vermutlich steht genaueres in der Zeitschrift 
selbst, die habe ich aber nicht vor zu lesen ;)

von Dario C. (dario) Benutzerseite


Lesenswert?

Ich habe mir heute auch so einige davon zugelegt.
Ziel wäre eine Zutrittskontrolle damit zu machen.
Dazu müsste man einen Atmel anschließen.
Soo schwer kann das ja nicht sein.
Aber ich habe noch keinen Code gefunden,
dann muss man wohl alles selber schreiben.
Interessant ist, dass man den Chip laut Datenblatt
auch als Tag nutzen kann, also als Simulator für eine Chipkarte.
Bin mal gespannt, was sich da noch alles tut.

von ossi2 (Gast)


Lesenswert?

Hat jemand schon herausbekommen, was das zweite IC auf der Seite ist, 
auf welcher auch der NXP Chip sitzt (Aufschrift bei mir MWAD LEVB) ?
Ich vermute es ist ein Spannungsregler.

von Basti (Gast)


Lesenswert?

Gibt wohl verschiedene Versionen. Entweder ist der Chip ein PN512, wie 
hier, oder ein RC523. Die sind aber kompatibel.

von steve (Gast)


Lesenswert?

Hi,

auch ich habe gestern mal zugeschlagen und 3 Stück gekauft.
Ich habe in meinem wiki mal ein bisschen gesammelt (Innenbilder etc.):

http://wiki.steve-m.de/doku.php/epa_basis_reader

Steve

von M. G. (looking)


Lesenswert?

steve schrieb:
> Hi,
>
> auch ich habe gestern mal zugeschlagen und 3 Stück gekauft.
> Ich habe in meinem wiki mal ein bisschen gesammelt (Innenbilder etc.):
>
> http://wiki.steve-m.de/doku.php/epa_basis_reader
>
> Steve

Du schreibst im wiki was von mifare cards. Werden die bei dir erkannt?
Bei meinem Leser wurde nur die mitgelieferte Karte erkannt, Mifare 
Karten jedoch nicht, die LED blieb auch aus.
Der SCL011 von SCM erkennt jedoch Mifare-Karten.

von steve (Gast)


Lesenswert?

M. G. schrieb:
> Du schreibst im wiki was von mifare cards. Werden die bei dir erkannt?

Gute Frage, ich ging davon aus, weil es im Datenblatt steht. Ich habe 
eben nochmal einige andere Karten ausprobiert, der ePass wird z.B. auch 
erkannt (ebenso wie eine Mitarbeiterkarte). Mein Studentenausweis (vmtl. 
Mifare classic) wurde jedoch nicht erkannt (auch keine Veränderung im 
SPI traffic).

Jedoch keinen anderen Reader / weitere Karten zur Hand von denen ich 
weiß welcher Chip verbaut ist, um das zu verifizieren.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

steve schrieb:
> Mein Studentenausweis (vmtl. Mifare classic)

Falls Göttingen, dann ist es ein Mifare.

von Mike (Gast)


Lesenswert?

Jetzt gibt es so ein Gerät günstig zu kaufen, nur was kann man damit 
anfangen? Die Software auf der Internetseite überzeugt mich nicht 
wirklich.

von Steve M. (steve_m)


Lesenswert?

Ich habe mir mal die SPI-Befehle direkt nach dem Einschalten angeschaut 
und mit dem Datenblatt dekodiert:

http://wiki.steve-m.de/doku.php/epa_basis_reader#initialization_of_the_pn512

Steve

von Steve M. (steve_m)


Lesenswert?

Kurzes Update: beim verwendeten Mikrocontroller handelt es sich um einen 
Cypress PSoC CY7C64316 mit 32KB Flash und 2KB RAM.

http://wiki.steve-m.de/doku.php/epa_basis_reader#the_psoc_microcontroller_cypress_cy7c64316

von Info (Gast)


Lesenswert?


von Info (Gast)


Lesenswert?

Ah, super.
Es wär schön, wenn du im Wiki noch einen Link auf diesen Thread setzt.

http://de.wikipedia.org/wiki/PSoC
Beitrag "PSOC Programmer Eigenbau Free"

von Ben (Gast)


Lesenswert?

Gibt es schon was Neues bzgl. anderer Mifare Tags? Eine Karte, die 
höchstwahrscheinlich ein Mifare Ultralight Tag enthält lässt sich 
nämlich auch nichts entlocken...

von Heinz (Gast)


Lesenswert?

Mit welcher Software benutzt ihr denn dieses Teil? Die original BILD SW 
möchte ich meinem Rechner erstmal ersparen. Das Gerät wird hier als USB 
Smart Card reader ins System eingebunden, unter Smartcard-Leser.

Ist für die Regierung gleich DIE Möglichkeit der Bevölkerung den 
Bundestrojaner unterzujubeln :D .

von Ongaku (Gast)


Lesenswert?

Hi,

die Karte ist eine MIFARE DESFire EV1.

von Sabine (Gast)


Lesenswert?

Ich bin mir nicht sicher ob das viel weiter hilft, aber ich habe mal in 
den Treiber reingesehen, der beim Hersteller zu finden ist.
http://www.reiner-sct.com/index.php?option=content&task=view&id=218

Da bin ich über den Namen "Ludovic Rousseau" gestolpert.

Auf seiner Webseite findet man den Code und Makefile.
Vileicht könnte man so noch einige ander schöne Sachen herausfinden und 
umsetzten.
http://ludovic.rousseau.free.fr/softwares/pcsc-tools/

Leider habe ich nicht weiter reingesehen, aber ein Tool welches mir auf 
der Konsole ein parr Karteninfos ausspuckt würde ich schon cool finden.

von Info (Gast)


Lesenswert?

Er hat anscheinend den CCID  (Chip Card Interface Device) Treiber für 
Linux geschrieben:
http://packages.qa.debian.org/c/ccid.html
http://pcsclite.alioth.debian.org/ccid.html

Er verweist mit einer Windows Variante seines Skripts auf

http://www.springcard.com/solutions/pcsc.html

Dort gibt es "SpringCard PC/SC Quickstart"
".. is a set of sample applications, you may download for free."

Download: http://www.springcard.com/download/find.php?file=sdd4c0

Der Reader wird erkannt, die Karte auch. Mehr habe ich noch nicht 
experimentiert.

von Info (Gast)


Lesenswert?

Man kann mit den Programmen Daten austauschen. Ggf. muss mit "Connect" 
die Karte verbunden werden.

ATR: http://de.wikipedia.org/wiki/Answer_to_Reset
APDU: http://de.wikipedia.org/wiki/Application_Protocol_Data_Unit

Mit SCardTK sind anscheinend nur Generic Befehle möglich.

von Info (Gast)


Lesenswert?

> Mit SCardTK sind anscheinend nur Generic Befehle möglich.

Ich meine damit, dass die Karte nichts anderes unterstützt, ausser UID. 
Das kann man sich auch mit "Card Tool ansehen".
Den Kartentyp kann ich nciht auslesen.

Ongaku schrieb:
> die Karte ist eine MIFARE DESFire EV1.

Es wäre gut, wenn du das etwas erläutern könntest :-)

von Info (Gast)


Lesenswert?


von Thomas R. (tinman) Benutzerseite


Lesenswert?

hehe leider gibts die Ausgabe bei mir im Dorf nicht mehr, Ebay scheint 
aber wieder voll zu sein.

von munit (Gast)


Lesenswert?

Hi,

Warum auch immer wurde mir erst heute der Computerbildnewsletter 
zugesand, hat noch jemand ein Gerät übrig? Will auch damit rumspielen :)

bitte per mail an munit[äd}gulli.com

Vielen Dank

von Steve M. (steve_m)


Lesenswert?

Hi,
mal ein Update:

Ich habe den m8cprog um Unterstützung für den CY7C64316 erweitert, 
nachdem ich mir die ISSP-Befehle des MiniProg1 angeschaut habe.

Siehe: https://github.com/steve-m/m8cutils/tree/cy7_prog

Des Weiteren ist es mir mit ein paar Tricks gelungen die Firmware 
auszulesen.
http://www.youtube.com/watch?v=R6NdeUanK7s
Nach bisheriger Analyse gibt es definitiv einen Bootloader der 
Funktionen zum Flashen enthält, allerdings ist der genaue Mechanismus 
(besonders zum Aktivieren des BL wenn die eigentliche Firmware läuft) 
noch unbekannt.

Übrigens wurde der Thread hier in einem Blog auf heise.de erwähnt:
http://www.heise.de/ct/artikel/ePerso-Alltag-Vom-Foerdern-und-Basteln-1154623.html

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Steve M. schrieb:

> Übrigens wurde der Thread hier in einem Blog auf heise.de erwähnt:
> 
http://www.heise.de/ct/artikel/ePerso-Alltag-Vom-Foerdern-und-Basteln-1154623.html

Das heisst... in absehbarer Zeit stürmen die ganze Heise-Trolle dieses 
Forum? Ich beabtrage Artenschutz für Original µC-Trolle (TM)!

von Peter (Gast)


Lesenswert?

Servus. nur eine kleine Frage: Kann ich den Reader auch an einer 
Seriellen-Schnittstelle betreiben?
http://s3.imgimg.de/uploads/Basisleser103408dd6jpg.jpg
VCC(, RESET,) GND, DATA.
Das wäre mir 1000x Lieber als USB (Organisatorische Gründe ^^)

Grüßle

von DevilX (Gast)


Lesenswert?

Hallo das mit der Serien Schnittstelle würde mich auch interessieren.
Laut Datenblatt sollte es der NXP Chip doch können oder?

von Hans (Gast)


Lesenswert?

>Des Weiteren ist es mir mit ein paar Tricks gelungen die Firmware
>auszulesen.
>http://www.youtube.com/watch?v=R6NdeUanK7s

Auf dem Video sind aber "nur" eine Menge Spielzeuge und
ein sich mit Hex fuellender Bildschirm zu sehen....

Ich kann verstehen, dass man den Download hier nicht
hinterlegen will, vom Bildschirm abtippen wollte ich
allerdings auch nicht ;-)

Gibt es noch eine Beschreibung/Kommentare, wie der
Trick-Woodoo nachvollziehbar funktioniert ?

VG,
Hans

von Steve M. (steve_m)


Lesenswert?

Hans schrieb:

> Gibt es noch eine Beschreibung/Kommentare, wie der
> Trick-Woodoo nachvollziehbar funktioniert ?

Cypress hat eine blockweise Flash-Protection, die mehrere Modi kennt. 
Folgendes ist dem TRM, "Table 3-10. Protect Block Modes" entnommen:

U = Unprotected (lesbar + schreibbar)
F = Factory upgrade (Read protect, also schreibbar)
R = Field Upgrade (Disable external write)
W = Full Protect (Disable internal write)

Und so ist die Flash-Protection beim cyberjack:

0000: R R F R R R R R R R R R R R R R
[...] (Rest = R)

Block 2 ist also schreibbar via ISSP.
Über ISSP kann man auch alle Register schreiben, inklusive des Program 
Counter, und es gibt eine undokumentierte Funktion des PORS-Bits im 
CPU_SCR0:

"Power On Reset Status. This bit may not be set by user code; however, 
it may be cleared by writing a ’0’.

Wenn man allerdings eine 1 schreibt, führt die CPU einen Reset durch, 
ohne den Program Counter zurückzusetzen.

Der Rest dürfte klar sein, man hat 128 Byte Platz für ein kleines 
Programm das den Flash dumpt, das schreibt man in Block 2, lädt den 
Program Counter auf 0x100 und setzt das PORS-Bit.

> vom Bildschirm abtippen wollte ich allerdings auch nicht ;-)

Wärst du hier angemeldet, hättest du jetzt eine PM.

von Alexander S. (esko) Benutzerseite


Lesenswert?

Steve M. schrieb:
> 0000: R R F R R R R R R R R R R R R R
> [...] (Rest = R)
>
> Block 2 ist also schreibbar via ISSP.
> Über ISSP kann man auch alle Register schreiben, inklusive des Program
> Counter, und es gibt eine undokumentierte Funktion des PORS-Bits im
> CPU_SCR0:
>
> "Power On Reset Status. This bit may not be set by user code; however,
> it may be cleared by writing a ’0’.
>
> Wenn man allerdings eine 1 schreibt, führt die CPU einen Reset durch,
> ohne den Program Counter zurückzusetzen.
>
> Der Rest dürfte klar sein,

Der Trick ist ja nicht ganz neu und daher erlauben viele ICs nur noch 
das komplette überschreiben des Flash. Warum dies hier - in einer 
wirklichen Sicherheitsanwendung - anderes ist erschließt sich mir nicht.

Man kann nur hoffen, dass die PKI und die kryptographischen Verfahren 
korrekt implementiert wurden.

von Thomas T. (knibbel)


Lesenswert?

Steve M. schrieb:
> Der Rest dürfte klar sein, man hat 128 Byte Platz für ein kleines
> Programm das den Flash dumpt, das schreibt man in Block 2, lädt den
> Program Counter auf 0x100 und setzt das PORS-Bit.

Das bedeutet doch aber auch, dass man nicht an den ursprünglichen Inhalt 
von Block 2 kommt, oder?

Oder könnte man sich auf 64 Bytes beschränken und dann einmal ab 0x100 
und dann ab 0x140 dumpen?

Geht aber wahrscheinlich nicht, da sich nur der gesamte Block 
überschreiben lässt ...

Ist aber ein interessanter Ansatz ...  :-)

Gruß,
Thomas

von Steve M. (steve_m)


Lesenswert?

Alexander Schmidt schrieb:
> Der Trick ist ja nicht ganz neu und daher erlauben viele ICs nur noch
> das komplette überschreiben des Flash. Warum dies hier - in einer
> wirklichen Sicherheitsanwendung - anderes ist erschließt sich mir nicht.

Ja, diese Lücke ist im Falle des PSoC schon seit mindestens 5 Jahren 
bekannt, allerdings hat auch ReinerSCT geschlampt. Wären alle Blöcke im 
'R'-Modus, wäre es nicht möglich gewesen.

Thomas T. schrieb:
> Das bedeutet doch aber auch, dass man nicht an den ursprünglichen Inhalt
> von Block 2 kommt, oder?

Ja, genau. Das gehört noch zum Bereich des Bootloaders, da scheint 
allerdings nichts mit all zu großer Bedeutung drin zu sein. Der Reader 
funktioniert auch ohne Probleme wenn man den ausgelesenen Code nach 
Chip-Erase zurückflasht, also mit fehlendem Block 2. Ob der Bootloader 
dann noch korrekt arbeitet (Flashfunktionen) bleibt noch zu beweisen, 
allerdings gibt es nur sehr wenige Sprünge in diesen Block.

> Oder könnte man sich auf 64 Bytes beschränken und dann einmal ab 0x100
> und dann ab 0x140 dumpen?

Nein, die CY8 haben 64 Byte Blockgröße, die CY7 128 Byte. Und man kann 
den Flash nur blockweise löschen.

von Stephan V. (Firma: FH Gelsenkirchen) (devilx)


Lesenswert?

Hallo

Ich möchte mit einem ARM Cortex M3 die ID o.ä. des neuen 
Personalausweises auslesen.
Wisst ihr ob es ein Lesegerät gibt was Uart unterstützt oder seht ihr 
eine Möglichkeit das mit dem NXP PN 512 zu realisieren?

von UNIX4444 (Gast)


Lesenswert?

Kennt jemand ein (ersatz) Programm mit denen man die Karten beschreiben 
kann.
mit den Kartentrsor klappt das nicht mit den Karten aus "china".
"Gibt Fehler 12: Anwendungsfehler aus"
(mifare Desfire EV1 8k)

von Herr B. (benzinerwin)


Lesenswert?

Ist zwar getz ne Zeit her, aber vielleicht interessiert es ja noch 
irgendwen...
Inhalt von Block 2 ist die Seriennummer (4 Bytes, little endian) gefolgt 
von einem simplen Füllmuster. Damit kann man sich auch ziemlich sicher 
sein, dass der Rest dann wohl keine Funktion hat.
1
00000100  XX XX C6 04 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F  ..Æ.............
2
00000110  10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F  ................
3
00000120  20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F   !"#$%&'()*+,-./
4
00000130  30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  0123456789:;<=>?
5
00000140  40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F  @ABCDEFGHIJKLMNO
6
00000150  50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F  PQRSTUVWXYZ[\]^_
7
00000160  60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F  `abcdefghijklmno
8
00000170  70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F  pqrstuvwxyz{|}~.

Wären alle Blöcke auch gegen internes Flashen geschützt, ginge es 
theoretisch auch, es wäre aber etwas mühseliger (dafür hätte man im 
Gegenzug aber die Gewissheit, dass man dann nichts kaputtmachen könnte).

von Igor S. (myigel)


Lesenswert?

Gibt es noch neue Informationen (z.B. den Dump)?
Wäre interessant zu wissen wie weit sich das gerät noch modifizieren 
lässt :)

von Steve M. (steve_m)


Lesenswert?

Igor S. schrieb:
> Gibt es noch neue Informationen (z.B. den Dump)?

Siehe PM.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.