V pondělí na konferenci WWDC představila společnost Apple . Na rozdíl od standardního , která spoléhá na infrastrukturu mobilních sítí a GPS ztraceného zařízení, funkce „Najdi mě“ dokáže najít i zařízení bez bez SIM karty a GPS. Například notebooky, nebo dokonce , připevněné k jakémukoli předmětu (Apple to naznačila pouze v širokém slova smyslu).
Myšlenka spočívá v tom, aby se celá stávající síť iPhonů proměnila v rozsáhlý crowdsourcingový systém pro sledování okolních objektů. Každý aktivní iPhone bude neustále sledovat signály BLE, které pocházejí z jiných zařízení. Když najde jeden z těchto signálů, označí paket svými GPS souřadnicemi - a odešle je na servery Apple. To je skvělé pro lidi jako já, kteří neustále ztrácejí věci: pokud nechám svůj batoh v turistickém autobusu v Číně, někdo se brzy na jeho signál narazí - a okamžitě zjistím, kde ho najít.
(Je třeba poznamenat, že tuto myšlenku nevymyslela Apple. Ve skutečnosti na tomto poli už nějakou dobu pracují společnosti jako . A ano, měly by se obávat o své podnikání).
Pokud vás popis výše neoslnil, dovolte mi položit otázku, kterou byste měli položit: jak tento systém ochrání před masovými porušeními soukromí?
Vyjmenujme možné problémy:
- Pokud zařízení neustále vysílá signál BLE, který jednoznačným způsobem identifikuje, má nyní každý (ještě jeden) způsob, jak vás sledovat. Marketers již k tomu používají MAC adresy WiFi a Bluetooth, a funkce Najdi mě vytváří další kanál sledování.
- Také odhaluje ty, kteří se účastní tohoto procesu. Nyní tito lidé budou posílat Apple svou aktuální polohu (možná to dělají už teď). Ale nyní budou muset sdílet tyto informace také s cizími lidmi, kteří „ztrácejí“ svá zařízení. To se může špatně skončit.
- Podvodníci také mohou spustit aktivní útoky, při nichž falšují polohu vašeho zařízení. I když se to zdá nepravděpodobné, lidé vždy dokáží překvapit.
Dobrá zpráva je, že Apple tvrdí, že systém skutečně zajišťuje spolehlivé soukromí díky chytrému použití kryptografie. Ale, jak bývá obvyklé, odmítli poskytnout detaily implementace. Andy Greenberg v Wired popsal částečnou slovy Apple, která nám mnoho objasňuje. Bohužel, tento popis stále zanechává obrovské mezery. Tyto mezery se chystám zaplnit a nabídnout nejpravděpodobnější popis toho, co Apple skutečně dělá.
Velká výhrada: mnohé se může ukázat jako zcela špatné. Článek určitě aktualizuji, jakmile Apple poskytne více informací.
Některé základní problémy
Abychom ilustrovali scénář, musíme do obrazu vložit několik zařízení. Pro inspiraci vezmeme televizní seriál z 50. let „Lassie“.
První zařízení, které nazveme Timmy, je "ztraceno". Má Timmy BLE vysílač, ale žádné GPS ani připojení k internetu. Naštěstí se již spároval s druhým zařízením nazvaným Ruth, která ho chce najít. Naším hlavním hrdinou je Lassie: je to iPhone náhodného (a o tom nevědomého) cizince, který má (předpokládejme) alespoň občasné připojení k internetu a spolehlivé GPS. A navíc je Lassie velmi hodná holka. Síťová zařízení spolu interagují přes iCloud servery Apple, jak je znázorněno níže:

(Protože Timmy a Ruth musí být spárována předem, pravděpodobně patří obě stejnému člověku. Zmínil jsem, že budete muset koupit dva zařízení Apple, aby systém fungoval? To Apple rozhodně vyhovuje).
Zkoumáme bezpečnostní systém, takže první otázka zní: kdo je špatný chlapec?? В этой ситуации ответ неприятный: potenciálním zločincem může být kdokoli. Proto je problém tak zajímavý.
Udržení anonymity Timmyho
Nejdůležitějším aspektem systému je, že se nesmí umožnit cizím osobám sledovat Timmy, zejména když není ztracený. To vylučuje některá docela zřejmá řešení, například když se zařízení Timmy prostě ozve: "Ahoj, jmenuji se Timmy, prosím, zavolejte mé mámě Ruth a řekněte jí, že jsem ztracený". To také vylučuje prakticky jakýkoli neměnný statický identifikátor, dokonce i neprůhledný a vypadající náhodně.
Poslední požadavek je založen na smutné zkušenosti služeb, které zneužívají statické identifikátory (například, ) pro sledování pohybu zařízení. Apple bojuje s tímto sledováním pomocí randomizace identifikátorů, jako jsou MAC adresy. Pokud Apple přidá statický identifikátor pro sledování pro 'Find My', všechny problémy se pouze zhorší.
Tento požadavek znamená, že jakékoli zprávy přenášené Timmy, musí být neprůhledné. Navíc by obsah těchto zpráv měl relativně často měnit na nové hodnoty, které nelze přiřadit ke starým. Jeden z očividných způsobů, jak spárované zařízení rozpoznat takové zprávy, je přimět Timmy a Ruth jednat s dlouhým seznamem náhodných '' pro Timmy, a nechat Timmy každýkrát vybrat jiný.
To opravdu pomáhá. Každýkrát, když Lassie vidí nějaké (neznámé) zařízení, které přenáší identifikátor, nebude vědět, zda patří Timmy: ale může ho poslat na servery Apple spolu se svou vlastní GPS polohou. V případě, že Timmy se ztratí, Ruth může požádat Apple, aby našla všechny možné přezdívky. TimmyV této situaci nikdo mimo Apple se o tomto seznamu nedozví, a dokonce ani Apple se o něm dozví pouze tehdy, když se někdo ztratí, takže tento přístup zabraňuje většině možností sledování.
O něco efektivnější způsob, jak tuto myšlenku realizovat, je použít kryptografickou funkci (např. MAC nebo hash funkci), aby se vygeneroval seznam přezdívek z jednoho krátkého 'seed', jehož kopii uchovává Timmy a Ruth. To je dobré, protože to snižuje objem uchovávaných dat. Ale aby našla Timmy, Ruth , stejně musí poslat všechny přezdívky – nebo seed – společnosti Apple, která musí hledat každou přezdívku ve své databázi.
Skrývání polohy Lassie
Opopisovaný přístup s přezdívkami by měl dobře skrývat identitu Timmy od Lassie i před Applem (až do okamžiku, kdy Ruth začne hledat). Nicméně existuje velká nevýhoda: to neskrývá GPS souřadnice Lassie.
To je špatné, alespoň z několika důvodů. Každýkrát, když Lassie pokud zařízení s BLE signálem zjistí jakékoli zařízení, mělo by odeslat své aktuální umístění na servery Apple (spolu s pseudonymem, který vidí). To znamená, že Lassie neustále informuje Apple, kde se nachází. A co víc, i když Apple slibuje, že nebude uchovávat identité Lassie, výsledkem všech těchto zpráv je obrovská centralizovaná databáze, která ukazuje všechna GPS umístění, kde bylo zjištěno jakékoli zařízení Apple.
Vezměte na vědomí, že samotný tento soubor dat poskytuje velké množství informací. Ano, identifikátory zařízení mohou být pseudonymy — ale to nedělá informace bezcennými. Například pokud nějaké zařízení Apple vysílá stejné souřadnice každý večer, ukazuje to pravděpodobnou adresu bydliště uživatele.
Zřejmý způsob, jak zabránit odhalení těchto dat Apple, je šifrovat je, aby informace viděli pouze ti, kdo opravdu je třeba potřebují znát umístění zařízení. Pokud Lassie obdrží zprávu od Timmy, jediný, kdo skutečně potřebuje znát umístění Lassie, to je Ruth. Aby tuto informaci uchoval v tajnosti, Lassie by měl šifrovat své souřadnice veřejným klíčem Ruth.
Samozřejmě vyvstává otázka: jak Lassie získá klíč Ruth? Очевидное решение для Timmy — křičením veřejného klíče Ruth v každém svém vysílání. Ale to by vytvořilo statický identifikátor, který by opět umožnil sledování Timmy.
Aby se tento problém vyřešil, potřebuje Ruth to bylo mnoho nepřidružených veřejných klíčů, aby Timmy mohl vydávat různé klíče s každým vysíláním. Jednou z možností je donutit Ruth a Timmy generovat mnoho různých párů klíčů (nebo generovat mnoho takových párů ze společného semene). Ale to je otravné a Ruth by bylo nutné uchovávat mnoho tajných klíčů. A identifikátory zmíněné v předchozí kapitole mohou být získány hashováním každého veřejného klíče.
O něco lepší přístup (který Apple může nebo nemusí použít) předpokládá randomizaci klíčů. To je vlastnost některých kryptosystémů, jako jsou : umožňuje jakékoli straně randomizovat veřejný klíč jeden tajný klíč nezávisle na tom, jaká randomizovaná verze jejího veřejného klíče byla použita pro šifrování. Ruth může používat jeden tajný klíč, bez ohledu na to, která náhodně generovaná verze jejího veřejného klíče byla použita pro šifrování.

Všechny tyto faktory vedou k konečné myšlence protokolu. V každém přenosu Timmy přenáší nový alias a randomizovanou kopii veřejného klíče Ruth. Když Lassie obdrží přenos, zašifruje své GPS souřadnice veřejným klíčem a odešle zašifrovanou zprávu do Apple. Ruth může poslat aliasy Timmy na servery Apple, a pokud Apple najde shodu, bude schopna získat a dešifrovat GPS souřadnice.
Řeší to všechny problémy?
Nepříjemná věc je, že neexistuje dokonalé řešení pro mnoho podivných mezních situací. Například, co když má Timmy špatné úmysly a chce donutit Lassie odhalit svou polohu Apple? Co když se pan Smith pokusí unést Lassie?
Nakonec se odpověď na tuto otázku ohledně toho, co jsme udělali pro to nejlepší, zúží na fakt, že jsme udělali vše, co bylo možné: jakékoli zbylé problémy by měly být vyloučeny ze schématu hrozby. Někdy dokonce i Lassie ví, kdy přestat.
Zdroj: habr.com
