
Segurança de comunicação do HomeKit
O HomeKit oferece uma infraestrutura de automação doméstica que usa recursos de segurança do iCloud e de dispositivos para proteger e sincronizar dados privados sem expô-los à Apple.
A segurança e identidade do HomeKit são baseadas em pares de chaves públicas-privadas Ed25519. Um par de chaves Ed25519 é gerado no dispositivo do usuário, que se torna a identidade do HomeKit. O par de chaves é usado como parte do Protocolo de Acessório HomeKit (HAP) para autenticar a comunicação direta entre os dispositivos Apple do usuário e seus acessórios HomeKit.
Em casas onde há uma central, ela pode ser usada pelos membros da casa compartilhada para enviar comandos para acessórios. Esses comandos são enviados, criptografados de ponta a ponta e autenticados, do dispositivo do usuário para a central da casa usando o Serviço de Identidade da Apple (IDS), onde são encaminhados para o acessório relevante via Protocolo de Acessório HomeKit (HAP) ou Matter, um padrão de conectividade para casas inteligentes.
As chaves — armazenadas nas chaves e incluídas apenas em backups criptografados das chaves — são mantidas sincronizadas entre dispositivos através das Chaves do iCloud.
Comunicação entre acessórios HomeKit
Os acessórios HomeKit geram seus próprios pares de chaves Ed25519 para uso nas comunicações com dispositivos Apple. Se o acessório for restaurado aos ajustes de fábrica, um novo par de chaves é gerado.
Para estabelecer um relacionamento entre um dispositivo Apple e um acessório HomeKit, as chaves são trocadas usando o protocolo Secure Remote Password (3072 bits), com um código de oito dígitos fornecido pelo fabricante do acessório, digitado no dispositivo do usuário e criptografado usando ChaCha20-Poly1305 AEAD com chaves derivadas HKDF-SHA512. A certificação MFi do acessório também é verificada durante a configuração. Acessórios sem um chip MFi podem integrar a compatibilidade com a autenticação de software no iOS 11.3 ou posterior.
Quando o dispositivo e um acessório HomeKit se comunicam durante o uso, um autentica o outro pelas chaves trocadas no processo acima. Cada sessão é estabelecida usando o protocolo Station-to-Station e criptografada com chaves derivadas HKDF-SHA512, baseadas em chaves Curve25519 únicas por sessão. Isso se aplica tanto a acessórios com base em IP como a acessórios Bluetooth Low Energy (BLE).
Para dispositivos BLE compatíveis com notificações transmitidas, o acessório recebe uma chave de criptografia de transmissão de um dispositivo emparelhado por meio de uma sessão segura. Essa chave é usada para criptografar os dados sobre mudanças de estado do acessório, que são notificadas por meio de anúncios do BLE. A chave de criptografia de transmissão é uma chave derivada HKDF-SHA512, e os dados são criptografados usando o algoritmo AEAD ChaCha20-Poly1305. A chave de criptografia de transmissão é alterada periodicamente e atualizada em outros dispositivos através do iCloud, conforme descrito em Segurança de dados do HomeKit.
Comunicação com acessórios Matter
A identidade e a segurança com acessórios Matter são baseadas em certificado. Para casas com dispositivos Apple, a raiz de confiança da Autoridade de Certificação (AC) é gerada no dispositivo do usuário inicial (o “proprietário”) e a chave privada da AC é armazenada nas Chaves do iCloud. Cada dispositivo da Apple na casa gera um Pedido de Assinatura de Certificado (CSR) usando NIST P256. O CSR é ingerido pelo dispositivo do proprietário, que cria um certificado de identidade Matter para o dispositivo usando sua chave privada CA. Este certificado é posteriormente usado para autenticar a comunicação entre os dispositivos dos usuários e seus acessórios.
Os acessórios Matter geram seus próprios pares de chaves NIST P256 e CSR e recebem um certificado da CA durante o emparelhamento do acessório. Antes que as chaves sejam geradas, o acessório Matter e os dispositivos do proprietário da casa trocam chaves – usando o protocolo SPAKE2+ com um PIN fornecido pelo fabricante do acessório – e um processo de Atestado do Dispositivo é realizado. O CSR e o certificado são então trocados por esse canal criptografado usando AES-CCM com chaves derivadas HKDF-SHA256. Se o acessório for restaurado com os ajustes de fábrica, um novo par de chaves e CSR são gerados, e um novo certificado é emitido para o acessório durante o emparelhamento.
Quando um dispositivo Apple e o acessório Matter se comunicarem durante o uso, um autenticará o outro usando seus próprios certificados. Cada sessão é estabelecida usando um protocolo de três fases (sigma) e criptografada com chaves derivadas HKDF-SHA256, baseadas em chaves P256 únicas por sessão.
Para obter mais informações sobre como os dispositivos Apple interagem de maneira segura com os acessórios Matter, consulte Matter support in iOS 16 (em inglês) no site de Desenvolvedor da Apple.
HomeKit e Siri
A Siri pode ser usada para consultar e controlar acessórios e para ativar cenas. Informações mínimas sobre a configuração da casa são fornecidas anonimamente à Siri para fornecer o nome de quartos, acessórios e cenas necessários para o reconhecimento de comandos. O áudio enviado para a Siri pode indicar acessórios ou comandos específicos, mas tais dados da Siri não são associados a outros recursos da Apple, como o HomeKit.
Acessórios do HomeKit compatíveis com a Siri
Os usuários podem ativar novos recursos como a Siri e outros recursos do HomePod, como timers, alarmes, interfone e campainha, em acessórios compatíveis com a Siri no app Casa. Quando esses recursos estão ativados, o acessório trabalha em conjunto com um HomePod emparelhado na rede local que hospeda esses recursos da Apple. O áudio é trocado entre os dispositivos por meio de canais criptografados usando os protocolos HomeKit e AirPlay.
Quando o recurso “Ouvir E aí Siri” está ativado, para ouvir a frase “E aí Siri” o acessório utiliza um mecanismo executado localmente para detecção de frases de acionamento. Se esse mecanismo detectar a frase, ele envia os quadros de áudio diretamente a um HomePod emparelhado usando o HomeKit. O HomePod faz uma segunda verificação do áudio e pode cancelar a sessão de áudio caso não pareça que a frase contenha o trecho de acionamento.
Quando o recurso Pressionar para a Siri está ativado, o usuário pode pressionar um botão dedicado no acessório para iniciar uma conversa com a Siri. Os quadros de áudio são enviados diretamente ao HomePod emparelhado.
Depois que uma chamada bem-sucedida da Siri é detectada, o HomePod envia o áudio aos servidores da Siri e cumpre a solicitação do usuário com as mesmas proteções de segurança, privacidade e criptografia que o HomePod aplica às chamadas que o usuário faz ao próprio HomePod. Se a Siri tiver uma resposta de áudio, essa resposta é enviada ao acessório por meio de um canal de áudio AirPlay. Algumas solicitações à Siri exigem informações adicionais do usuário (por exemplo, perguntar se o usuário deseja ouvir mais opções). Nesse caso, o acessório recebe uma indicação de que deve ser feita uma pergunta ao usuário e o áudio adicional é transmitido ao HomePod.
O acessório é obrigado a ter um indicador visual para mostrar ao usuário quando está ouvindo ativamente (um indicador de LED, por exemplo). O acessório não tem qualquer conhecimento da intenção da solicitação à Siri, exceto pelo acesso às transmissões de áudio. Além disso, nenhum dado do usuário é armazenado no acessório.