
Sicherheit bei der HomeKit-Kommunikation
HomeKit bietet eine Infrastruktur zur Automatisierung hĂ€uslicher Umgebungen, die Sicherheitsfunktionen von iCloud und GerĂ€ten nutzt, um private Daten zu schĂŒtzen und zu synchronisieren, ohne dass Apple darauf zugreifen kann.
IdentitĂ€t und Sicherheit basieren bei HomeKit auf einem Ed25519-SchlĂŒsselpaar mit einem öffentlichen und einem privaten SchlĂŒssel. Auf dem GerĂ€t des HomeKit-Benutzers wird ein Ed25519-SchlĂŒsselpaar erzeugt, das die HomeKit-IdentitĂ€t des jeweiligen Benutzers darstellt. Das SchlĂŒsselpaar wird als Teil des HomeKit Accessory-Protokolls (HAP) fĂŒr die Authentifizierung der direkten Kommunikation zwischen Apple-GerĂ€ten des Benutzers und seinen HomeKit-ZubehörgerĂ€ten verwendet.
In einem Zuhause mit einer Steuerzentrale können die Mitglieder des geteilten Zuhauses Befehle ĂŒber diese Steuerzentrale an ZubehörgerĂ€te senden. Diese Befehle werden durchgehend verschlĂŒsselt und authentifiziert ĂŒber den Apple Identity Service (IDS) vom GerĂ€t des Benutzers an die Steuerzentrale gesendet. Von dort aus werden sie ĂŒber das HomeKit Accessory-Protokoll (HAP) oder Matter, einen KonnektivitĂ€tsstandard fĂŒr Smart Homes, an das entsprechende ZubehörgerĂ€t weitergeleitet.
Die SchlĂŒssel â sie werden im SchlĂŒsselbund gespeichert und nur in verschlĂŒsselte Backups des SchlĂŒsselbunds einbezogen â werden unter Verwendung des iCloud-SchlĂŒsselbunds auf allen GerĂ€ten auf dem aktuellen Stand gehalten.
Kommunikation zwischen HomeKit-ZubehörgerÀten
HomeKit-ZubehörgerĂ€te erstellen ihr eigenes Ed25519-SchlĂŒsselpaar fĂŒr die Kommunikation mit Apple-GerĂ€ten. Beim ZurĂŒcksetzen eines ZubehörgerĂ€ts auf die Werkseinstellungen wird ein neues SchlĂŒsselpaar generiert.
Um eine Verbindung zwischen einem Apple-GerĂ€t und einem HomeKit-ZubehörgerĂ€t herzustellen, werden die SchlĂŒssel ĂŒber das 3072-Bit-Protokoll âSecure Remote Passwordâ ausgetauscht, wofĂŒr ein vom Hersteller des ZubehörgerĂ€ts bereitgestellter achtstelliger Code verwendet wird, der auf dem GerĂ€t des Benutzers eingegeben und per ChaCha20-Poly1305 AEAD mit per HKDF-SHA-512 hergeleiteten SchlĂŒsseln verschlĂŒsselt wird. Die MFi-Zertifizierung des ZubehörgerĂ€ts wird bei der Konfiguration ebenfalls ĂŒberprĂŒft. GerĂ€te ohne einen MFi-Chip können die UnterstĂŒtzung fĂŒr die Softwareautorisierung unter iOS 11.3 (und neueren Versionen) integrieren.
Wenn das GerĂ€t und das HomeKit-ZubehörgerĂ€t bei laufendem Betrieb kommunizieren, authentifizieren sie sich gegenseitig ĂŒber die SchlĂŒssel, die im oben beschriebenen Verfahren ausgetauscht wurden. Jede Sitzung wird ĂŒber ein Station-to-Station-Protokoll hergestellt und mit von HKDF-SHA-512 abgeleiteten SchlĂŒsseln verschlĂŒsselt, die auf fĂŒr diese Sitzung erzeugten Curve25519-SchlĂŒsseln basieren. Dies gilt sowohl fĂŒr IP-basierte GerĂ€te als auch fĂŒr BLE-ZubehörgerĂ€te (Bluetooth Low Energy).
BLE-GerĂ€te, die Broadcast-Mitteilungen unterstĂŒtzen, werden mit einem Broadcast-VerschlĂŒsselungsschlĂŒssel ausgestattet und durch ein gekoppeltes GerĂ€t ĂŒber eine sichere Sitzung bereitgestellt. Dieser SchlĂŒssel wird verwendet, um die Daten ĂŒber StatusĂ€nderungen auf dem ZubehörgerĂ€t zu verschlĂŒsseln, die mittels BLE-AnkĂŒndigungen benachrichtigt werden. Der Broadcast-VerschlĂŒsselungsschlĂŒssel ist ein per HKDF-SHA-512 hergeleiteter SchlĂŒssel; die Daten werden mithilfe des ChaCha20-Poly1305 AEAD-Algorithmus verschlĂŒsselt. Der Broadcast-VerschlĂŒsselungsschlĂŒssel wird regelmĂ€Ăig vom iOS-, iPadOS- oder macOS-GerĂ€t geĂ€ndert und via iCloud auf anderen GerĂ€ten aktualisiert (siehe Beschreibung unter HomeKit-Datensicherheit).
Kommunikation mit Matter-ZubehörgerÀten
IdentitĂ€t und Sicherheit basieren bei Matter-ZubehörgerĂ€ten auf Zertifikaten. FĂŒr ein Apple-Zuhause wird die vertrauenswĂŒrdige Zertifizierungsstelle (Certificate Authority) auf dem GerĂ€t des ursprĂŒnglichen Benutzers (dem âEigentĂŒmerâ) erstellt. Der private SchlĂŒssel fĂŒr die Zertifizierungsstelle wird in seinem iCloud-SchlĂŒsselbund gesichert. Jedes Apple-GerĂ€t in diesem Zuhause erstellt eine Zertifikatsignaturanforderung (Certificate Signing Request, CSR) unter Verwendung von NIST P256. Diese CSR wird vom GerĂ€t des EigentĂŒmers eingelesen, wodurch ein Matter-IdentitĂ€tszertifikat fĂŒr das GerĂ€t unter Verwendung des privaten CA-SchlĂŒssels erstellt wird. Dieses Zertifikat wird anschlieĂend zur Authentifizierung der Kommunikation zwischen den BenutzergerĂ€ten und ZubehörgerĂ€ten verwendet.
Matter-ZubehörgerĂ€te erzeugen ihr eigenes NIST P256-SchlĂŒsselpaar sowie ihre eigene CSR und erhalten wĂ€hrend der Zubehörkopplung ein Zertifikat von der CA. Vor der Erstellung der SchlĂŒsselpaare tauschen das Matter-ZubehörgerĂ€t und die GerĂ€te des EigentĂŒmers SchlĂŒssel aus (unter Verwendung des SPAKE2+-Protokolls mit einer vom Hersteller des ZubehörgerĂ€ts bereitgestellten PIN) und es wird eine GerĂ€tebeglaubigung durchgefĂŒhrt. Die CSR und das Zertifikat werden dann ĂŒber diesen Kanal verschlĂŒsselt mit AES-CCM und von HKDF-SHA256 abgeleiteten SchlĂŒsseln ausgetauscht. Wenn das ZubehörgerĂ€t auf seine Werkseinstellungen zurĂŒckgesetzt wird, werden ein neues SchlĂŒsselpaar und eine neue CSR erstellt und es wird bei der Kopplung ein neues Zertifikat fĂŒr das ZubehörgerĂ€t ausgestellt.
Wenn ein Apple-GerĂ€t und das Matter-ZubehörgerĂ€t wĂ€hrend der Verwendung kommunizieren, authentifizieren sich diese GerĂ€te gegenseitig mit ihren eigenen Zertifikaten. Jede Sitzung wird ĂŒber ein Drei-Phasen-Protokoll (Sigma) hergestellt und mit von HKDF-SHA-512 abgeleiteten SchlĂŒsseln verschlĂŒsselt, die auf fĂŒr diese Sitzung erzeugten P256-SchlĂŒsseln basieren.
Weitere Informationen ĂŒber die sichere Interaktion von Apple-GerĂ€ten mit Matter-ZubehörgerĂ€ten findest du unter Matter support in iOS 16 auf der Apple Developer-Website.
HomeKit und Siri
Siri kann verwendet werden, um ZubehörgerĂ€te abzufragen und zu steuern und Szenen zu aktivieren. Minimale Informationen zur Konfiguration des Zuhauses werden anonym an Siri gesendet, um Namen von Zimmern, ZubehörgerĂ€ten oder Szenen bereitzustellen, die fĂŒr die Erkennung von Befehlen erforderlich sind. Audiodaten, die an Siri gesendet werden, können bestimmte ZubehörgerĂ€ten oder Befehle bezeichnen. Die Siri-Daten werden aber nicht mit anderen Apple-Funktionen (z. B. HomeKit) assoziiert.
Siri-fÀhige HomeKit-ZubehörgerÀte
Mit der App âHomeâ können Benutzer:innen auf Siri-fĂ€higen ZubehörgerĂ€ten neue Funktionen wie Siri und andere HomePod-Funktionen wie Timer, Wecker, Intercom und TĂŒrklingel aktivieren. Wenn diese Funktionen aktiviert sind, kommuniziert das ZubehörgerĂ€t mit dem gekoppelten HomePod, der diese Apple-Funktionen bereitstellt, im lokalen Netzwerk. Audiodaten werden zwischen den GerĂ€ten ĂŒber verschlĂŒsselte KanĂ€le ausgetauscht, die sowohl HomeKit- als auch AirPlay-Protokolle nutzen.
Bei aktivierter Funktion âAuf âHey Siriâ achtenâ wird mit einer lokal auf dem ZubehörgerĂ€t ausgefĂŒhrten Trigger-Engine ĂŒberprĂŒft, ob der Befehl gesprochen wird. Erkennt die Engine den Befehl, sendet sie das Audiomaterial mit HomeKit direkt an den gekoppelten HomePod. Der HomePod fĂŒhrt eine zweite ĂberprĂŒfung des Audiomaterials durch und bricht die Sitzung gegebenenfalls ab, wenn der Trigger-Befehl nicht enthalten ist.
Wenn die Funktion zum Aktivieren von Siri durch BerĂŒhrung eingeschaltet ist, können Benutzer:innen eine spezielle Taste auf dem ZubehörgerĂ€t drĂŒcken, um eine Konversation mit Siri zu starten. Das Audiomaterial wird direkt an den gekoppelten HomePod gesendet.
Nachdem eine erfolgreiche Aktivierung von Siri erkannt wurde, sendet der HomePod das Audiomaterial an die Siri-Server und fĂŒhrt mit denselben Sicherheits-, Datenschutz- und VerschlĂŒsselungsmaĂnahmen, die der HomePod beim Verarbeiten von direkt an den HomePod gestellten Anfragen anwendet, den von Benutzer:innen initiierten Vorgang aus. Wenn Siri eine Antwort in Audioform hat, wird diese ĂŒber einen AirPlay-Audiokanal an das ZubehörgerĂ€t gesendet. FĂŒr einige Siri-Anfragen sind zusĂ€tzliche Informationen von Benutzer:innen erforderlich (beispielsweise bei der Nachfrage, ob die Benutzer:innen weitere Optionen hören möchten). In diesem Fall empfĂ€ngt das ZubehörgerĂ€t den Hinweis, dass Benutzer:innen zu einer Eingabe aufgefordert werden sollten. Das zusĂ€tzliche Audiomaterial wird an den HomePod gestreamt.
Das ZubehörgerĂ€t muss einen visuellen Indikator besitzen, um dem Nutzer anzuzeigen, wann es aktiv auf Befehle achtet (beispielsweise eine LED). Das ZubehörgerĂ€t erhĂ€lt keine Informationen ĂŒber die Siri-Anfrage, sondern nur fĂŒr den Zugriff auf den Audiostream. Es werden keine Benutzerdaten auf dem GerĂ€t gespeichert.