Was ist Host Card Emulation auf Android?
Host Card Emulation lässt eine Android-App einem externen Lesegerät selbst antworten, in Software, statt den Austausch an einen Chip als sicheres Element zu leiten. Sie hat den Türsteher aus Hardware beseitigt, der einst bestimmte, wer eine Kartenanwendung ausrollen durfte, und das Sicherheitsproblem in das Betriebssystem und die Cloud verschoben.
Was sie ersetzt hat
Vor der Host Card Emulation hieß es, eine Karte vom Telefon aus vorzuzeigen, den Nachweis in ein sicheres Element zu legen: einen Hardwarechip, körperlich im Gerät oder in der SIM vorhanden, und verwaltet von dem, dem diese Hardware gehörte.
Diese Verwaltung war das Hindernis. Eine Bank oder ein Verkehrsbetrieb, die eine Kartenanwendung ausrollen wollten, mussten den Zugang mit einem Gerätehersteller oder einem Mobilfunkbetreiber aushandeln, eine Beziehung nach der anderen. Die Technik funktionierte, die geschäftlichen Vereinbarungen skalierten nicht.
Wie sie funktioniert
Android leitet den Austausch an eine App statt an einen Chip. Google dokumentiert den Mechanismus unter Host Card Emulation.
Eine App erklärt, welche Kartenanwendungen sie bedienen kann, mit Kennungen, nach denen Terminals namentlich fragen. Fragt ein Lesegerät nach einer davon, weckt das Betriebssystem die eingetragene App und übergibt ihr den Austausch. Die App antwortet, Befehl für Befehl, in Software.
Die Folge ist, dass kein Türsteher aus Hardware beteiligt ist. Jede Entwicklung kann eine App veröffentlichen, die einem Lesegerät antwortet, ohne einen Hersteller um Erlaubnis zu fragen.
Wohin die Sicherheit gegangen ist
Sie ist nicht verschwunden, sie ist umgezogen, und zu verstehen wohin, ist der Unterschied zwischen sauberem Einsatz und einem gebrechlichen Bau.
Ein sicheres Element widersteht dem körperlichen Auslesen seiner Schlüssel. Eine App auf dem Hauptprozessor tut das nicht, weshalb auf diesem Weg gehandhabte Nachweise typischerweise kurzlebige Token von einem Server sind statt eines dauerhaften Geheimnisses auf dem Gerät. Stehlen Sie das Token, läuft es ab. Stehlen Sie das Gerät, ist das Token ohne das nutzlos, was es entsperrt hat.
Das Modell wechselte also davon, ein Geheimnis in Hardware zu schützen, dahin, den Wert eines gestohlenen Geheimnisses zu begrenzen. Beides wirkt, und beides versagt auf verschiedene Weise.
Wann man sie einsetzt
Sie ist der richtige Mechanismus, wenn Sie beide Enden verwalten: Ihre eigene App auf dem Telefon, Ihre eigenen Lesegeräte im Feld. Kundenbindungsprogramme, Zutrittskontrolle für ein System, das Sie betreiben, Ticketing, bei dem Sie auch die Schranken betreiben.
Sie ist das falsche Werkzeug, um einen Nachweis vorzutäuschen, den jemand anderes ausgestellt hat. Sich für eine Kennung einzutragen verschafft Ihnen nicht die Schlüssel, die die echte Karte hält, das Terminal wird den Austausch also verweigern, obwohl Ihre App geantwortet hat.
Und die offene Host Card Emulation, die jeder App zur Verfügung steht, gibt es nur unter Android. Seit iOS 17.4 bietet Apple eine kontrollierte Entsprechung über seine NFC- und SE-Plattform: Eine App mit Apples Berechtigung kann im Rahmen einer geschäftlichen Vereinbarung Karten emulieren, aber nur auf diesem kontrollierten Weg und nicht auf einem offenen. Welcher Weg Ihnen offensteht, entscheidet den Entwurf meist, bevor irgendetwas anderes es tut.
Häufige Fragen
Braucht Host Card Emulation eine Internetverbindung?
Der Austausch mit dem Lesegerät nicht, aber Umsetzungen mit kurzlebigen Token brauchen eine Verbindung, um sie zu beziehen. Ob das Telefon offline arbeitet, hängt davon ab, wie viele Token im Voraus geholt wurden, und nicht vom Mechanismus selbst.
Ist sie weniger sicher als ein sicheres Element?
Sie ist anders sicher. Ein sicheres Element schützt einen dauerhaften Schlüssel in Hardware, dieses Modell begrenzt den Wert dessen, was sich entwenden lässt. Für viele Anwendungen genügt das zweite und ist weit leichter auszurollen.
Kann ich damit eine MIFARE-Classic-Karte emulieren?
Nein. Der Mechanismus behandelt den üblichen Befehlsaustausch von Kartenanwendungen und keine proprietären Verfahren, die unterhalb dieser Schicht arbeiten. Das ist einer von mehreren Gründen, warum Classic-Systeme sich Telefonnachweisen widersetzen.
Gibt es eine Entsprechung unter iOS?
Keine offene. Apple bietet seit iOS 17.4 einen kontrollierten Weg, seine NFC- und SE-Plattform, nur für Apps mit einer Berechtigung von Apple im Rahmen einer geschäftlichen Vereinbarung, und keinen allgemeinen Mechanismus für beliebige Apps. Ein plattformübergreifender Entwurf darf nicht voraussetzen, dass der offene Android-Weg sich übertragen lässt.