Seguridad de las cámaras de HomeKit
Las cámaras que tienen una dirección de protocolo de internet (IP) en HomeKit envían secuencias de audio y de vídeo directamente al dispositivo iOS, iPadOS, tvOS y macOS por la red local que accede a la secuencia. Las secuencias se encriptan con claves generadas de forma aleatoria en el dispositivo y en una cámara de protocolo de internet (o cámara IP), las cuales se intercambian en la sesión segura que establece HomeKit con la cámara. Cuando un dispositivo no se encuentra en la red local, recibe las secuencias encriptadas a través de la central de accesorios de la casa. Dicha central de accesorios no desencripta las secuencias; solo sirve para transmitirlas entre el dispositivo y la cámara IP. Cuando una app muestra la visualización del vídeo de la cámara IP de HomeKit al usuario, HomeKit renderiza los fotogramas de vídeo de forma segura desde un proceso del sistema independiente. En consecuencia, la app no puede acceder a la secuencia de vídeo ni almacenarla. Además, las apps no pueden realizar capturas de pantalla de esta secuencia.
Vídeo seguro de HomeKit
HomeKit proporciona un mecanismo de punto a punto privado y seguro para grabar, analizar y revisar clips de vídeo grabados por las cámaras IP de HomeKit sin exponer dichas grabaciones a Apple ni a terceros. Cuando una cámara IP detecta movimiento, se envían los clips de vídeo grabados directamente a un dispositivo Apple que actúa como central de accesorios de la casa a través de una conexión de red local creada con ese fin entre la central de accesorios y la cámara IP. La conexión de red local se encripta con un par de claves derivadas de HKDF‑SHA512 que se negocia a través de la sesión de HomeKit entre la central de accesorios de la casa y la cámara IP. HomeKit desencripta las transmisiones de audio y vídeo en la central de accesorios y analiza localmente los fotogramas de vídeo en busca de cualquier suceso significativo. Si se detecta algo significativo, HomeKit encripta el clip de vídeo con cifrado AES-256-GCM y una clave AES256 generada aleatoriamente. Asimismo, HomeKit genera fotogramas póster de cada clip, que a su vez se encriptan con la misma clave AES256. Una vez encriptados, los fotogramas póster y los datos de audio y vídeo se suben a los servidores de iCloud. Los metadatos relacionados con cada clip, que incluyen la clave de encriptación, se suben a CloudKit mediante el método de encriptación de punto a punto de iCloud.
Para la clasificación de caras, HomeKit almacena todos los datos que se usan para clasificar la cara de una determinada persona en CloudKit mediante la encriptación de punto a punto de iCloud. Los datos almacenados incluyen información sobre cada persona, como el nombre, así como imágenes de su cara. Estas imágenes faciales se pueden obtener de la app Fotos de un usuario si ha dado permiso para ello, o se pueden recopilar a partir del vídeo capturado por la cámara IP que se ha analizado previamente. Una sesión de análisis del vídeo de seguridad de HomeKit utiliza estos datos de clasificación para identificar caras en la secuencia de vídeo que recibe directamente de la cámara IP e incluye esa información de identificación en los metadatos del clip mencionados anteriormente.
Cuando se usa la app Casa para ver los clips grabados por las cámaras, se descargan los datos de iCloud y las claves necesarias para desencriptar las transmisiones se desencapsulan localmente mediante la encriptación de punto a punto de iCloud. El contenido de vídeo encriptado se transmite desde los servidores y se desencripta localmente en el dispositivo iOS antes de mostrarlo en el visor. Cada sesión de vídeo grabada puede descomponerse en subsecciones de modo que cada una de ellas encripte su contenido con su propia clave única.