AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC
Thema durchsuchen
Ansicht
Themen-Optionen

Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC

Offene Frage von "DelphiBandit"
Ein Thema von Guido R. · begonnen am 16. Dez 2010 · letzter Beitrag vom 20. Dez 2010
Antwort Antwort
Benutzerbild von Guido R.
Guido R.

Registriert seit: 5. Jul 2007
141 Beiträge
 
Delphi 12 Athens
 
#1

Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC

  Alt 16. Dez 2010, 18:33
Hallo !

Ich möchte Felder einer Adressmaske füllen, indem ich die entsprechenden Daten aus der
* EGK (Elektronische Gesundheitskarte)
* KVK (Krankenversichertenkarte)
* oder nPA (neuer Personalausweis)
auslese.

Um Verbindung zu der Hardware herzustellen, benutze ich (bislang) eine abgewandelte Version von Nobbi's PCSC-Komponente (www.nobbi.com).
Dies funktioniert soweit auch ganz gut. Die CardReader (ReinerSCT & ChipDrive Micro) werden erkannt; ich kann ein einzelnes Gerät anwählen und bekomme auch korrekt mitgeteilt, wenn eine Karte eingelegt oder entnommen wird.

Meine Probleme sind nun :
  1. Wie erkenne ich, ob die eingelegte Karte eine KVK, EGK oder nPA ist ?
  2. Wie lese ich entsprechend der erkannten Karte die einzelnen Informationen (Name, Vorname, Wohnort, Krankenkasse etc.) aus?
    (Vermutlich mit "GetResponseFromCard()", aber die Parameter sind mir nicht geläufig)
Leider sind qualifizierte Informationen zu den o.a. Karten (insbes. zum nPA) dünn gesät.

SDKs, die entsprechende Funktionen mittels DLL zur Verfügung stellen, aber dafür die Verwendung eines bestimmten CardReader-Herstellers voraussetzen nützen mir leider wenig.

Ein paar Tips wären sehr willkommen.

Danke im voraus!
  Mit Zitat antworten Zitat
Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: In der Lüneburger Heide
165 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC

  Alt 16. Dez 2010, 20:20
Für KVK und eGK heisst das Stichwort imho CTAPI, allerdings bist Du damit wieder auf die verschiedenen Hersteller-DLLs angewiesen. Dafür lässt es sich aber "relativ" einfach implementieren, wenn man das Laden der DLLs dynamisch macht. Aber Du schreibst ja, dass Du diese nicht verwenden willst. Finde aber das ist der einfachere Weg, zumindest bei den beiden Karten, weil es sich auf drei einheitliche Kommandos beschränkt. Ob man sowas allerdings beim nPA auch bedacht hat, wage ich in Zweifel zu ziehen.
Carsten

Geändert von DelphiBandit (16. Dez 2010 um 23:35 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Guido R.
Guido R.

Registriert seit: 5. Jul 2007
141 Beiträge
 
Delphi 12 Athens
 
#3

AW: Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC

  Alt 20. Dez 2010, 12:54
Danke DelphiBandit für Deine Antwort.

Wenn mich Tante Google nicht betrogen hat, dann ist PC/SC ein Standard der den (fast ausschliesslich in Deutschland verwendeten) CTAPI-Standard zumindest ergänzen sollte und in der Version 2 auch weitestgehend die Mehrfunktionen von CTAPI erfüllt.

Letztendlich ist es mir aber auch egal, ob CTAPI oder PC/SC.
Ich möchte wissen, wie ich die einzelnen Informationen aus der Karte auslesen kann (Stichwort "APDU" !?). Die einzige brauchbare Information die ich bisher finden konnte, ist ein ca 10 Jahre alter Artikel aus der "Toolbox". Dieser bezieht sich aber ausschliesslich auf KVK und einige Telefonkarten.

Ideal wäre ein Beispiel, wie ich einen bestimmten Wert aus der jeweiligen Karte auslesen kann (CT_Data-Befehl (bei CTAPI) reicht mir hier) und Informationen über den strukturellen Aufbau der 3 Karten.

Danke.
  Mit Zitat antworten Zitat
Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: In der Lüneburger Heide
165 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Auslesen von Daten aus nPA, KVK oder EGK mittels PC/SC

  Alt 20. Dez 2010, 16:03
Hallo,

das ist nicht ganz so trivial auch wenn es nur ein Befehl zum Absetzen ist - dieser aber in seinen Parametern variabel ist.

Ganz grob mal hinskizziert:
  • CT_Init mit korrektem Parametern für CNR und Port (teilweise pseudo serielle COM-Ports)
  • CT_Data mit RequestICC
  • Result auswerten, wenn ok, dann CT_Data mit SelectFile
  • Wenn immer noch ok, dann CT_Data mit ReadBinary
  • Bei eGK sind je nach Länge der Daten ggf. noch Nachleseoperationen notwendig, sie liefert im Moment ein gezipptes XML, welches Container für Patientendaten, Versichertendaten und Geschützte Versichertendaten enthält.
Über den Aufbau der CTAPI-Kommando's findest Du genügend Dokumentation mit einer Suchmaschine. Über den Aufbau der KVK-Daten, hier kommt es auf die Einstellung des Lesers an, entweder Stichwort Festformat oder ASN.1.

Über den Aufbau der Kartendaten seien Dir diese Links empfohlen:
Aufbau KVK ab Seite 12
Aufbau der eGK-XML + Mapping eGK auf KVK-Daten

Was mir zum Einstieg geholfen hat, sind diverse kleine C-Beispielprogramme, welche die Leser-Hersteller meist mitliefern. Der Erfahrungswert sagt: Ist auf jeden Fall alles zusammen ein grösserer Angang.
Carsten
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz