Privastead - sistema de câmera de segurança residencial pessoal de código aberto (com suporte a criptografia de ponta a ponta)
(github.com/privastead)Privastead é uma solução de câmera de segurança residencial com garantia de privacidade, que usa criptografia de ponta a ponta. Os principais benefícios são os seguintes:
- Criptografia de ponta a ponta baseada no protocolo Messaging Layer Security (MLS), por meio de uma implementação do OpenMLS.
- Solução somente em software que funciona com câmeras IP existentes, com pressupostos mínimos de confiança em relação às câmeras IP.
- Hub de câmera, código MLS do app móvel e servidor não confiável implementados em Rust.
Componentes
A solução de câmera Privastead é composta por três componentes:
- Um hub de câmera que roda em uma máquina local e interage diretamente com a câmera IP.
- Um app móvel que recebe notificações de eventos e permite transmissão ao vivo remota da câmera.
- Um servidor não confiável que retransmite mensagens criptografadas entre o hub e o app. Além disso, usa o Google Firebase Cloud Messaging (FCM) para notificações, e o FCM também não é confiável.
Modelo de ameaça e garantias
A principal vantagem da solução de câmera Privastead é oferecer fortes garantias de privacidade por meio de criptografia de ponta a ponta. Especificamente, ela faz os seguintes pressupostos:
- Assume-se que a máquina local que executa o hub e o smartphone que executa o app móvel são seguros e não foram comprometidos.
- Assume-se que o servidor é totalmente não confiável e está sob controle do adversário.
- Há pressupostos mínimos de confiança em relação à câmera IP. Ou seja, assume-se que a câmera não possui uma placa de interface de rede privada capaz de se conectar à internet por conta própria (por exemplo, celular), portanto é recomendável que o usuário verifique e valide isso explicitamente. Fora isso, a câmera IP não precisa ser confiável, e o Privastead conecta a câmera diretamente ao hub, sem conectá-la diretamente à internet.
Ela oferece as seguintes garantias:
- Somente o hub e o app móvel podem acessar vídeo descriptografado.
- O servidor não pode descriptografar o vídeo.
- Fornece sigilo futuro e segurança pós-comprometimento por meio de MLS.
- Atualmente, não oculta do adversário (quem controla o servidor e/ou o canal FCM) o timing dos eventos e da transmissão ao vivo.
Câmeras compatíveis
Em teoria, a câmera Privastead pode oferecer suporte a qualquer câmera IP (ou outra câmera com interface aberta). Atualmente, o protótipo depende do suporte da câmera a RTSP e ONVIF. O RTSP é usado para streaming de vídeo da câmera, e o ONVIF é usado para consulta de eventos. Até agora, a seguinte câmera foi testada:
- Amcrest, modelo: IP4M-1041W
Sistemas operacionais móveis compatíveis
- Android
Smartphones testados (versão do SO)
- Google Pixel 8 Pro (Android 14)
Ambiente de execução do hub testado
- Ubuntu (requer
ffmpeg)
Principais limitações (atuais)
- O app só pode ser pareado com uma câmera.
- O hub da câmera suporta apenas uma câmera.
- O hub da câmera só pode ser pareado com uma única instância do app.
- Em resoluções e taxas de quadros altas da câmera, o desempenho pode se tornar um gargalo.
Membros do projeto
- Fundador do projeto: Ardalan Amiri Sani (professor de Ciência da Computação na UC Irvine, especialista em segurança e privacidade computacional)
1 comentários
Comentários do Hacker News
Há uma opinião enfatizando que é necessário fazer uma pesquisa aprofundada antes de iniciar um novo projeto
Compartilha a experiência de configurar câmeras de segurança usando Frigate e Home Assistant
Mostra uma reação positiva ao projeto, dizendo que ele fez a pessoa repensar a instalação de câmeras de segurança
Menciona uma solução de código aberto chamada Scrypted, que oferece E2EE por meio da integração com o HomeKit
Apresenta a Tokay Lite PCB, que fornece design de hardware e firmware de código aberto para câmeras e sensores de movimento
Sugere que SMS por e-mail pode ser melhor do que o envio de mensagens usando Google Firebase
Enfatiza que uma detecção de pessoas confiável e integração com API ou MQTT são importantes
Compartilha uma experiência bem-sucedida com o Motion e menciona que é necessário um processador central
Fornece informações sobre câmeras com o recurso Secure Boot
Há um pedido para explicar em que o layout de segurança do projeto é melhor em comparação com o Home Assistant