På WWDC på mandag, Apple . I motsetning til standard , som er avhengig av mobilinfrastrukturen og GPS-en til en tapt enhet, Finn meg-funksjonen er i stand til å finne jevne enheter без SIM-kort og GPS. For eksempel bærbare datamaskiner, eller til og med , festet til ethvert element (Apple antydet bare dette i vid forstand).
Ideen er å gjøre hele det eksisterende nettverket av iPhoner om til et storstilt, folkebasert system for sporing av objekter i nærheten. Hver aktive iPhone Den vil kontinuerlig overvåke BLE-beacon-meldinger fra andre enheter. Når den oppdager et av disse signalene, merker den pakken med GPS-koordinatene og sender den til Apples servere. Dette er flott for sprø hjerner som meg, som stadig mister ting: hvis jeg lar sekken min ligge på kontoret på en turistbuss i Kina, vil noen før eller siden snuble over signalet, og jeg vil umiddelbart vite hvor jeg skal finne det.
(Det er verdt å merke seg at Apple ikke kom opp med ideen. Faktisk liker selskaper har jobbet ganske lenge. Og ja, de burde bekymre seg for virksomheten sin).
Hvis du ikke er imponert over beskrivelsen ovenfor, la meg stille spørsmålet du bør stille: Hvordan vil dette systemet beskytte mot massive personvernbrudd?
Her er en liste over potensielle problemer:
- Hvis en enhet konstant sender ut et BLE-signal som identifiserer den unikt, har alle nå (en annen) måte å spore deg på. Markedsførere bruker allerede WiFi og Bluetooth MAC-adresser til dette, og funksjonen Finn meg oppretter en annen sporingskanal.
- Det deklassifiserer også de som deltar i prosess. Nå vil disse personene sende sin nåværende plassering til Apple (de gjør sannsynligvis allerede dette). Men nå må de dele denne informasjonen også med fremmede som "mister" enhetene sine. Dette kan ende ille.
- Svindlere kan også starte aktive angrep der de forfalsker posisjonen til enheten din. Selv om det virker usannsynlig, blir folk alltid overrasket.
Den gode nyheten er at Apple hevder at systemet gir sterkt personvern gjennom smart bruk av kryptografi. Men som vanlig nektet de å fortelle implementeringsdetaljer. Andy Greenberg i Wired fortalte en del ifølge Apple, noe som gir mye mening. Dessverre etterlater denne fortellingen fortsatt store hull. Dette er de jeg skal fylle ut, og gir den mest sannsynlige beskrivelsen av hva Apple faktisk gjør.
Stort forbehold: mange ting kan være helt feil. Jeg kommer garantert til å oppdatere denne artikkelen når Apple avslører mer.
Noen store problemer
For å legge ut scenariet, må flere enheter bringes inn i bildet. For inspirasjon, ta TV-serien Lassie fra 1950-tallet.
Den første enheten vi vil ringe Timmy, "tapt". U Timmy Det er en BLE radiosender, men ingen GPS eller internettforbindelse. Heldigvis var den allerede sammenkoblet med en annen enhet kalt Ruthsom vil finne ham. Vår hovedperson er Lassie: Dette er iPhonen til en tilfeldig (og uvitende) fremmed som (forutsatt) har minst en intermitterende internettforbindelse og en pålitelig GPS. Og Lassie er en veldig flink jente. Nettverksenheter kommuniserer gjennom Apples iCloud-servere som vist nedenfor:

(Fordi det Timmy и Ruth må ha vært sammenkoblet på forhånd, de tilhører sannsynligvis begge samme person. Nevnte jeg at du må kjøpe два Apple-enheter for at systemet skal fungere? Dette passer Apple helt fint.)
Vi ser på et sikkerhetssystem, så det første spørsmålet er: hvem er den slemme fyren? I denne situasjonen er svaret ubehagelig: Hvem som helst kan være en potensiell angriper. Det er derfor problemet er så interessant.
Opprettholde Timmys anonymitet
Det viktigste med systemet er at uvedkommende ikke skal få overvåke Timmy, spesielt når den ikke er tapt. Dette eliminerer noen ganske åpenbare avgjørelser, for eksempel når enheten Timmy bare roper: "Hei, jeg heter Timmy, ring mamma Ruth og la henne få vite at jeg er fortapt.". Dette utelukker også praktisk talt enhver uforanderlig statisk identifikator, selv en som er ugjennomsiktig og ser ut til å være tilfeldig.
Dette siste kravet kommer fra den uheldige opplevelsen av tjenester som misbruker statiske identifikatorer (f.eks. ) for å spore bevegelsen til enheter. eple bekjemper denne overvåkingen ved å randomisere identifikatorer som MAC-adresser. Hvis Apple legger til en statisk sporings-ID for «Finn mitt», vil problemene bare bli verre.
Dette kravet betyr at eventuelle meldinger som sendes Timmy, må være ugjennomsiktig. Dessuten må innholdet i disse meldingene endres relativt ofte til nye verdier som ikke kan assosieres med gamle. En åpenbar måte for den sammenkoblede enheten å gjenkjenne slike meldinger er å tvinge Timmy и Ruth enige om en lang liste med tilfeldige ""for Timmy, La det gå Timmy velger en annen hver gang.
Dette hjelper virkelig. Hver gang når Lassie ser en (ukjent) enhet som kringkaster en ID, vil hun ikke vite om den tilhører Timmy: Men hun kan sende den til Apples servere sammen med sin egen GPS-posisjon. Hvis Timmy vil gå seg vill Ruth kan be Apple om å finne alle mulige aliaser Timmy. I denne situasjonen vil ingen utenfor Apple kjenne til listen, og til og med Apple selv vil bare vite den etter at noen har gått seg vill, så denne tilnærmingen forhindrer de fleste sporingsalternativer.
En litt mer effektiv måte å implementere denne ideen på er å bruke en kryptografisk funksjon (som en MAC eller hash-funksjon) for å generere en liste over aliaser fra ett kort frø, hvorav kopier er lagret Timmy и Ruth. Dette er bra fordi det reduserer mengden data som lagres. Men å finne Timmy, Ruth må fortsatt sende alle aliasene - eller frøene - til Apple, som må slå opp hvert alias i databasen.
Skjuler Lassies plassering
Den beskrevne tilnærmingen med aliaser bør skjule seg godt identitet Timmy fra Lassie og til og med fra Apple (til det punktet hvor Ruth begynner å lete etter ham). Det er imidlertid en stor ulempe: den skjuler ikke GPS-koordinater Lassie.
Dette er dårlig av minst flere grunner. Hver gang når Lassie oppdager enhver enhet med et BLE-signal, må den overføre sin nåværende plassering (sammen med aliaset den ser) til Apples servere. Det betyr at Lassie forteller hele tiden til Apple hvor den er. Og i tillegg, selv om Apple lover å ikke lagre identiteten din Lassie, er resultatet av alle disse meldingene en enorm sentralisert database som viser alle GPS-plasseringer der de oppdages noen Apple-enhet.
Vær oppmerksom på at en rekke slike data i seg selv gir mye informasjon. Ja, enhets-IDer kan være aliaser – men det gjør ikke informasjonen ubrukelig. For eksempel hvis en slags Apple-enheten sender de samme koordinatene om kveldene, dette gir personens sannsynlige bostedsadresse.
Den åpenbare måten å hindre Apple i å avsløre disse dataene er å kryptere dem slik at bare de som virkelig trenger å se informasjonen kan se den. trenge vite plasseringen til enheten. Hvis Lassie mottar melding fra Timmy, da den eneste personen som virkelig trenger å vite plasseringen LassieDen Ruth. For å holde denne informasjonen konfidensiell, Lassie må kryptere koordinatene med en offentlig nøkkel Ruth.
Selvfølgelig oppstår spørsmålet: hvordan Lassie vil motta nøkkelen Ruth? Den åpenbare løsningen for Timmy - rop ut den offentlige nøkkelen Ruth i hver sending. Men dette vil skape en statisk identifikator, som igjen lar deg spore Timmy.
For å løse dette problemet må du Ruth det var mange frakoblede offentlige nøklerTil Timmy kan utstede forskjellige nøkler med hver sending. Et alternativ er å tvinge Ruth и Timmy generere mange forskjellige felles nøkkelpar (eller generere mange slike par fra et felles frø). Men det er irriterende og Ruth du må lagre mange hemmelige nøkler. Og identifikatorene nevnt i forrige seksjon kan fås ved å hashe hver offentlige nøkkel.
En litt bedre tilnærming (som Apple kanskje eller kanskje ikke bruker) innebærer randomisering nøkler. Dette er en funksjon i noen kryptosystemer, som f.eks : hun er , så det vil ikke være relatert til originalen på noen måte. Den beste delen av denne funksjonen er det Ruth kan bruke én hemmelig nøkkel uavhengig av hvilken randomisert versjon av den offentlige nøkkelen som ble brukt til kryptering.

Alt dette fører til den endelige ideen om protokollen. I hver sending Timmy sender et nytt alias og en randomisert kopi av den offentlige nøkkelen Ruth... Når Lassie mottar sendingen, krypterer den GPS-koordinatene med den offentlige nøkkelen og sender en kryptert melding til Apple. Ruth kan sende aliaser Timmy til Apples servere, og hvis Apple finner en match, kan den hente og dekryptere GPS-koordinatene.
Løser dette alle problemer?
Det uheldige er at det ikke finnes noen perfekt løsning for mange merkelige kantsituasjoner. For eksempel, hva hvis Timmy onde hensikter og han ønsker å tvinge Lassie avsløre din Apple-posisjon? Hva om Old Man Smithers prøver å kidnappe Lassie?
På et tidspunkt kommer svaret på dette spørsmålet ned til det faktum at vi har gjort alt mulig: eventuelle gjenværende problemer bør flyttes utenfor rammen av trusselmodellen. Noen ganger vet til og med Lassie når hun skal stoppe.
Kilde: www.habr.com
