De nieuwe app Find My in iOS 13 en macOS Catalina helpt je om een verloren iPhone of Mac terug te vinden met behulp van Apple-apparaten in de buurt. Toch is je privacy beschermd.

denkwerkKoen Vervloesem

Dit gebeurt door bluetooth-signalen uit te sturen die door andere Apple-apparaten in de buurt opgepikt kunnen worden. Apple heeft hiervoor een slimme versleutelingstechniek ontwikkeld, zodat je privacy beschermd is. Apple zelf krijgt niet eens je locatie te zien! We bekijken hoe dit werkt.
Met de app Find My iPhone (www.apple.com/icloud/find-my-iphone/) kun je nu ook al de locatie van je Apple-apparaten bekijken als je ze kwijt bent. Op een iPhone, iPad, iPod touch, Apple Watch of Mac wordt je locatie door wifi, het mobiele datanetwerk en/of gps bepaald en doorgestuurd. Maar dat werkt alleen als je verloren apparaat een actieve internetverbinding heeft. Verloren AirPods worden teruggevonden als ze zich in bluetooth-bereik van één van je iOS-apparaten bevinden waarmee je op iCloud ingelogd bent.
Toen Apple op WWDC 2019 macOS Catalina aankondigde, de opvolger van macOS Mojave, toonde het de nieuwe Find My-app voor iOS 13 die de functionaliteit van Find My iPhone en Find My Friends in één app integreert voor iOS-apparaten. Op Macs heet de app eenvoudigweg Find. Een opvallende nieuwigheid is dat je met deze app een verloren Mac kunt vinden via bluetooth. Zelfs als de Mac slaapt en niet met het netwerk verbonden is, stuurt die bluetooth-signalen uit die door Apple-apparaten in de buurt opgepikt kunnen worden.

comm find hero 2
Tile biedt al langer een dienst aan om voorwerpen terug te vinden door crowdsourcing
van signalen van bluetooth-trackers, maar dan zonder de sterke privacygaranties die Apple biedt

Die andere apparaten (zelfs van andere personen) in de buurt van je verloren apparaat sturen de gedetecteerde locatie van je Mac dan naar iCloud, zodat jij in de Find My-app de locatie te zien krijgt. Tot hier niets nieuws: Tile (www.thetileapp.com/) heeft zo’n dienst al jaren.
Het interessante is dat Apple dit op zo’n manier geïmplementeerd heeft dat andere personen, zelfs Apple zelf, je locatie niet te zien krijgen: alle locatiegegevens zijn versleuteld en anoniem. In een interview met Wired (www.wired.com/story/apple-find-my-cryptography-bluetooth/) legde Apple uit hoe het dat doet.

find my iphone eixfa7k18xea large 2
Publieke en geheime sleutel

Hoe werkt dit proces nu? Wanneer je de Find My-app voor het eerst instelt op je apparaten, genereert die een willekeurige geheime sleutel. Die sleutel wordt met al je apparaten gedeeld die met je Apple ID gekoppeld zijn en tweefactor-authenticatie ingeschakeld hebben. Dat delen gebeurt via end-to-end encryptie. Dat betekent dat zelfs Apple die geheime sleutel niet kent: hij komt alleen op jouw apparaten terecht.
Bij elke geheime sleutel hoort een publieke sleutel. Beide sleutels samen worden gebruikt in een systeem met asymmetrische encryptie: gegevens die je met de publieke sleutel versleutelt, kun je alleen lezen als je ze met de bijbehorende geheime sleutel ontsleutelt. In het systeem van Apple sturen je apparaten continu via bluetooth een ‘baken’ uit dat bestaat uit je publieke sleutel.

 

Met de nieuwe app Find My vind je snel
een gestolen MacBook terug door bluetooth-signalen
die andere Apple-gebruikers oppikken (bron: Apple)


Altijd een andere publieke sleutel
Om te voorkomen dat anderen je kunnen traceren aan de hand van de publieke sleutel die je apparaten continu uitzenden, verandert de publieke sleutel regelmatig. Apple heeft ervoor gezorgd dat, hoewel je van twee opeenvolgende publieke sleutels niet kunt zien dat ze aan dezelfde persoon toebehoren, jouw apparaten nog altijd de boodschappen kunnen ontcijferen die je met een publieke sleutel versleutelde. Hoe dat precies gebeurt, heeft Apple op het moment van schrijven van dit artikel nog niet bekendgemaakt.
De eenvoudigste manier om dat te implementeren, is dat al je apparaten beginnen van dezelfde willekeurige ‘seed’ en op basis daarvan met een algoritme om willekeurige getallen te genereren telkens een nieuw sleutelpaar aanmaken. Omdat al je apparaten met dezelfde seed werken, zijn de opeenvolgende sleutelparen die ze aanmaken ook identiek. Maar het nadeel van deze aanpak is dat je apparaten meerdere opeenvolgende geheime sleutels dienen op te slaan, omdat ze de locatiegegevens die met een oudere publieke sleutel versleuteld zijn ook moeten kunnen decrypteren.Matthew Green, professor cryptografie aan Johns Hopkins University, beschrijft op zijn blog (https://bit.ly/2SyADGm) een andere manier waarop dit kan werken: met een techniek die universele herversleuteling (https://stanford.io/2JNZIdF) heet, in een cryptosysteem zoals ElGamal. Daarmee kun je een publieke sleutel ‘randomiseren’: je kunt willekeurige publieke sleutels genereren waarvan een buitenstaander niet kan zien dat ze bij elkaar horen, maar je kunt toch met één geheime sleutel de locatiegegevens decrypteren, ongeacht met welke van de gerandomiseerde publieke sleutel ze geëncrypteerd zijn.

Versleutelde locatie
Als nu iemand bijvoorbeeld je MacBook steelt, zendt die je steeds veranderende publieke sleutel continu uit via bluetooth, zelfs als de dief je MacBook afgesloten heeft en er geen verbinding met internet is. Andere apparaten in de buurt, zoals een iPhone van een voorbijganger, pikken de signalen op, en versleutelen hun eigen locatie met de publieke sleutel die je laptop uitzendt. De voorbijganger kan uit die publieke sleutel niet afleiden wie jij bent en kan ook niet zien op welke locaties je eerder geweest bent.
De iPhone van de voorbijganger stuurt dan de versleutelde locatie van je MacBook naar een server van Apple, samen met een hash van de publieke sleutel (uit de publieke sleutel kan de hash berekend worden, maar uit de hash kan de publieke sleutel niet gereconstrueerd worden). Apple kan niets aanvangen met die versleutelde locatie, want heeft niet de bijbehorende geheime sleutel om de locatie eruit te halen.
Dat die locatiegegevens versleuteld worden, is niet alleen belangrijk voor jouw privacy als eigenaar van de gestolen MacBook, maar ook voor de privacy van de eigenaars van de apparaten die de locatie van je gestolen MacBook doorsturen: als hun locatie in een database van Apple terechtkomt, zullen zij zeker niet geneigd zijn om jou te helpen! Bovendien zouden zelfs anonieme locatiegegevens een privacynachtmerrie kunnen zijn. Als Apple bijvoorbeeld gewoon al te zien krijgt dat een willekeurig apparaat zich op bepaalde tijdstippen van de dag bij je thuis bevindt, kan het bedrijf daaruit afleiden wanneer je thuis bent en wanneer niet. Dat willen we uiteraard niet, en het systeem dat Apple uitgevonden heeft, gaat dit tegen.

Vind je locatie
Als je nu gemerkt hebt dat je MacBook gestolen is, neem je je andere Apple-apparaat, bijvoorbeeld je iPad. Dit apparaat is met je Apple ID gekoppeld en bevat omdat je dit zo ingesteld hebt, dezelfde geheime sleutel en genereert dezelfde opeenvolging van publieke sleutels. Apple staat het gebruik van de Find My-app alleen toe op apparaten waarop je tweefactorauthenticatie ingeschakeld hebt, als extra beveiliging.
Als je dan in de Find My-app op je iPad opgeeft dat je je MacBook wilt vinden, stuurt de app een hash van je publieke sleutel en de hashes van voorgaande publieke sleutels naar Apple. Daar wordt gezocht naar deze hashes en worden de bijbehorende versleutelde locatiegegevens naar je app teruggestuurd.
Je iPad ontcijfert je versleutelde locatie en de Find My-app toont dan de laatst bekende locatie van je MacBook op een kaart. In dit hele proces heeft Apple geen enkel inzicht in je locatie. Je locatie wordt immers op je iPad zelf ontsleuteld met de geheime sleutel die zich alleen op je apparaat bevindt. Bovendien kan Apple uit de gehashte publieke sleutels niet eens de publieke sleutels afleiden en ook niet te weten komen dat ze bij hetzelfde apparaat horen.

Zelfs in je slaap
Het lokaliseren van je apparaten werkt zelfs als ze in slaap zijn. In slaapmodus kan een apparaat immers nog altijd Bluetooth Low Energy-signalen uitzenden, die heel weinig stroom verbruiken.Ook voor de apparaten die de bluetooth-signalen oppikken en doorsturen, is de impact beperkt: de functie zal minimale data en stroom verbruiken. Apple heeft de functionaliteit zo ontworpen dat de apparaten niet continu netwerkpakketjes gaan doorsturen met de locatiegegevens van apparaten in de buurt, maar dat dit alleen gebeurt wanneer er sowieso al andere netwerkpakketjes verzonden worden.
Bovendien gaan de apparaten niet continu naar bluetooth-signalen scannen, maar pikken ze het signaal van je gestolen MacBook alleen op wanneer ze sowieso een bluetooth-scan uitvoeren, bijvoorbeeld als ze uit slaapmodus ontwaken en met een gekoppeld bluetooth-toetsenbord of -koptelefoon verbinden.

find my laptop db6201hb5toy large 2
Zelfs als je Apple-apparaat niet met internet verbonden is
en in slaapmodus staat, werkt Find My (bron: Apple)

Verloren voorwerpen
Er zijn zelfs geruchten dat Apple een bluetooth-tracker gaat uitbrengen zoals die van Tile, en dat die ook met de Find My-app gaat samenwerken. Zo werd er in de iOS 13-bètaversie een verwijzing gevonden naar een apparaat met de naam Tag1,1, wat wel eens de langverwachte ‘Apple Tag’ zou kunnen zijn. De website 9to5Mac vond in de bèta zelfs een foto van hoe de Apple Tag er zou uitzien.
Op deze manier kun je een tracker bevestigen aan elk voorwerp dat je niet wilt verliezen (je sleutel, rugzak, bagage, kind of huisdier). Je zou de tracker dan via bluetooth koppelen aan een iPhone, net zoals je dat nu al met de AirPods kunt doen. Als je het voorwerp dan verliest, helpen alle Apple-apparaten rond het voorwerp mee om jou de locatie te laten weten.

apple tag 2
Met een Apple Tag zou je gelijk welk voorwerp van overal kunnen traceren (bron: 9to5Mac)