Kan någon se din IP i en chattapp? Vad varje observatör vet
I en vidarebefordrad chatt är avsändaren och din nätverksmotpart olika enheter. Skilj på vad tjänsten ser, vad du ser och vad appens etikett antyder.
”Vem pratar jag med?” är två frågor i en mening. Den ena handlar om kontot som skrev meddelandet, den andra om maskinen i andra änden av den nätverksanslutning som din klient faktiskt håller. I en vidarebefordrad chatt är de nästan aldrig samma enhet, och skillnaden förklarar det mesta av förvirringen kring vad en VPN döljer eller inte döljer för personen du skriver till. Får du topologin rätt blir integritetsfrågan besvarbar i stället för känslomässig.
Din klient pratar med tjänsten, inte med den andra personen
Tänk dig en textchattapp där varje deltagare ansluter till tjänsten och tjänsten levererar meddelanden mellan konton. Din klient håller en anslutning till tjänsten; den andra deltagaren håller en separat anslutning till samma tjänst. Meddelandet färdas från deras klient till tjänsten och från tjänsten till din, vilket betyder att din transportmotpart är en ändpunkt hos tjänsten och inte deras enhet.
Alex's client -> chat service -> your clientAllt som följer kommer från det enda diagrammet. Tittar du på din egen anslutning identifierar du tjänsten, inte Alex. Tittar du på Alex anslutning identifierar du tjänsten från andra sidan. Ingen av observationerna är i sig en registrering på paketnivå av den andra personens enhet, och ingen mängd inspektion av din egen trafik gör den till det.
Olika observatörer samlar olika bevis
Tjänsten står starkare än någon deltagare eftersom den avslutar båda anslutningarna och samtidigt vet vilket konto som äger vilken. Vad den behåller, hur länge, vilka register den kopplar ihop och till vem den lämnar ut dem är separata frågor med separata svar, och ingen av dem besvaras av ”appen har totalsträckskryptering”.
Du som mottagare står svagt i nätverksfakta men starkt i innehållsfakta: meddelandetexten, visningsnamnet, allt avsändaren skrev eller bifogade. En avsändare som skriver in sin egen adress har avslöjat den, och det avslöjandet är inte en nätverksobservation även om det läses 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 |
Om Alex ansluter via en VPN kan tjänsten se uttagsadressen för den anslutningen i stället för Alex hemadress. Det är ett påstående om vad tjänsten ser. Det betyder inte att uttagsadressen lämnas till dig, och det betyder absolut inte att din egen anslutning anonymiseras av Alex val av transport.
När appen verkligen är jämlike-till-jämlike
Vidarebefordringsmodellen är en modell, inte en lag. Vissa meddelandefunktioner upprättar direkta vägar mellan klienter, till exempel en webbläsarbaserad datakanal som förhandlas via en signaleringsserver, eller ett filöverföringsläge som kopplar ihop de två enheterna för att undvika att skicka stora datamängder vidare. I sådana fall är transportmotparten verkligen den andra deltagarens enhet, och observatörsanalysen förändras helt.
Appens vänliga etikett räcker inte för att avgöra vilket fall du är i. ”Direktmeddelande” beskriver vem som läser det, inte hur det transporteras, och en samtals- eller skärmdelningsfunktion i samma app kan använda en annan topologi än texttråden bredvid. Läs leverantörens dokumentation för den specifika funktionen, eller se vilka anslutningar din klient öppnar medan du använder den.
Påståendet om totalsträckskryptering täcker vem som kan läsa skyddat innehåll. Det säger ingenting om vilka servrar som tar emot anslutningar, vilka metadata de ser eller om en direkt väg finns, och diskussionen i RFC 6973 om observatörens förmågor är en användbar disciplin: namnge observatören och lista sedan vad den observatören faktiskt kan samla in.
Vad detta betyder för en VPN
En VPN ändrar vad tjänsten ser för din anslutning. Den ändrar inte vem din transportmotpart är och ger inte den andra deltagaren en ny bild av din adress. Att förvänta sig att en VPN döljer dig för personen du skriver till är ett kategorifel: deras klient har aldrig haft en anslutning till din.
Det en VPN kan ändra är en direktvägsfunktion. Om appen annars skulle förhandla fram en jämlikeanslutning kan routningen av din trafik genom en tunnel tvinga fram vidarebefordran, och vissa funktioner beter sig annorlunda eller faller tillbaka; det är en verklig effekt, men den handlar om topologi, inte om att försvinna från samtalet.
Håll sedan de två frågorna åtskilda i allt du skriver ned. Vilket konto skickade detta, och vilken ändpunkt bar det. Svara uttryckligen på båda, notera vem som kan observera varje svar, och sluta slå ihop dem till en enda dom om huruvida ett meddelande kan spåras.