Privastead - Açık kaynaklı kişisel ev güvenlik kamerası sistemi (uçtan uca şifreleme destekli)
(github.com/privastead)Privastead, gizliliği garanti eden ve uçtan uca şifreleme kullanan bir ev güvenlik kamerası çözümüdür. Başlıca avantajları şunlardır:
- OpenMLS uygulaması üzerinden Messaging Layer Security (MLS) protokolüne dayalı uçtan uca şifreleme.
- Mevcut IP kameralarla çalışan, yalnızca yazılım tabanlı bir çözüm; IP kameralara yönelik asgari güven varsayımı.
- Rust ile geliştirilmiş kamera hub'ı, mobil uygulamanın MLS kodu ve güvenilmeyen sunucu.
Bileşenler
Privastead kamera çözümü üç bileşenden oluşur:
- Yerel makinede çalışan ve IP kamerayla doğrudan etkileşime giren kamera hub'ı.
- Olay bildirimlerini alan ve kameranın canlı yayınını uzaktan izlemeyi mümkün kılan mobil uygulama.
- Hub ile uygulama arasındaki şifreli mesajları aktaran güvenilmeyen sunucu. Ayrıca bildirimler için Google Firebase Cloud Messaging (FCM) kullanılır ve FCM'ye de güvenilmez.
Tehdit modeli ve güvenceler
Privastead kamera çözümünün başlıca avantajı, uçtan uca şifreleme yoluyla güçlü gizlilik güvenceleri sunmasıdır. Özellikle şu varsayımlar yapılır:
- Hub'ın çalıştığı yerel makinenin ve mobil uygulamanın çalıştığı akıllı telefonun güvenli olduğu ve ele geçirilmediği varsayılır.
- Sunucunun tamamen güvenilmez olduğu ve saldırganın kontrolü altında bulunduğu varsayılır.
- IP kameralar için asgari bir güven varsayımı yapılır. Yani kameranın kendi başına internete bağlanabilen özel bir ağ arabirim kartına sahip olmadığı varsayılır (örneğin hücresel bağlantı); bu nedenle kullanıcının bunu açıkça kontrol edip doğrulaması önerilir. Bunun dışında IP kameraya güvenilmez ve Privastead kamerayı internete doğrudan bağlamak yerine doğrudan hub'a bağlar.
Şu güvenceleri sunar:
- Şifrelenmemiş videoya yalnızca hub ve mobil uygulama erişebilir.
- Sunucu videonun şifresini çözemez.
- MLS üzerinden ileri gizlilik ve sonradan ele geçirmeye karşı güvenlik sağlar.
- Şu anda olayların ve canlı yayınların zamanlamasını saldırgandan (sunucuyu ve/veya FCM kanalını kontrol eden kişi) gizlemez.
Desteklenen kameralar
Privastead Camera teorik olarak tüm IP kameraları (veya açık arayüze sahip diğer kameraları) destekleyebilir. Mevcut prototip, kameranın RTSP ve ONVIF desteğine dayanır. RTSP kameradan video akışı için, ONVIF ise olay sorguları için kullanılır. Şu ana kadar aşağıdaki kamera test edilmiştir:
- Amcrest, model: IP4M-1041W
Desteklenen mobil işletim sistemi
- Android
Test edilen akıllı telefonlar (OS sürümü)
- Google Pixel 8 Pro (Android 14)
Hub için test edilen çalışma ortamı
- Ubuntu (
ffmpeggerekli)
(Şu anki) başlıca sınırlamalar
- Uygulama yalnızca tek bir kamerayla eşleştirilebilir.
- Kamera hub'ı yalnızca tek bir kamerayı destekler.
- Kamera hub'ı yalnızca tek bir uygulama örneğiyle eşleştirilebilir.
- Yüksek kamera çözünürlüğü ve kare hızlarında performans darboğazı oluşabilir.
Proje üyeleri
- Proje kurucusu: Ardalan Amiri Sani (UC Irvine bilgisayar bilimi profesörü, bilgisayar güvenliği ve gizlilik uzmanı)
1 yorum
Hacker News yorumları
Yeni bir projeye başlamadan önce kapsamlı araştırma yapılması gerektiğini vurgulayan bir yorum var
moonfire-nvrvesentryshot, Rust ile yazılmış diğer seçeneklerFrigate ve Home Assistant kullanarak güvenlik kamerası kurma deneyimi paylaşılıyor
Bu projeye olumlu yaklaşan ve güvenlik kamerası kurma fikrini yeniden düşünmesine neden olduğunu söyleyen bir yorum var
Scrypted adlı açık kaynaklı bir çözümden bahsediliyor; HomeKit entegrasyonu üzerinden E2EE sağlıyor
Kamera ve hareket sensörleri için açık kaynaklı donanım ve firmware tasarımları sunan Tokay Lite PCB tanıtılıyor
Mesaj iletimi için Google Firebase kullanmak yerine e-posta üzerinden SMS'in daha iyi olabileceği öneriliyor
Güvenilir insan tespiti ve API veya MQTT ile entegrasyonun önemli olduğu vurgulanıyor
Motion ile başarılı bir deneyim paylaşılıyor ve merkezi bir işlemcinin gerekli olduğundan bahsediliyor
Secure Boot özelliğine sahip kameralar hakkında bilgi veriliyor
Projenin güvenlik düzeninin Home Assistant ile karşılaştırıldığında neden daha iyi olduğunun açıklanması isteniyor