Incazelo yezokuphepha

Ubungozi bezokuphepha bekhamera yengane ye-Meari: lokho uTimmy akwenzayo ngokwehlukile

Indaba ye-Meari ibonisa ukuthi ukungena ngemvume okubukeka kukuhle akwanele. Ukuphepha kokuqapha ingane kuncike ekwakhekeni kohlelo, ekugunyazweni nasekulawulweni kokhiye.

I-Galaxus ibike ukuqoshwa okuvela kumakhamera ezingane obekufinyeleleka ngokukhululekile; i-The Verge yabika ukuthi kuthinteke amadivayisi e-Meari angaba yizigidi eziyi-1.1. Kimina, isifundo sisobala: ukungena ngemvume akulivikeli igumbi lengane uma ipulatifomu engemuva kwakho yehluleka ukuhlukanisa kahle imilayezo, izithombe noma okhiye bedivayisi ngayinye. UTimmy akaxazululi zonke izinkinga zokuphepha emhlabeni. Kodwa izimfihlo zikaTimmy ezibalulekile zemidiya nezokubhangqa azigcinwa ngaphakathi kwepulatifomu yamakhamera asebenza ngefu.

Okubonakala sengathi kwehlulekile endabeni ye-Meari

Imibiko eshicilelwe ichaza ipulatifomu ye-white-label. Imikhiqizo eminingi ebithengiswa ngaphansi kwamagama ahlukahlukene yayidayisa amakhamera ancike engqalasizindeni efanayo ye-Meari/CloudEdge. Yingakho lesi sigameko sibalulekile: uma ipulatifomu esetshenziswa ngokuhlanganyela ibeka ngokungeyikho umngcele wokugunyazwa, umphumela awugcini ekhamereni eyodwa ebuthakathaka; kungadaluleka lonke iqoqo lamadivayisi.

Indlela ebikiwe idlula inkinga yamaphasiwedi azenzakalelayo abuthakathaka. Imithombo ichaza imilayezo ye-MQTT engenazo izilawuli ezanele zokubhalisela idivayisi ngayinye, ama-URL ezithombe afinyeleleka esidlangalaleni, ukufiphazwa kwezithombe okubuthakathaka, nokhiye abangaguquki noma abangakhishwa kuhlelo lokusebenza. Lokhu ukwehluleka kwepulatifomu: ingqalasizinda ibingadalula idatha obekungafanele neze itholakale kwenye i-akhawunti.

Ingozi yekhamera yamafuIndlela uTimmy aklanywe ngayo njengempendulo
I-backend igcina noma isabalalisa izehlakalo zezithombe.UTimmy akanayo ingobo yomlando yamafu yezithombe zasegumbini lengane; imidiya ibukhoma nge-WebRTC.
I-broker noma i-bucket kudingeka inike idivayisi ngayinye igunya elifanele ngaphandle kwephutha.I-Firestore idlulisa kuphela idatha yokubhangqa neyokushintshisana ngolwazi lokusungula uxhumano; i-SDP/ICE ibethelwa ngaphambi kokuba ibhalwe.
Okhiye abangaguquki bangathinta lonke iqoqo lamadivayisi.Ukubhangqa ngakunye kudala ukhiye wako osuselwa ku-P-256 ECDH kumadivayisi.
Indlela ye-relay ingathathwa ngephutha njengokufinyelela kumidiya.I-TURN idlulisa amaphakethe e-SRTP abethelwe kodwa ayitholi okhiye bemidiya.

Indlela uTimmy akha ngayo imfihlo

Ikhodi kaTimmy enezinhlamvu ezine ayihloselwe ukuba yimfihlo. Ekhodini, iyindawo nje amadivayisi atholana kuyo: uhlelo lokusebenza lukhiqiza meetingKey kuyo ukuze womabili amadivayisi athole ukushintshisana okufanayo ngokhiye basesidlangalaleni ku-Firestore. Okhiye abayimfihlo be-ECDH abaphumi kumadivayisi.

Womabili amadivayisi abe esebala imfihlo efanayo eyabiwe ye-P-256 ECDH. Ukhiye wokubhangqa ukhiqizwa ngaphakathi kumadivayisi. I-SAS enamadijithi amabili ikhiqizwa ngemfihlo eyabiwe kanye nokhiye basesidlangalaleni bawo womabili amadivayisi abekwe ngokulandelana. Uma othile ephazamisa lokho kushintshisana ngokhiye, amadivayisi abonisa izinombolo ezingafani, okuxwayisa abasebenzisi ukuthi bangakuqinisekisi ukubhangqa.

sequenceDiagram
    participant Baby as Baby device
    participant Firestore as Firestore meeting point
    participant Parent as Parent device
    participant Turn as TURN relay

    Baby->>Baby: Generate P-256 ECDH keypair
    Parent->>Parent: Generate P-256 ECDH keypair
    Baby->>Firestore: Write public key only under meetingKey
    Parent->>Firestore: Write public key only under meetingKey
    Firestore-->>Baby: Parent public key
    Firestore-->>Parent: Baby public key
    Baby->>Baby: Compute sharedSecret + SAS
    Parent->>Parent: Compute sharedSecret + SAS
    Baby-->>Parent: Humans compare SAS on both screens
    Baby->>Firestore: Write SDP/ICE encrypted with AES-256-GCM
    Parent->>Firestore: Write SDP/ICE encrypted with AES-256-GCM
    Baby-)Turn: WebRTC media as DTLS/SRTP packets
    Turn-)Parent: Relay forwards encrypted packets
    Note over Turn: TURN sees network metadata, not media keys
        

Uchungechunge lokuphepha lukaTimmy olwenziwe lula: i-Firestore iyindawo amadivayisi atholana kuyo futhi idlulisa ulwazi lokusungula uxhumano; i-TURN iyi-relay kuphela; imidiya ihlala ibethelwe nge-WebRTC.

Kungani imidiya ye-WebRTC ingenakubukwa ngasese

I-WebRTC ayigcini nje “ngokuthumela ividiyo.” Ngaphambi kokuba imidiya idlule, amadivayisi enza i-DTLS handshake. Okhiye be-SRTP bomsindo nevidiyo bakhiqizwa ngalolo xhumano oluphephile. Amaphakethe emidiya abe esebethelwa njenge-SRTP. Iseva ye-TURN ingawadlulisa lawo maphakethe, kodwa ayibatholi okhiye abadingekayo ukuze kuvulwe umsindo noma ividiyo.

UTimmy wengeza esinye isendlalelo ngaphambi kwalokho: ulwazi lokusungula uxhumano, njengokunikezwa kwe-SDP, izimpendulo ze-SDP namakhandidethi e-ICE, lubethelwa nge-AES-256-GCM ngaphambi kokufika ku-Firestore. I-Firestore isiza amadivayisi avumelane ngendlela yokuxhumana; akuyona indawo okuhloswe ukuba kugcinwe kuyo ividiyo, umsindo noma ulwazi olungabethelwe lokusungula uxhumano.

Izimangalo uTimmy angazenzi

Asikho isiqaphi sengane esithembekile okufanele sithi asinakugqekezwa. Uma ifoni ithathelwe amandla umhlaseli, noma yiluphi uhlelo lokusebenza lungahlaselwa. Inguqulo yohlelo lokusebenza eyakhiwe ngenhloso embi ishintsha uhlobo lwengozi. Ukulungiselelwa kweseva kufanele kuhlale kunembile. Isimangalo sikaTimmy esilinganiselwe siphathelene nokwakheka kohlelo: ugwema ukugcina engemuva izinsalela zemidiya yasegumbini lengane ezingafundwa yiseva, futhi wenza indlela yokubhangqa ebalulekile kwezokuphepha ikwazi ukuhlolwa yinoma ubani kuphrojekthi ewumgogodla eshicilelwe emphakathini.

Imibuzo okufanele uyibuze nganoma iyiphi ikhamera yengane

  • Ingabe umthengisi ugcina izithombe noma amavidiyo amafushane?
  • Ingabe ama-URL emidiya ayimfihlo, aphila isikhathi esifushane, futhi agunyazwe kudivayisi ngayinye?
  • Ingabe okhiye bakhiqizwa kudivayisi ngayinye noma ekubhangqeni ngakunye kunokuba babe ngabaguquki ngaphakathi kohlelo lokusebenza?
  • Ingabe i-broker ingaletha imilayezo yedivayisi ongumnikazi wayo ngempela kuphela?
  • Ingabe ukubhangqa kuvumela umuntu ukuthi abone umzamo wokuhlasela we-man-in-the-middle?

Funda ikhodi

Imithombo