Mobil Teknik Mimari
Bu sayfa, Crisis Connect Android uygulamasının güveni nasıl kurduğunu, mesajları internet olmadan nasıl taşıdığını, responder'ları güvenli yollara nasıl yükselttiğini ve bulutu acil mesaj içeriğinin dışında nasıl tuttuğunu açıklar.
Sistem Özeti
Çalışma Modeli
Tasarım İlkeleri
Buluttan Önce Yerel
Acil yükler cihazdan cihaza radyo yollarında kalır. Bulut servisleri varsa güven ve telemetri içindir; mesaj rölesi değildir.
Mesh'ten Önce Doğrudan Yol
Varsayılan davranış point-to-point Bluetooth'tur. Daha geniş erişimli modlar yalnızca açık rol, yetenek ve operatör kontrolleri altında eklenir.
Sınırlandırılmış Runtime
Tasarım; kısıtlı güç ve dengesiz saha koşullarını varsayar, bu yüzden kuyruk sınırları, retry bound'ları, foreground service'ler ve tek çağrı ses kapsamı bilinçli tercihlerdir.
Güven Açıkça Kurulur
Kişiler ancak QR bootstrap artı kriptografik canlılık sonrasında operasyonel olur; responder güvenli akışları ise sertifika temelli doğrulama ister.
Ana Radyo Yığını
Kontrollü Genişlemeler
Yetkili Responder Mesh
Opt-in Public GATT Kanalı
Açık Aktivasyon Kapıları
Sınırlı Kötüye Kullanım Kontrolleri
Güven Bootstrap'i
Kimlik ve Güven Modeli
Bilinen Kişi Güvenli Yolu
Responder Doğrulaması
Mesh Uygunluğu
Anahtar ve Sertifika Yaşam Döngüsü
Mesaj Yaşam Döngüsü
Ses Yolu
Ses Profili
Çağrı Sırası
Uyarlamalı Politika
Uygulama write time yükseldiğinde, underrun tekrar ettiğinde veya jitter derinliği bozulduğunda WB'den NB'ye iner; yalnızca sürdürülebilir toparlanma sonrası tekrar yükselir. Bu evrensel QoS garantisi değil, sınırlı bir süreklilik politikasıdır.
Rescue Mode
SOS Beaconing
- Kullanıcının tetiklediği SOS, cihazı yerel distress durumuna geçirir ve Rescue service `0xCC00` için connectable BLE advertisement yayınlar.
- Baseline'da advertisement içeriği minimaldir: radyo sinyali tam kimlik değil, servis seviyesinde discoverability taşır.
- SOS yayını, geniş alan ağlarının kapalı olduğu sektör taramalarında yakındaki responder keşfini artırmak için tasarlanmıştır.
- Gizlilik maliyeti açıktır: SOS modunda discoverability yükselir; bu yüzden rıza, net UI durumu ve rate control önemlidir.
Responder Doğrulaması
- Bağlantıdan sonra responder ve mağdur `0xCC10` ve `0xCC11` üzerinde auth challenge ve response değişir, ardından geçici bir ECDH session key türetir.
- Şifreli role proof `0xCC20` üzerinden gelir ve certificate reference, role scope, issuance time ve expiry içermelidir.
- Herhangi bir secure promotion öncesinde imza, trust anchor, transcript binding, expiry ve role authorization kontrol edilir.
- Süresi dolmuş, bozuk ya da yanlış scope'lu proof'lar rescue chat'e düşürülmez; doğrudan kapıda reddedilir.
Güvenli Rescue Sohbeti
- Mağdur ancak doğrulama başarılı olduktan sonra `0xCC21` üzerinde `OK` döner ve güvenli yolu açar.
- Şifreli iki yönlü rescue sohbet ardından `0xCC30` ve `0xCC31` üzerinden `DELIVERED` ve `READ` ACK semantiğiyle ilerler.
- Mevcut baseline; sınırlı role-proof paket boyutu, MTU farkındalıklı chunking ve büyük ama sonlu secure-chat paket zarfı uygular.
- Doğrulanmamış istemciler secure write kanalına hiç ulaşamaz; promotion gate tavsiye değil sert sınırdır.
Arka Plan Servisleri
RfcommForegroundService
Yakındaki doğrudan oturumlar için classic transport listener, call signaling ve media ya da file transfer yaşam döngülerini sürdürür.
GattSOSServerService
Rescue Mode SOS broadcaster'ını ve mağdurların BLE rescue akışlarında kullandığı güvenli responder etkileşim uç noktasını barındırır.
GattRescueClientService + MeshAwareService
Responder tarafı BLE rescue oturumlarını ve yetki varsa bounded reconnect davranışıyla Wi-Fi Aware mesh discovery ile authentication akışını yönetir.
CrisisLink, Offline Araçlar ve iOS Notu
CrisisLinkForegroundService doğrulanmış internet dönüşünde kuyruktaki telemetriyi flush eder, OfflineDownloadService offline map bölgelerini yönetir ve ayrı iOS istemcisi gerçek olsa da hâlâ kendi readiness gate'leri arkasındadır.