Sécurité des données HomeKit
Les données HomeKit peuvent être synchronisées entre les appareils iOS, iPadOS et macOS d’un utilisateur à l’aide d’iCloud et du trousseau iCloud. Au cours de ce processus, les données HomeKit sont chiffrées au moyen de clés dérivées de l’identité HomeKit de l’utilisateur et d’un nonce aléatoire. Elles sont traitées sous forme de grand objet binaire, ou BLOB, opaque. Le BLOB le plus récent est stocké dans iCloud, mais il n’est pas utilisé à d’autres fins. Comme il est chiffré à l’aide de clés disponibles uniquement sur les appareils iOS, iPadOS et macOS de l’utilisateur, son contenu est inaccessible pendant la transmission et le stockage sur iCloud.
Les données HomeKit sont également synchronisées entre plusieurs utilisateurs du même domicile. Ce processus fait appel à une authentification et à un chiffrement identiques à ceux utilisés entre un appareil iOS, iPadOS ou macOS et un accessoire HomeKit. L’authentification est basée sur des clés publiques Ed25519 échangées entre les appareils lorsqu’un utilisateur est ajouté à un domicile. Après l’ajout d’un utilisateur à un domicile, toutes les communications ultérieures sont authentifiées et chiffrées à l’aide du protocole STS (Station‑to‑Station) et des clés de session.
L’utilisateur ayant initialement créé le domicile dans HomeKit ou tout autre utilisateur autorisé à apporter des modifications peuvent ajouter des utilisateurs. Les accessoires sont configurés sur l’appareil du propriétaire avec la clé publique du nouvel utilisateur, de sorte qu’ils pourront authentifier et accepter les commandes de cet utilisateur. Lorsqu’un utilisateur autorisé à apporter des modifications ajoute un nouvel utilisateur, le processus est délégué à un concentrateur pour conclure l’opération.
HomeKit et l’Apple TV
La configuration de l’Apple TV avec HomeKit est automatique lorsque l’utilisateur se connecte à iCloud. L’identification à deux facteurs doit être activée sur le compte iCloud. L’Apple TV et l’appareil du propriétaire échangent temporairement les clés publiques Ed25519 via iCloud. Si l’appareil du propriétaire et l’Apple TV sont connectés au même réseau local, les clés temporaires sont utilisées pour sécuriser une connexion sur le réseau local à l’aide du protocole STS et des clés de session. Ce processus fait appel à une authentification et à un chiffrement identiques à ceux utilisés entre un appareil iOS, iPadOS ou macOS et un accessoire HomeKit. L’appareil du propriétaire transfère les paires de clés publique et privée Ed25519 vers l’Apple TV via cette connexion locale sécurisée. Ces clés sont ensuite utilisées pour sécuriser la communication entre l’Apple TV et les accessoires HomeKit, ainsi qu’entre l’Apple TV et les autres appareils iOS, iPadOS et macOS du domicile HomeKit.
Si l’utilisateur n’a qu’un seul appareil et qu’il n’accorde pas l’accès à son domicile à d’autres utilisateurs, aucune donnée HomeKit n’est transmise à iCloud.
Données du domicile et apps
L’accès des apps aux données du domicile est contrôlé par les réglages de confidentialité de l’utilisateur. Lorsque des apps demandent à accéder aux données du domicile, l’utilisateur est invité à indiquer son choix, comme pour Contacts, Photos et d’autres sources de données iOS, iPadOS et macOS. S’il donne son accord, les apps peuvent connaître les noms des pièces et des accessoires, savoir dans quelle pièce se trouve chaque accessoire et accéder à d’autres informations, comme l’indique en détail la documentation du développeur HomeKit à l’adresse https://developer.apple.com/homekit/.
Stockage local des données
HomeKit stocke les données concernant les domiciles, les accessoires, les scènes et les utilisateurs sur les appareils iOS, iPadOS ou macOS d’un utilisateur. Ces données stockées sont chiffrées à l’aide de clés obtenues à partir des clés de l’identité HomeKit de l’utilisateur et d’un nonce aléatoire. En outre, les données HomeKit sont stockées avec la classe de protection des données « Protection complète jusqu’à la première authentification de l’utilisateur ». Les données HomeKit sont sauvegardées uniquement dans les sauvegardes chiffrées. Par exemple, les sauvegardes non chiffrées effectuées avec le Finder (sous macOS 10.15 ou version ultérieure) ou iTunes (sous macOS 10.14 ou version antérieure) au moyen d’une connexion USB ne contiennent donc pas de données HomeKit.