Tiesioginis perdavimas tarp įrenginių, be įkėlimo ir be saugojimo.
Abi pusės atidaro puslapį ir prisijungia naudodamos sesijos kodą. Failai keliauja AES-256 šifruoti tiesiai tarp naršyklių, abiem kryptimis, be paskyros ir be dydžio ribos.
Programa sugeneruoja šešiaženklį sesijos kodą ir kvietimo nuorodą. Į serverį neįkeliamas joks failas.
Techninė detalėAtsitiktinis kodas, galiojantis 10 minučių, vienkartinis. Nuorodoje URL fragmente yra paslaptis, kuri niekada nesiunčiama serveriui.
Įrenginių susiejimas
Kita pusė įveda kodą arba atidaro kvietimo nuorodą. Serveris mato, kad abu įrenginiai pateikia tą patį kodą, ir juos sujungia.
Techninė detalėSignalizacija perduoda tik WebRTC ryšio duomenis: SDP sesijos aprašus ir ICE kandidatus. Kodas sunaudojamas pirmą kartą panaudojus.
Šifravimo rakto išvedimas
Abu įrenginiai susitaria dėl šifravimo rakto vietoje. Raktas niekada nepereina per serverį ir Synaptic Systems jo nežino.
Techninė detalėECDH P-256 kreivėje per WebCrypto, po to HKDF-SHA256 su sesijos kodu kaip druska. Rezultatas — atskiri AES-256-GCM raktai kiekvienai krypčiai.
Ryšio patvirtinimas
Abu įrenginiai rodo tą patį rakto piršto atspaudą. Jei reikšmės skiriasi, ryšys atmetamas. Prisijungimas per kvietimo nuorodą patikrinamas automatiškai.
Techninė detalėPiršto atspaudas — tai 48 bitų kriptografinė bendro rakto santrauka. Kvietimo nuoroda autentifikuoja mainus HMAC-SHA256 naudodama URL fragmento paslaptį.
Pats perdavimas
Kanalas veikia tiesiai tarp dviejų įrenginių. Abi pusės gali vienu metu siųsti ir gauti, eiga rodoma kiekvienam failui.
Techninė detalėWebRTC DataChannel. Failas skaidomas į iki 64 KB blokus, kiekvienas šifruojamas atskirai AES-256-GCM su savo nonce. Gavėjas rašo tiesiai į diską.
Schema juda pati. Pasirinkite etapą, kad pamatytumėte detales.
Perdavimo sesija
Atidaryti perdavimo sesiją
Gausite sesijos kodą ir kvietimo nuorodą, kuriuos perduosite kitai pusei jums patogiu kanalu.
Ištisinis AES-256 šifravimasBe dydžio ribosBe paskyros
Prisijungti prie sesijos
Sesijos kodas yra šešiaženklis, galioja 10 minučių ir gali būti panaudotas vieną kartą.
Jei gavote kvietimo nuorodą, ją atidarius kodas užpildomas ir prieš prisijungiant prašoma patvirtinimo.
Kas nutinka, jei puslapis uždaromas perdavimo metu?
Perdavimas sustoja ir jį reikia pradėti iš naujo. Tęsimas nuo nutraukimo vietos kuriamas.
Kiek saugus yra sesijos kodas?
Kodas nustoja galioti po 10 minučių ir gali būti panaudotas tik kartą. Be to, ryšys patvirtinamas rankiniu būdu, o abi pusės palygina rakto piršto atspaudą.
Kodėl ryšys ne visada užmezgamas?
Kai kurie tinklai, ypač įmonių ir dalis mobiliųjų, neleidžia tiesioginių ryšių tarp dviejų įrenginių. Failai nėra nukreipiami per mūsų serverius, todėl tokiais atvejais perdavimas neįmanomas. Sprendimas — kitas tinklas arba klasikinis perdavimas.
Ar veikia mobiliuosiuose įrenginiuose?
Taip, bet kurioje modernioje naršyklėje. Perdavimo metu ekranas turi likti įjungtas, kitaip operacinė sistema gali sustabdyti puslapį.
Ar yra dydžio riba?
Chrome ir Edge naršyklėse pasirenkate išsaugojimo vietą ir failai rašomi tiesiai į diską, be ribos. Firefox ir Safari gaunami failai laikomi atmintyje, todėl praktinė riba yra apie 1,5 GB.