Apple Private Cloud Compute: a nova fronteira da privacidade em IA na nuvem
(security.apple.com)- A Apple introduziu o Private Cloud Compute (PCC) para encaminhar a grandes modelos fundacionais as solicitações que o Apple Intelligence tem dificuldade de processar no dispositivo, defendendo uma arquitetura que minimiza o acesso a dados pessoais também na nuvem
- O PCC combina servidores personalizados com Apple silicon, Secure Enclave, Secure Boot, Code Signing e sandboxing para levar ao datacenter um modelo de segurança no nível do dispositivo
- As solicitações do usuário são criptografadas diretamente com a chave pública de nós PCC verificados, e balanceadores de carga ou gateways de privacidade não possuem as chaves para descriptografá-las
- Para facilitar a operação, o sistema foi projetado para excluir shell remoto, depuração interativa e logging genérico normalmente usados, permitindo que apenas logs auditados e métricas limitadas saiam dos nós
- A Apple afirma que pretende criar uma IA em nuvem verificável externamente por meio de imagens de software de produção, logs de transparência, ambiente de pesquisa e do Apple Security Bounty
O problema de privacidade quando o Apple Intelligence vai para a nuvem
- O Apple Intelligence é um sistema que oferece recursos de inteligência pessoal baseados em modelos generativos no iPhone, iPad e Mac
- Recursos avançados que precisam raciocinar sobre dados mais complexos exigem modelos fundacionais maiores, e para isso a Apple criou o Private Cloud Compute (PCC)
- O PCC é um sistema de inteligência em nuvem projetado para processamento de IA pessoal, com o objetivo de evitar que dados pessoais do usuário sejam expostos a qualquer pessoa, incluindo a própria Apple
- O processamento no dispositivo favorece a segurança e a privacidade dos dados do usuário
- Dados que existem apenas no dispositivo do usuário não ficam em um ponto central de ataque
- Para os dados mais sensíveis na nuvem, criptografia de ponta a ponta é uma defesa poderosa
- Em serviços de nuvem onde a criptografia de ponta a ponta não é adequada, pode-se usar processamento temporário ou identificadores aleatórios não relacionados, para obscurecer a identidade do usuário
Limites dos modelos tradicionais de segurança para IA na nuvem
- A IA na nuvem pode aproveitar hardware poderoso de datacenter e grandes modelos de machine learning, mas precisa de acesso não criptografado às solicitações e aos dados pessoais relacionados
- Por isso, ela não pode ser tratada apenas com criptografia de ponta a ponta completa, e os serviços tradicionais de IA na nuvem vêm dependendo de abordagens convencionais de segurança em nuvem
- A abordagem tradicional tem três fraquezas
- É difícil verificar garantias de segurança e privacidade
- Mesmo que um serviço diga que não registra dados de usuários específicos, é difícil para pesquisadores confirmarem isso
- Uma nova versão pode deixar dados sensíveis em logs por engano, ou um balanceador de carga que encerra TLS pode registrar em massa solicitações de usuários durante a resolução de problemas
- É difícil fornecer transparência em tempo de execução
- Serviços de IA na nuvem normalmente não divulgam a pilha de software realmente em execução
- Mesmo usando apenas software open source, não existe um método amplamente distribuído para que dispositivos ou navegadores verifiquem se o software do serviço não foi modificado
- É difícil impor restrições fortes a acessos privilegiados
- SREs e administradores podem usar acessos de alto privilégio, como SSH, durante falhas ou incidentes graves
- Um administrador pode copiar dados sensíveis ao fazer backup de dados de um servidor ativo, ou um criminoso pode roubar credenciais administrativas e obter dados de usuários
- É difícil verificar garantias de segurança e privacidade
Os cinco requisitos de projeto do PCC
-
Computação sem estado sobre dados pessoais do usuário
- O PCC deve usar os dados pessoais recebidos apenas para processar a solicitação do usuário
- Os dados não devem ser fornecidos a ninguém além do usuário, incluindo funcionários da Apple
- Após o retorno da resposta, não devem ser retidos em nenhuma forma, inclusive para logs ou depuração
-
Garantias tecnicamente imponíveis
- As garantias de segurança e privacidade são mais fortes quando é possível limitar e analisar os componentes críticos do sistema inteiro
- As garantias centrais do PCC não devem depender de componentes externos, como balanceadores de carga que encerram TLS
- Requisitos operacionais, como coleta de métricas de servidor e logs de erro, também devem ser suportados de um modo que não enfraqueça a proteção de privacidade
-
Sem acesso privilegiado em runtime
- O PCC não deve ter interfaces privilegiadas que permitam a SREs da Apple contornar as garantias de privacidade, mesmo durante resposta a incidentes
- Também não deve suportar carregar software adicional em runtime para ampliar o alcance do acesso privilegiado
-
Não direcionamento
- Para mirar os dados pessoais de um usuário específico do PCC, um invasor teria de tentar um comprometimento amplo de todo o sistema PCC
- Mesmo um invasor que faça um ataque físico a nós PCC na cadeia de suprimentos ou consiga acesso ao datacenter não deve conseguir direcionar solicitações de um usuário específico para um nó comprometido
-
Transparência verificável
- Pesquisadores de segurança devem conseguir verificar, com alto grau de confiança, se as garantias de segurança e privacidade do PCC correspondem aos compromissos públicos da Apple
- Também deve ser possível confirmar se o software inspecionado pelos pesquisadores é o mesmo software em execução no ambiente de produção do PCC
Nós PCC e a base de segurança
- A raiz de confiança do PCC são os nós de computação PCC, hardware de servidor personalizado
- Os nós PCC levam ao datacenter tecnologias de segurança de hardware usadas no iPhone
- O sistema operacional é um subconjunto reforçado, baseado em iOS e macOS, ajustado para cargas de inferência de LLM
- Projetado para manter uma superfície de ataque reduzida
- Usa tecnologias de segurança do iOS, como Code Signing e sandboxing
- A Apple removeu dos nós PCC componentes normalmente importantes para a administração de datacenters
- Shell remoto
- Ferramentas genéricas de observação interna do sistema e observabilidade
- Em vez disso, usa componentes específicos que fornecem de forma determinística apenas métricas operacionais pequenas e limitadas para a equipe de SRE
- Foi criada uma nova stack de machine learning com Swift on Server para hospedar modelos fundacionais baseados em nuvem
Processamento das solicitações do usuário e prevenção de retenção de dados
- Como o PCC precisa usar os dados das solicitações do usuário para inferência de modelo, ele não pode ser projetado apenas com criptografia de ponta a ponta completa
- Em vez disso, o PCC faz com que os nós de computação imponham tecnicamente a privacidade dos dados do usuário durante o processamento e impede que os dados possam ser retidos depois que o ciclo de trabalho termina
- O PCC oferece três garantias para o processamento de dados do usuário
- O dispositivo do usuário envia dados ao PCC apenas para o único propósito de processar a solicitação de inferência
- Os dados do usuário permanecem apenas no nó PCC que processa a solicitação, e só até o envio da resposta
- Os dados do usuário não são disponibilizados nem mesmo a funcionários da Apple com acesso administrativo ao serviço ou ao hardware de produção
- Quando o Apple Intelligence usa o PCC, o dispositivo monta uma solicitação com o prompt, o modelo desejado e os parâmetros de inferência
- O cliente PCC no dispositivo primeiro criptografa a solicitação diretamente com a chave pública de um nó PCC verificado e autenticado criptograficamente
- Há criptografia de ponta a ponta do dispositivo do usuário até o nó PCC verificado
- Serviços auxiliares do datacenter, como balanceadores de carga e gateways de privacidade, ficam fora da fronteira de confiança e não têm as chaves para descriptografar a solicitação
- Os nós PCC só podem executar código aprovado e medido criptograficamente por Secure Boot e Code Signing
- Todo código executável deve ser assinado pela Apple e incluído em um trust cache autorizado para aquele nó PCC específico
- O trust cache é carregado pelo Secure Enclave e não pode ser alterado nem ampliado em runtime
- Como não é possível criar mapeamentos JIT, evita-se compilação ou injeção de código em runtime
- Código e assets de modelo usam a mesma proteção de integridade aplicada no Signed System Volume
- O Secure Enclave impõe que as chaves de descriptografia das solicitações não possam ser copiadas nem extraídas
- Para impedir retenção de dados, o Secure Enclave randomiza a chave de criptografia do volume de dados a cada reinicialização e não a armazena permanentemente
- Sempre que o Secure Enclave Processor de um nó PCC reinicia, o volume de dados é apagado criptograficamente
- O processo de inferência exclui os dados relacionados quando a solicitação é concluída
- Os espaços de endereço que processaram dados de usuário são reciclados periodicamente para reduzir o impacto de dados remanescentes inesperadamente na memória
- Pointer Authentication Codes e sandboxing dificultam exploits destinados a contornar essas garantias e limitam movimentação lateral dentro de um nó PCC
- As camadas de controle e despacho de inferência são escritas em Swift para garantir segurança de memória, separando o processamento inicial da solicitação em um espaço de endereço distinto
Eliminação de acesso privilegiado em runtime
- Os nós PCC não incluem shell remoto nem mecanismos de depuração interativa
- O Code Signing bloqueia o carregamento de código adicional, mas a Apple vê esse tipo de acesso aberto em si como uma grande superfície de ataque para contornar a segurança e a privacidade do sistema
- Não é possível ativar o Developer Mode em nós PCC, e eles também não incluem as ferramentas necessárias para fluxos de depuração
- Ferramentas de observabilidade e administração incluem proteções de privacidade para evitar exposição de dados do usuário
- Não existe mecanismo genérico de logging
- Apenas logs e métricas pré-especificados, estruturados e auditados podem sair do nó
- Várias camadas independentes de revisão são usadas para evitar exposição acidental de dados do usuário por esses mecanismos
- Esse projeto fornece garantias imponíveis de que apenas o código designado pode acessar dados do usuário e de que dados do usuário não vazem dos nós PCC durante a administração do sistema
Não direcionamento e resposta a ataques de hardware
- O modelo de ameaça do PCC inclui invasores sofisticados capazes de obter acesso físico a nós de computação e contornar parte das propriedades de segurança do hardware para extrair dados em processamento
- A Apple se defende de duas formas
- Aplica uma cadeia de suprimentos reforçada ao hardware PCC para tornar ataques de hardware em larga escala muito caros e detectáveis
- Impede que ataques menores sejam usados para mirar dados de usuários específicos
- A segurança de hardware do PCC começa na fase de fabricação
- Os componentes dos nós PCC são inventariados e passam por imageamento de alta resolução antes de os servidores serem lacrados e os interruptores antiviolação serem ativados
- Após a chegada ao datacenter, é feita uma ampla revalidação antes do provisionamento do PCC
- Várias equipes da Apple fazem verificação cruzada com dados de fontes independentes, e observadores terceirizados sem vínculo com a Apple monitoram adicionalmente os procedimentos
- Cada nó PCC recebe um certificado de chave enraizado no UID do Secure Enclave
- Dispositivos do usuário não enviam dados para nós PCC cujos certificados não possam ser verificados
- Para bloquear ataques menores e mais sofisticados, o PCC usa uma abordagem de difusão de alvo (target diffusion)
- Os metadados da solicitação não incluem informações de identificação pessoal sobre o dispositivo de origem ou o usuário
- Eles contêm apenas dados limitados de contexto da solicitação necessários para roteá-la ao modelo adequado
- Apenas esses metadados são fornecidos a balanceadores de carga e outros componentes do datacenter fora da fronteira de confiança do PCC
- Os metadados incluem credenciais de uso único baseadas em RSA Blind Signatures, autorizando solicitações válidas sem vinculá-las a um usuário específico
- As solicitações ao PCC passam por um relay OHTTP operado por terceiros
- Isso oculta o endereço IP de origem do dispositivo antes que a solicitação chegue à infraestrutura PCC
- Impede que um invasor identifique solicitações por endereço IP ou as associe a um indivíduo
- Para direcionar tráfego com base em IP de origem, seria necessário comprometer tanto o relay terceirizado quanto os balanceadores de carga da Apple
- Os dispositivos do usuário criptografam solicitações apenas para um subconjunto dos nós PCC, não para todo o serviço PCC
- O balanceador de carga retorna um subconjunto de nós com maior probabilidade de estar pronto para processar a solicitação
- Como o balanceador não tem informações de identificação do usuário nem do dispositivo, ele não pode enviesar o conjunto para um usuário específico
- Mesmo que um único nó seja comprometido, ele só pode descriptografar uma pequena fração das solicitações recebidas
- O conjunto de nós PCC selecionado pelo balanceador pode ser auditado estatisticamente
Transparência verificável e acesso para pesquisadores
- A Apple entende que, para haver confiança pública no PCC, pesquisadores de segurança devem poder verificar as garantias de segurança e privacidade de ponta a ponta
- No lançamento do PCC, a empresa planeja publicar as imagens de software de todas as builds de produção para fins de pesquisa em segurança
- Os dispositivos do usuário são projetados para enviar dados apenas a nós PCC que possam provar criptograficamente que executam software listado publicamente
- O plano de transparência verificável da Apple inclui
- Publicar, em um log de transparência criptograficamente inviolável e append-only, as medições de todo o código executado no PCC
- Tornar públicos o log e as imagens binárias de software associadas para que especialistas em privacidade e segurança possam inspecionar e verificar
- Publicar e manter um conjunto oficial de ferramentas para análise do software dos nós PCC
- Recompensar descobertas de pesquisa importantes por meio do Apple Security Bounty
- Todas as imagens de software PCC de produção serão publicadas para inspeção binária independente
- Incluem o sistema operacional, os aplicativos e executáveis relacionados
- Pesquisadores poderão verificá-las comparando com as medições do log de transparência
- O software será publicado em até 90 dias após a inclusão no log, ou após o fornecimento da atualização de software relacionada, o que ocorrer primeiro
- Depois que uma release for assinada e entrar no log, ela não poderá ser removida sem detecção
- Os dispositivos do usuário só encapsulam a chave de payload da solicitação com a chave pública de um nó quando a medição atestada desse nó PCC corresponde a uma release de software presente no log público de transparência
- O Code Signing impede o carregamento de software não autorizado e garante que todo o código do nó PCC esteja incluído na atestação
Ambiente de pesquisa do PCC e recompensas
- A Apple planeja três medidas adicionais para ajudar pesquisadores a verificar rapidamente as promessas de privacidade do PCC e encontrar problemas
- Publicar o PCC Virtual Research Environment
- Um conjunto de ferramentas e imagens para simular um nó PCC em um Mac com Apple silicon
- Será possível inicializar uma versão do software PCC com modificações mínimas, feitas apenas para viabilizar a virtualização
- Além das imagens binárias de todas as builds PCC de produção, publicar periodicamente parte do código-fonte do PCC que seja crítico para a segurança
- Pela primeira vez em uma plataforma Apple, incluir em texto legível no image PCC o firmware do sepOS e o bootloader iBoot
- Publicar o PCC Virtual Research Environment
- O Apple Security Bounty recompensará pesquisas sobre toda a stack de software do PCC
- Problemas que enfraqueçam as promessas de privacidade do PCC receberão recompensas especialmente altas
O que ainda será divulgado
- O PCC foi projetado para atender aos requisitos de computação sem estado, garantias imponíveis, ausência de acesso privilegiado, não direcionamento e transparência verificável
- Após a disponibilização do PCC em beta, serão divulgadas explicações técnicas mais profundas
- No futuro, a Apple planeja compartilhar mais detalhes técnicos sobre a implementação e o funcionamento de cada requisito central
- A Apple também pretende divulgar em breve aos pesquisadores de segurança o software do PCC e o PCC Virtual Research Environment pela primeira vez
1 comentários
Opiniões do Hacker News
Tudo que se conecta à nuvem ou à internet, a menos que seja open source e os servidores sejam descentralizados, acaba exigindo que você confie em alguém
A Apple pode fazer o máximo para que ninguém além dela tenha acesso aos dados, mas a Apple controla todos os endpoints, as atualizações do iPhone e os servidores
Isso me lembra o texto “criptografia baseada na web é sempre uma fraude”: https://www.devever.net/~hl/webcrypto
Mesmo dados armazenados localmente estão ao alcance da Apple se ela quiser, e ela poderia fazer isso diante de uma ordem governamental. Então vejo o termo “privado” mais como só a Apple pode saber, e não como algo que reduz o número de partes envolvidas
É melhor no sentido de que as alternativas podem deixar os dados vazarem para mais lugares, mas está longe de ser a criptografia inquebrável que o marketing sugere
O Google claramente rastreia usuários para anúncios, recomendações, IA etc.; não esconde isso, e esse é o núcleo do seu modelo de negócio
Já a Apple fez esforços bastante sérios para impedir que funcionários acessem dados de usuários nesse sistema de IA, restringindo fortemente logging e observabilidade e até projetando seus próprios chips e sistemas operacionais
Impedir que o cliente se comunique com sistemas não auditados também é uma grande diferença
Não dá para simplesmente acreditar na palavra da Apple, mas vejo a auditoria por terceiros como o ponto central para confiar e verificar a privacidade desse sistema
Dizer que “a Apple sabe o que você faz” dá a entender que alguém dentro da Apple poderia acessar os dados que foram do aparelho para a nuvem privada, mas isso parece não ser verdade
O fato de a privacidade ser um pilar importante do modelo de negócio da Apple também é um elemento de confiança. A Apple tem tido sucesso financeiro criando produtos que ganham dinheiro de outras formas, e partir para vender dados não é necessário nem uma boa ideia de negócio
É válido manter ceticismo até a verificação por terceiros, mas é injusto dizer que a abordagem da Apple não é melhor para dados e privacidade do que a da OpenAI ou do Google
Se as pessoas não puderem rodar seus próprios servidores, não há como saber se o código do repositório público é o mesmo que está rodando nos servidores em nuvem reais; portanto, só ser open source não basta
Claro que o trabalho de verificação é necessário, mas ainda assim é um grande avanço
Do meu ponto de vista, as alternativas são dispersas e pouco focadas, então eu confiaria na Apple
Há um bom comentário do criptógrafo Matt Green aqui: https://x.com/matthew_d_green/status/1800291897245835616?t=C...
Não sei se Matt sabe que não dá para ler tweets sem uma conta no X. Seria bom se ele usasse BlueSky ou Mastodon
Thread consolidada: https://threadreaderapp.com/thread/1800291897245835616.html?...
“O post do blog provavelmente tem mais uns seis detalhes técnicos. É um projeto muito cuidadoso. Se você desse muito dinheiro a uma ótima equipe e pedisse para construir a melhor nuvem ‘privada’ do mundo, provavelmente ela teria essa aparência”
“Claro, é preciso lembrar que superespiões não são o maior adversário. Para muita gente, o maior adversário é a empresa que vendeu o aparelho e o software. Esse sistema PCC representa uma promessa real da Apple de ‘não olhar’ para os dados dos usuários. Isso é importante”
Eu preferiria que os dados permanecessem no aparelho, mas pelo menos isso é uma grande promessa na direção certa — ou talvez seja a direção errada, mas feita muito melhor do que pelos concorrentes
Presumo que haverá uma opção para desligar todos os recursos de IA, tanto on-device quanto off-device
Haveria algum motivo para o fabricante do aparelho não oferecer uma opção somente IA on-device? Os recursos de IA do iOS 17 já podem ser usados sem iCloud
Seria bom se a Apple usasse um domínio exclusivo, como
*.pcc.apple.com, para permitir filtragem em nível de redeMesmo lendo tudo, no fim a conclusão é “confiem em nós”. A Apple pode, a qualquer momento, assinar e aprovar uma atualização com backdoor, e o governo pode obrigar a Apple a fazer isso com uma única assinatura, tudo em silêncio
Entendo que há méritos no que a Apple está fazendo. Mas, se ela está vendendo confiança, precisa ser 100% verdadeira; se não deixar claro de forma transparente que esse tipo de acesso aos dados ainda é possível, toda a mensagem fica contaminada
Se você não confia nas pessoas que fazem o sistema operacional, tem um problema muito mais profundo do que se preocupar com processamento de IA fora do dispositivo
A Apple pode, com um botão, fazer o iPhone enviar para o servidor os dados que ela quiser. Por essa lógica, não se deve confiar em nada, nem mesmo em IA executada localmente. Provavelmente é verdade, mas não é prático
A parte final da thread de Matthew Green resume bem: “Há momentos em que a perfeição atrapalha algo muito bom. Na prática, a alternativa ao processamento no dispositivo é enviar dados sensíveis para a OpenAI ou para algum lugar ainda mais suspeito. Para muitas pessoas, o maior adversário é a empresa que vendeu o dispositivo e o software. O PCC é um compromisso real da Apple de ‘não olhar’ os dados, e isso é importante. Agora estamos caminhando para um mundo em que uma parte do telefone vive em um data center a 2.000 milhas de distância, então o pessoal de segurança também precisa se acostumar com isso e tornar cada parte o mais segura possível”
Muito interessante. O Private Cloud Compute da Apple parece ser conceitualmente a mesma coisa que o projeto open source System Transparency, que comecei com colegas há 6 anos
Estou ansioso por mais detalhes técnicos. Se alguém da Apple estiver vendo isto, pode entrar em contato pelo e-mail stromberg@mullvad.net. Podemos discutir nosso design e o design da Apple ou dar feedback
Links relacionados: https://mullvad.net/en/blog/system-transparency-future
http://system-transparency.org
http://sigsum.org
O que a Apple está fazendo é computação confidencial. Procurando implementações, dá para entender mais detalhes técnicos
A Apple não é membro do Confidential Computing Consortium, mas a ARM é
Também estou bastante otimista em relação à computação confiável, e parece que ela está ganhando força
Seria bom se fosse mais aberta, de modo que fosse possível controlar toda a stack e instalar o próprio certificado raiz ou chaves na plataforma de hardware, mas ainda assim pode trazer muitos benefícios
Espero que, se a Apple levar isso ao mainstream, a adoção aumente
A parte “pela primeira vez em uma plataforma Apple, as imagens do PCC incluem o firmware sepOS e o bootloader iBoot em texto claro, permitindo que pesquisadores estudem esses componentes essenciais com mais facilidade do que nunca” é muito boa
Porém, o trecho “o software é publicado em até 90 dias após ser incluído no log ou após a disponibilização da atualização de software correspondente, o que ocorrer primeiro” deixa, em tese, uma lacuna de até 90 dias entre a publicação de software vulnerável e a possibilidade de descobri-lo
Espero que o fornecimento das imagens reais seja muito mais próximo do imediato do que do limite máximo
Nos EUA, privacidade completa é impossível. Isso porque o governo não só pode obrigar a Apple a abrir o sistema, como também pode proibi-la de falar sobre isso
Praticamente não há como a Apple contornar essa “restrição”. Quando tiver oportunidade, agradeça ao seu “representante” que votou a favor da prorrogação do PATRIOT Act
Para coletar dados das requisições recebidas, o governo provavelmente precisaria de algo como uma interceptação em tempo real solicitada, o que pode ser uma situação diferente
Claro, sou apenas uma pessoa na internet, e só estou tentando imaginar uma resposta a essa preocupação; nem sei se estou indo na direção certa
O governo pode solicitar dados. Mas o sistema da Apple acabaria revelando essa intrusão ao público, mesmo que a própria Apple não pudesse falar sobre ela
Nem uma carta de segurança nacional pode solicitar dados que já não existem
Há uma grande pergunta: para quem é isso?
Para não ser mal interpretado: é um esforço excelente e um trabalho nerd nota A+. É algo que fala a minha língua
Mas acho que eu simplesmente procuraria uma forma de desligar o recurso de telefonar para casa. Porque, para começo de conversa, não quero esse comportamento
Isso é para me fazer dizer a outras pessoas que “a Apple é a opção mais segura”? Não quero recomendar Linux, porque não quero ter de dar suporte técnico
Sinto que agora virei aquele velho gritando “tirem as mãos dos meus dados”
As manchetes sobre os esforços de IA da Microsoft foram, em geral, quase um pesadelo, com muita cobertura negativa
Se a cobertura sobre a IA da Apple ficar recheada de matérias dizendo que ela se preocupou até demais com segurança e privacidade, é bem possível que as pessoas se sintam um pouco mais tranquilas para usar
Não uso muito os produtos da OpenAI, mas, se fosse usar, preferiria passar pela camada de anonimização da Apple a ir diretamente à OpenAI
A Apple precisa mostrar que também pode ser uma empresa centrada em IA. Só que a Apple tem uma cultura organizacional voltada a preservar a privacidade
Não me importo que o governo acesse os dados. Só não quero que agentes maliciosos como golpistas, governos estrangeiros, empresas de tecnologia de anúncios e seguradoras tenham acesso aos meus dados pessoais
Ao mesmo tempo, também quero usar os recursos dos LLMs. Isso é uma exigência tão irrealista assim?
Realisticamente, parto do pressuposto de que o governo dos EUA já tem todos os meus dados. Não gosto do estado atual das coisas, mas a realidade é a realidade
Na prática, ela já tinha LLMs e infraestrutura de nuvem na escala do iPhone preparados, e isso não é simplesmente um trabalho de 2 anos
A Apple está enfatizando privacidade, como se espera dela
O Gemini também poderia alegar privacidade, mas, se fosse verdade, acho que as pessoas pensariam que o desempenho seria pior
Fico curioso sobre como isso se compara ao AWS Nitro Enclaves, que a Apple mencionou brevemente
A principal diferença parece estar na verificabilidade até o nível do firmware
O Nitro Enclaves não fornece medições do firmware[0] nem do hypervisor, e afirma que o código do hypervisor pode ser atualizado de forma transparente a qualquer momento[1]
A Apple pretende disponibilizar o sepOS, o sistema operacional do Secure Enclave Processor, e as imagens do bootloader
O post do blog não é claro, mas dá a entender que também fornecerão o código-fonte desses componentes
[0]: https://docs.aws.amazon.com/enclaves/latest/user/set-up-atte...
[1]: https://docs.aws.amazon.com/pdfs/whitepapers/latest/security...
Isso dispara automaticamente um chamado, e a equipe de segurança provavelmente também se envolve
No EC2, o hypervisor não é firmware, então não há motivo para medir “firmware do hypervisor”
O firmware BIOS/UEFI da placa-mãe é sobrescrito se for adulterado
O código do hypervisor, como todo código, é sempre assinado, e é transmitido para o servidor pelo cartão Nitro por meio de um sistema de segurança verificável que usa measured boot ou secure boot
Não sei exatamente o que o termo voltado ao cliente “Nitro enclaves” significa, mas os engenheiros do EC2 se mobilizam como um exército em chamados quando avaliam que há até mesmo um risco de segurança menor
Esses fundamentos estão cobertos, e o nível chega a garantir que dados reais de clientes não entrem em core dumps nem mesmo de forma criptografada
Quero muito ver esse sistema operacional, e estou cautelosamente otimista com a possibilidade de ele se tornar o primeiro caso em que uma grande empresa de tecnologia de fato oferece garantias de segurança auditáveis.
Dependendo de como as coisas evoluírem, a Apple talvez consiga conquistar de fato parte da confiança que os usuários já depositam nela, e isso seria bem legal.
Mais legal ainda seria oferecer uma auditoria de toda a cadeia de gestão, e para isso provavelmente seria necessário abrir também algumas outras partes da stack.
Em especial, se o sistema operacional de nuvem se tornar open source como prometido, isso terá um valor enorme.
A principal preocupação no momento é que, se a virtualização for usada na implantação real, o Secure Enclave da parte ainda proprietária do sistema operacional que roda no dispositivo do usuário entregaria as chaves, e poderia haver um backdoor pelo qual um hipervisor que não auditamos acessa os contêineres.
Pessoas com mais expertise em segurança farão perguntas melhores.
Se a Apple responder ao feedback dos pesquisadores, mais partes dessa cadeia de ferramentas poderão se tornar auditáveis.
Mesmo que não seja possível verificar a segurança dos casos de uso aprovados pela Apple, esse sistema operacional de nuvem pode ser um grande avanço em raciocínio de segurança e em nuvem segura, e as pessoas também poderiam hospedá-lo de forma independente ou criar derivados.
O pior caso seria a Apple na prática não fazer isso, mas ao menos parece bastante provável que ela cumpra essa promessa. Nesse caso, mesmo o pior cenário seria “surgiu uma base de código open source muito útil para computação segura em larga escala”, o que é algo positivo independentemente do que aconteça com o restante.
[0] https://docs.aws.amazon.com/enclaves/latest/user/nitro-encla...
O Asahi Linux tem um bom resumo da segurança da cadeia de boot on-device: https://github.com/AsahiLinux/docs/wiki/Apple-Platform-Secur...
A frase “Vamos disponibilizar o PCC Virtual Research Environment. É um conjunto de ferramentas e imagens que permite simular nós PCC em Macs com Apple silicon e inicializar uma versão minimamente modificada do software PCC para que a virtualização funcione” parece indicar que os nós PCC são bare metal.
Será que também será possível simular nós PCC no iPad Pro com M4 Apple Silicon?
A parte “Por fim, usamos Swift on Server para criar uma nova stack de machine learning para hospedar modelos de base baseados em nuvem” é interessante.
Chama atenção que Swift on Server apareça aqui: https://www.swift.org/documentation/server/