Lösungsansätze

Nur für einen Teil der in Kapitel 3 identifizierten Herausforderungen kann die vorliegende Studie konkrete Lösungsansätze anbieten. Diese Lösungsansätze fokussieren dabei vorrangig auf den Bereich der an den Versicherten gestellten Anforderungen.

Automatische CAN-Erkennung und -Speicherung

Zur Nutzung der Authentisierungsfunktion wird die Card Access Number (CAN) benötigt. Diese ist auf der Gesundheitskarte aufgedruckt, jedoch insbesondere für Personen, die an einer Schwäche des Sehvermögens leiden, u.U. nur schwer oder gar nicht zu erkennen. Moderne Mobilgeräte verfügen fast ausnahmslos über integrierte Kameras, die einen möglichen Lösungsweg zur automatischen Erkennung der CAN eröffnen:

Über die Hauptkamera(s) auf der Rückseite der jeweiligen Endgeräte können Bilder der elektronischen Gesundheitskarte erfasst werden. Mithilfe einer speziellen App kann aus diesen Bildern per optischer Zeichenerkennung (OCR) die CAN extrahiert werden.

Im Rahmen der Studie wurde eine entsprechende Funktionalität prototypisch umgesetzt. Die Erkennungsrate des implementierten Algorithmus im Zusammenspiel mit der genutzten OCR-Bibliothek lag für die verwendeten Testkarten bei annähernd 100 Prozent. Die Dauer der Erkennung variierte in Abhängigkeit des jeweils verwendeten Endgerätes und der Beleuchtungssituation zwischen durchschnittlich 2 und 8 Sekunden

Um sicherzustellen, dass ähnliche Erkennungsraten auch für Karten von Herausgebern mit unterschiedlichen Designs – insbesondere bezogen auf verwendete Farben sowie das zugrundeliegende Kontrastverhältnis von Schrift- und Hintergrundfarbe – gelten, wurden im Internet verfügbare Bilder von Beispielkarten verschiedener Herausgeber um eine CAN ergänzt und maßstabsgetreu ausgedruckt.

Designs verschiedener Kartenherausgeber (ergänzt um CAN)

Die anschließenden Tests ergaben, dass auch für diese Designs ähnliche Erkennungsraten zu beobachten waren, wie für die Testkarten der gematik. Die durchgeführten Tests stellen jedoch nur eine Stichprobe dar. Grundsätzlich sollten Kartenherausgeber prüfen, ob das von ihnen gewählte Kartendesign für eine automatische Erkennung der CAN per optischer Zeichenerkennung geeignet ist.

Im Zusammenspiel mit einer dauerhaften Speicherung der Card Access Number im mobilen Endgerät ergibt sich nur bei der ersten Verwendung der Karte die Notwendigkeit einer automatischen Erkennung (oder alternativ einer manuellen Erfassung). Für den Verbindungsaufbau zu dieser Karte per PACE kann fortan die gespeicherte CAN genutzt werden. In diesem Zusammenhang muss jedoch berücksichtigt werden, dass die die Karte nutzende Anwendungen eine Unterscheidbarkeit des derzeitigen Nutzers ermöglicht. Dies gilt insbesondere dann, wenn verschiedene Gesundheitskarten mit einem Endgerät genutzt werden.

Zusammenfassung

Reduzieren der Häufigkeit der Kartenverwendung

Wie bereits in den Ausführungen zu den Grundlagen und Herausforderungen dargestellt, ist es für die Nutzung der Authentisierungszertifikate bzw. des zugehörigen privaten Schlüsselmaterials erforderlich, dass der Versicherten die von ihm festgelegte PIN eingibt und die Gesundheitskarte für einen Zeitraum von ca. 4 – 9 Sekunden ruhig an einen relativ kleinen Bereich auf der Rückseite des Endgerätes hält. Dies stellt ein praktikables und akzeptables Authentisierungsverfahren dar, sofern der Versicherte nicht allzu häufig zur Durchführung der Anmeldeprozedur aufgefordert wird.

Ein üblicher Ansatz, um mehrfache Anmeldungen an einem Dienst zu vermeiden, ist die Verwendung von sogenannten Security-Sessions. Dabei übergibt der authentifizierende Dienst dem aufrufenden Client nach einer erfolgreichen Anmeldung einen Session-Identifier (z.B. in Form eines http-Cookies), den der Client nun seinerseits in folgenden Aufrufen an den Dienst senden muss. Der Dienst kann somit jeden Aufruf eindeutig einer erfolgten Authentisierung zuordnen. Die Lebensdauer der Security-Session ist dabei grundsätzlich zeitlich begrenzt.

Dieser Ansatz bietet - bezogen auf einen einzelnen Dienst - eine mögliche Lösung zur Reduzierung der Häufigkeit der Kartennutzung. Dennoch ist auch mit dieser Lösung eine Reihe von Problemen verbunden:

Um die angesprochenen Probleme zu adressieren, wurden in der Vergangenheit Lösungsmuster entwickelt bei denen sogenannte Identity Provider die Authentifizierung des Nutzers übernehmen und Sicherheits-Token ausstellen, die von den zu schützenden Anwendungsdiensten im Anschluss genutzt werden.

Entkopplung von Sicherheits- und Anwendungsdiensten

Dieses Muster hat entscheidende Vorteile: (1) Der Anwendungsdienst muss ausschließlich in der Lage sein, die ausgestellten Token zu validieren. (2) Der Identity Provider kann beliebige Authentisierungsverfahren unterstützen und bei Bedarf auch kombinieren. Dies hat keine Auswirkungen auf den Anwendungsdienst.(3) Der Identity Provider kann bei Bedarf eine Security-Session etablieren und somit ein „Single-Sign-On“ (SSO) unterstützen.

Verschiedene Standards existieren, um das beschrieben Architekturmuster umzusetzen. Im Rahmen der prototypischen Implementierung wurde entschieden, OpenId Connect zu nutzen, da dieser Standard in den zurückliegenden Jahren insbesondere im mobilen Anwendungsentwicklungsbereich eine weite Verbreitung gefunden hat. Implementierungsspezifische Detail können der Lösungsarchitektur entnommen werden.

Zusammenfassung

Unterstützung ergänzender Authentisierungsverfahren

Wie im vorangegangen Abschnitt beschrieben, bietet der Einsatz eines Identity Providers eine ganze Reihe von Vorteilen. Von besonderem Interesse ist die leichte Erweiterbarkeit und Nutzbarkeit eines solchen Dienstes bezüglich der Unterstützung und Kombination beliebiger Authentisierungsverfahren. Dieses Merkmal eröffnet die Möglichkeit, ergänzend zur elektronischen Gesundheitskarte weitere Authentisierungsverfahren zu etablieren, die nicht zwingend an die Karte des Versicherten gebunden sind, aber dennoch ein hohes Maß an Sicherheit bieten.

Im Rahmen der Studie wurde ein solches ergänzendes Authentisierungsverfahren für die Android-Plattform im Zusammenspiel mit keycloak als Identity Provider konzipiert und exemplarisch umgesetzt:

Registrierung eines dynamisch generierten Schlüssels am Identity Provider

  1. Im Rahmen des Registrierungsprozesses generiert das mobile Endgerät des Nutzers ein kryptografisches Schlüsselpaar. Die Generierung ist dabei an die Voraussetzungen gebunden, dass das Endgerät über einen aktiven Lock Screen verfügt und das Schlüsselmaterial in einem „sicheren“ Speicher ablegt. Ist dies nicht der Fall, wird der Vorgang abgebrochen.
  2. Das mobile Endgerät verbindet sich mit dem Identity Provider und empfängt von diesem ein sogenanntes Challenge. Dabei handelt es sich um eine zu signierende Nachricht zufälligen Inhalts.
  3. Das mobile Endgerät fügt der zu signierenden Nachricht den öffentlichen Teil des in Schritt 1 generierten Schlüsselpaares bei und signiert das Gesamtpaket mithilfe des auf der Gesundheitskarte gespeicherten AUT-Zertifikats. In diesem Zusammenhang ist die PIN-Eingabe des Versicherten erforderlich.
  4. Die signierte Nachricht wird nun an den Identity Provider gesendet.
  5. Der Identity Provider prüft die Signatur der empfangenen Nachricht sowie die Gültigkeit des für die Signatur verwendeten Zertifikates bzw. der kompletten dahinterliegenden Zertifikatskette. Fällt das Ergebnis der Prüfung positiv aus, registriert der Identity Provider den übermittelten öffentlichen Schlüssel als zusätzliches Credential. Optional wird an das neue Credential eine maximale Gültigkeitsdauer gebunden.

Nach erfolgter Registrierung kann nun auch das im mobilen Endgerät gespeicherte private Schlüsselmaterial für die Authentisierung (hier: Signatur entsprechender Challenges) genutzt werden.

Alternative Authentisierung mithilfe dynamisch generierter Schlüssel

Dabei gilt es jedoch die im Rahmen der Schlüsselgenerierung gesetzten Bedingungen zu beachten. Dazu gehören z.B.:

Welche Bedingungen genau definiert werden können, ist jedoch abhängig von der jeweils genutzten Version des Android-Betriebssystem und der Hardwareausstattung des mobilen Gerätes. Es wird empfohlen diese Aspekte in einer weiteren Studie detaillierter zu untersuchen und konkrete Empfehlungen bezüglich der zu wählenden Parameter auszusprechen bzw. verpflichtende Anforderungen zu definieren.

Generell bietet die Nutzung eines alternativen Verfahrens die Chance, die Dauer des Authentisierungsvorganges deutlich zu reduzieren und damit die Usability für den Nutzer weiter zu erhöhen. Die angesprochene Zeitersparnis ergibt sich dabei primär durch (1) den Wegfall der Kartenkommunikation (insb. PACE-Verbindungsaufbau) und (2) die Möglichkeit - als Alternative zu PIN Codes - andere Sicherheitsmerkmale wie z.B. Swipe-Muster oder Fingerabdrücke zur Freischaltung des Schlüsselmaterials zu nutzen. Dennoch sollte man sich bewusstmachen, dass je nach Ausgestaltung des Endgerätes nicht zwangsläufig das gleiche Sicherheitsniveau wie beim Einsatz der elektronischen Gesundheitskarte erreicht werden kann.

Zusammenfassung

[in Erstellung - Inhalte unvollständig]