Kan noen se IP-adressen din i en chatteapp? Hva hver observatør vet
I en videresendt chat er avsenderen og nettverksmotparten din forskjellige enheter. Skill mellom hva tjenesten ser, hva du ser, og hva appens etikett antyder.
«Hvem snakker jeg med?» er to spørsmål i én setning. Det ene handler om kontoen som skrev meldingen, det andre om maskinen i den andre enden av nettverksforbindelsen klienten din faktisk holder. I en videresendt chat er de nesten aldri samme enhet, og forskjellen forklarer det meste av forvirringen om hva en VPN skjuler eller ikke skjuler for personen du skriver til. Får du topologien riktig, blir personvernspørsmålet besvarlig i stedet for følelsesladet.
Klienten din snakker med tjenesten, ikke med den andre personen
Tenk deg en tekstchat-app der hver deltaker kobler til tjenesten, og tjenesten leverer meldinger mellom kontoer. Klienten din holder en forbindelse til tjenesten; den andre deltakeren holder en egen forbindelse til samme tjeneste. Meldingen reiser fra klienten deres til tjenesten og fra tjenesten til din, altså er transportmotparten din et tjenestepunkt og ikke enheten deres.
Alex's client -> chat service -> your clientAlt som følger kommer fra det ene diagrammet. Ser du på din egen forbindelse, identifiserer du tjenesten, ikke Alex. Ser du på Alex sin forbindelse, identifiserer du tjenesten fra den andre siden. Ingen av observasjonene er i seg selv en pakkenivå-registrering av den andre personens enhet, og uansett hvor mye du inspiserer din egen trafikk, blir den ikke det.
Ulike observatører samler ulike bevis
Tjenesten står sterkere enn noen deltaker fordi den avslutter begge forbindelsene og samtidig vet hvilken konto som eier hver av dem. Hva den beholder, hvor lenge, hvilke registre den kobler sammen og til hvem den oppgir dem, er separate spørsmål med separate svar, og ingen av dem besvares av «appen er ende-til-ende-kryptert».
Du som mottaker står svakt på nettverksfakta, men sterkt på innholdsfakta: meldingsteksten, visningsnavnet, alt avsenderen skrev eller la ved. En avsender som skriver inn sin egen adresse, har oppgitt den, og den opplysningen er ikke en nettverksobservasjon selv om den lyder som en.
| Observer | Sees | Cannot conclude |
|---|---|---|
| You | Your connection to the service, message contents, sender-supplied details | The other client's source address |
| The other participant | Their connection, message contents, what the service attaches | Your source address |
| The service | Both connections, account mapping, delivery metadata | What it does not retain, or what leaves its boundary |
Hvis Alex kobler til via VPN, kan tjenesten se utgangsadressen for den forbindelsen i stedet for hjemmeadressen til Alex. Det er en uttalelse om hva tjenesten ser. Det betyr ikke at utgangsadressen gis videre til deg, og det betyr slett ikke at din egen forbindelse anonymiseres av Alex sitt valg av transport.
Når appen faktisk er peer-to-peer
Videresendingsmodellen er en modell, ikke en lov. Noen meldingsfunksjoner etablerer direkte veier mellom klienter, for eksempel en nettleserbasert datakanal som forhandles via en signaliseringsserver, eller en filoverføringsmodus som kobler de to enhetene sammen for å unngå å videresende store datamengder. I slike tilfeller er transportmotparten virkelig den andre deltakerens enhet, og observatøranalysen endres fullstendig.
Appens vennlige etikett er ikke nok til å avgjøre hvilken av disse du er i. «Direkte melding» beskriver hvem som leser den, ikke hvordan den transporteres, og en anrops- eller skjermdelingsfunksjon i samme app kan bruke en annen topologi enn teksttråden ved siden av. Les leverandørens dokumentasjon for den aktuelle funksjonen, eller se hvilke forbindelser klienten din åpner mens du bruker den.
Uttalelsen om ende-til-ende-kryptering dekker hvem som kan lese beskyttet innhold. Den sier ingenting om hvilke servere som tar imot forbindelser, hvilke metadata de ser, eller om en direkte vei finnes, og drøftingen i RFC 6973 av observatørens evner er en nyttig disiplin: navngi observatøren, og list deretter opp hva den observatøren faktisk kan samle inn.
Hva dette betyr for en VPN
En VPN endrer hva tjenesten ser for forbindelsen din. Den endrer ikke hvem transportmotparten din er, og gir ikke den andre deltakeren et nytt bilde av adressen din. Å forvente at en VPN skjuler deg for personen du skriver til, er en kategorifeil: klienten deres har aldri hatt en forbindelse til din.
Det en VPN kan endre, er en direktevei-funksjon. Hvis appen ellers ville forhandle fram en peer-to-peer-forbindelse, kan rutingen av trafikken din gjennom en tunnel tvinge fram en videresending, og noen funksjoner vil oppføre seg annerledes eller falle tilbake; det er en reell effekt, men den handler om topologi, ikke om å forsvinne fra samtalen.
Hold så de to spørsmålene fra hverandre i alt du skriver ned. Hvilken konto sendte dette, og hvilket endepunkt bar det. Svar eksplisitt på begge, noter hvem som kan observere hvert svar, og slutt å slå dem sammen til én konklusjon om hvorvidt en melding kan spores.