Na segunda-feira, na conferência WWDC, a Apple . Diferente do padrão , que depende da infraestrutura de telefonia móvel e GPS do dispositivo perdido, a função “Find My” é capaz de localizar até mesmo dispositivos sem sem chip SIM e GPS. Por exemplo, laptops ou até mesmo , anexadas a qualquer objeto (a Apple apenas insinua isso de forma ampla).
A ideia é transformar toda a rede existente de iPhones em um grande sistema de crowdsourcing para rastreamento de objetos ao redor. Cada iPhone ativo estará constantemente capturando mensagens de beacons BLE que vêm de outros dispositivos. Quando ele encontra um desses sinais, marca o pacote com suas coordenadas GPS — e envia para os servidores da Apple. Isso é muito legal para pessoas desastradas como eu, que estão sempre perdendo coisas: se eu deixar minha mochila em um ônibus turístico na China ou no escritório, cedo ou tarde alguém encontrará seu sinal — e eu saberei imediatamente onde encontrá-la.
(Vale ressaltar que a ideia não foi criada pela Apple. Na verdade, empresas como já estão nesse ramo há bastante tempo. E sim, eles devem se preocupar com seus negócios).
Se a descrição acima não impressionou, deixe-me levantar a pergunta que você deve fazer: como esse sistema protegerá contra massivas violações de privacidade?
Vamos listar os problemas potenciais:
- Se um dispositivo está constantemente emitindo um sinal BLE que o identifica claramente, todos terão (mais uma vez) uma maneira de rastreá-lo. Os profissionais de marketing já usam para isso os endereços MAC do WiFi e Bluetooth, e a função Find My cria mais um canal de rastreamento.
- Ela também expõe aqueles que participam do processo. Agora essas pessoas estarão enviando à Apple sua localização atual (possivelmente, elas já fazem isso). Mas agora terão que compartilhar essa informação também com estranhos que "perdem" seus dispositivos. Isso pode terminar mal.
- Golpistas também podem lançar ataques ativos, falsificando a localização do seu dispositivo. Embora isso pareça improvável, as pessoas sempre surpreendem.
A boa notícia é que a Apple afirma que o sistema realmente garante privacidade robusta devido ao uso apropriado da criptografia. Mas, como de costume, eles se recusaram a informar os detalhes da implementação. Andy Greenberg na Wired compartilhou uma análise parcial da com base nas palavras da Apple, que permite entender muito. Infelizmente, essa explicação ainda deixa grandes lacunas. É isso que vou preencher, propondo a descrição mais provável do que a Apple realmente faz.
Uma grande ressalva: muitas coisas podem estar completamente erradas. Eu certamente atualizarei o artigo quando a Apple divulgar mais informações.
Alguns problemas principais
Para delinear o cenário, precisamos introduzir alguns dispositivos. Para inspiração, vamos pegar a série de TV dos anos 1950 "Lassie".
O primeiro dispositivo que chamaremos de Timmy, "perdido". Timmy possui um transmissor BLE, mas não tem GPS ou conexão com a internet. Felizmente, ele já foi emparelhado com o segundo dispositivo chamado de Timmy Ruth , que quer encontrá-lo. Nosso personagem principal éLassie : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo:(Como

devem ser emparelhados com antecedência, é provável que ambos pertençam à mesma pessoa. Eu mencionei que você precisará comprar de Timmy e , que quer encontrá-lo. Nosso personagem principal é dispositivos da Apple para que o sistema funcione? Isso é perfeitamente aceitável para a Apple). dois Estamos considerando um sistema de segurança, então a primeira pergunta é:
quem é o vilão? O potencial infrator pode ser qualquer um? В этой ситуации ответ неприятный: . É por isso que o problema é tão interessante.Manter a anonimidade de Timmy
O aspecto mais importante do sistema é que não se deve permitir que pessoas de fora rastreiem
, especialmente quando ele não está perdido. Isso exclui algumas soluções bastante óbvias, como quando o dispositivo de Timmysimplesmente grita: de Timmy "Oi, meu nome é Timmy, por favor, ligue para minha mãe Ruth e diga que estou perdido" . Isso também exclui praticamente qualquer identificador estático imutável, mesmo que opaco e pareça aleatório.. Isso também exclui praticamente qualquer identificador estático não mutável, mesmo os opacos e semelhantes a aleatórios.
A última exigência foi elaborada a partir da triste experiência de serviços que abusam de identificadores estáticos (por exemplo, ) para rastrear a movimentação de dispositivos. A Apple contra essa vigilância através da randomização de identificadores, como os endereços MAC. Se a Apple adicionar um identificador de rastreamento estático para o "Find My", todos os problemas serão apenas agravados.
Essa exigência significa que quaisquer mensagens transmitidas de Timmy, devem ser opacas. Além disso, o conteúdo dessas mensagens deve mudar relativamente com frequência para novos valores que não possam ser vinculados aos antigos. Uma das maneiras óbvias de um dispositivo emparelhado reconhecer essas mensagens é forçar de Timmy e , que quer encontrá-lo. Nosso personagem principal é a concordar com uma longa lista de "" para de Timmy, e deixar que de Timmy sempre escolha um diferente.
Isso realmente ajuda. Cada vez que : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: vê algum dispositivo (desconhecido) transmitindo um identificador, ele não saberá se pertence a de Timmy: mas ele pode enviá-lo para os servidores da Apple junto com sua própria localização GPS. Caso de Timmy se perca, , que quer encontrá-lo. Nosso personagem principal é pode pedir à Apple para encontrar todos os pseudônimos possíveis de Timmy. Nessa situação, ninguém fora da Apple saberá dessa lista, e mesmo a própria Apple só saberá disso depois que alguém se perder, portanto, essa abordagem previne a maioria das opções de rastreamento.
Uma maneira um pouco mais eficaz de implementar essa ideia é usar uma função criptográfica (como MAC ou função hash) para gerar uma lista de pseudônimos a partir de um "seed" curto, cuja cópia é armazenada de Timmy e , que quer encontrá-lo. Nosso personagem principal é. Isso é bom porque reduz a quantidade de dados armazenados. Mas para encontrar de Timmy, , que quer encontrá-lo. Nosso personagem principal é ainda precisa enviar todos os pseudônimos — ou o seed — para a Apple, que terá que procurar cada pseudônimo em seu banco de dados.
Ocultando a localização de Lassi
A abordagem descrita com pseudônimos deve ocultar bem a identidade de Timmy de : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: até mesmo da Apple (até o momento em que , que quer encontrá-lo. Nosso personagem principal é começar a procurá-la). No entanto, há uma grande desvantagem: não oculta as coordenadas GPS : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo:.
Isso é ruim, pelo menos por várias razões. Cada vez que : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: Ao detectar qualquer dispositivo com sinal BLE, ele deve enviar aos servidores da Apple sua localização atual (junto com o pseudônimo que vê). Isso significa que : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: ele informa constantemente à Apple onde está. E mais, mesmo que a Apple prometa não armazenar a identidade : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo:, o resultado de todas essas mensagens é uma enorme base de dados centralizada que mostra todos os locais GPS onde foram detectados qualquer dispositivo da Apple.
Note que o volume de tais dados por si só oferece muitas informações. Sim, os identificadores de dispositivos podem ser pseudônimos — mas isso não torna as informações inúteis. Por exemplo, se algum dispositivo da Apple retransmitir as mesmas coordenadas à noite, isso revela um endereço provável de residência de uma pessoa.
Uma maneira óbvia de evitar a divulgação desses dados pela Apple é criptografá-los, de forma que a informação só possa ser vista por aqueles que realmente é necessário precisam saber a localização do dispositivo. Se : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: receber uma mensagem de de Timmy, então a única pessoa que realmente precisa saber a localização : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo:, é , que quer encontrá-lo. Nosso personagem principal é. Para manter essa informação em segredo, : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: deve criptografar suas coordenadas com a chave pública , que quer encontrá-lo. Nosso personagem principal é.
Claro, surge a pergunta: como : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: obterá a chave , que quer encontrá-lo. Nosso personagem principal é? Очевидное решение для de Timmy — gritar a chave pública , que quer encontrá-lo. Nosso personagem principal é em cada uma de suas transmissões. Mas isso criaria um identificador estático, que por sua vez permitiria rastrear de Timmy.
Para resolver esse problema, é necessário que , que quer encontrá-lo. Nosso personagem principal é era tenha muitas chaves públicas não vinculadas, para que de Timmy possa emitir diferentes chaves a cada transmissão. Uma das opções é fazer com que , que quer encontrá-lo. Nosso personagem principal é e de Timmy gere muitos pares de chaves públicas diferentes (ou gere muitos desses pares de uma semente comum). Mas isso é irritante e , que quer encontrá-lo. Nosso personagem principal é vai exigir o armazenamento de muitas chaves secretas. E os identificadores mencionados na seção anterior podem ser obtidos por meio da hash de cada chave pública.
Uma abordagem um pouco melhor (que a Apple pode usar ou não) envolve a randomização das chaves. Essa é uma característica de alguns sistemas criptográficos, como : ela , de modo que ela não esteja de forma alguma vinculada à original. A melhor parte dessa função é que , que quer encontrá-lo. Nosso personagem principal é pode usar uma chave secreta, independentemente de qual versão randomizada de sua chave pública foi utilizada para criptografar.

Tudo isso leva à ideia final do protocolo. Em cada transmissão de Timmy transmite um novo pseudônimo e uma cópia randomizada da chave pública , que quer encontrá-lo. Nosso personagem principal é. Quando : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: recebe a transmissão, criptografa suas coordenadas GPS com a chave pública e envia a mensagem criptografada para a Apple. , que quer encontrá-lo. Nosso personagem principal é pode enviar os pseudônimos de Timmy para os servidores da Apple, e se a Apple encontrar uma correspondência, poderá obter e descriptografar as coordenadas GPS.
Isso resolve todos os problemas?
A parte desagradável é que não há solução perfeita para muitas situações estranhas de fronteira. Por exemplo, e se de Timmy alguém tiver intenções malignas e quiser forçar : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo: a revelar sua localização para a Apple? E se o Velho Smithers tentar sequestrar : um iPhone de um desconhecido aleatório (e que não sabe disso), que (supostamente) tem pelo menos uma conexão à internet em períodos e GPS confiável. E Lassie é uma boa garota. Os dispositivos de rede interagem através dos servidores do iCloud da Apple, como mostrado abaixo:?
Em algum momento, a resposta para essa pergunta se resume ao que fizemos de melhor: quaisquer problemas remanescentes devem ser considerados fora do modelo de ameaça. Às vezes, até Lassie sabe quando parar.
Fonte: habr.com
