As colisões adversárias que quebraram o sistema CSAM da Apple (e por que importam além da Apple)

Este post é a continuação técnica de “64 bits decidem o que você pode subir na internet”. Se você não leu esse post, leia primeiro. Aqui assumimos que você entende o que é um hash perceptual e por que PhotoDNA, PDQ e NeuralHash são parentes próximos. No dia 5 de agosto de 2021, a Apple anunciou o NeuralHash. No dia 18 de agosto —treze dias depois—, um pesquisador sob o pseudônimo Asuhariet Ygvar publicou no GitHub a engenharia reversa completa do modelo extraído de binários do iOS. Poucos dias depois, dois pesquisadores independentes —Brad Dwyer e outros— publicaram colisões: duas imagens visualmente distintas com o mesmo hash. O sistema que a Apple prometia com uma taxa de falsos positivos de “um por trilhão de contas por ano” provou ser vulnerável usando hardware comum. ...

18 de abril de 2026 · Fernando

64 bits decidem o que você pode enviar para a internet: o algoritmo por trás do Chat Control

Em agosto de 2021, a Apple anunciou que iria escanear cada foto do seu iPhone antes de enviá-la para o iCloud. Em setembro do mesmo ano, após duas semanas de polêmica, retirou a proposta. Em dezembro de 2022, declarou oficialmente que o projeto estava morto. Em 2022, a Comissão Europeia propôs um regulamento que obriga WhatsApp, Signal e Telegram a fazer exatamente o que a Apple se recusou a implementar. Esse regulamento — conhecido como Chat Control — ainda está em pauta no Conselho Europeu. ...

18 de abril de 2026 · Fernando

A análise de sentimento da Apple acha que 'apaga o arquivo temporário' é uma ameaça de morte

NLTagger é a API da Apple para análise de sentimento. Está integrada no iOS e macOS, roda on-device, não precisa de servidor, e está a três linhas de código de distância. É a primeira coisa que você encontra quando busca “sentiment analysis Swift”. Isso é o que ela retorna para texto que qualquer desenvolvedor escreveria num dia normal: Mensagem NLTagger Realidade “delete the temp file” -0.8 Instrução neutra “ok” -0.8 Confirmação neutra “run make test” -0.6 Instrução neutra “commit and push” -0.4 Instrução neutra “great job, thanks!” +1.0 Positivo (correto) “this is fucking broken” -1.0 Negativo (correto) A escala vai de -1.0 (muito negativo) a +1.0 (muito positivo). Segundo a Apple, “delete the temp file” tem quase a mesma carga emocional que “this is fucking broken”. E “ok” – a resposta mais neutra da língua inglesa – pontua -0.8. ...

5 de abril de 2026 · Fernando

NLTagger e análise de sentimento: por que a Apple acha que seu código é deprimente

Imagine que você está construindo um app que analisa conversas de uma equipe de desenvolvimento. A ideia é detectar se o tom da equipe é saudável ou se há sinais de estresse. Você utiliza o NLTagger da Apple porque ele está disponível, é gratuito, funciona on-device e não precisa de servidor. Três linhas de código e tudo parece resolvido. Primeira surpresa: a frase “kill the process and restart the daemon” recebe uma pontuação de -0.6. Negativa. Quase hostil. “Fatal error in memory allocation” ganha um -0.8. E “crash report uploaded successfully” — que literalmente é uma boa notícia — gera um -0.4. ...

28 de março de 2026 · Fernando

Notarização no macOS: o segurança de balada que a Apple colocou no seu app

São duas da manhã. Seu app compila. Você assina. Empacota num DMG. Executa notarytool submit. A Apple diz “In Progress”. Você espera 5 minutos. 10. 20. Uma hora. Duas horas. A submission continua “In Progress”. Você vai dormir. Na manhã seguinte: Invalid. Sem mais explicação que “The signature of the binary is invalid”. Para ambas as arquiteturas. Obrigado, Apple. Muito útil. A notarização é um desses processos que funciona perfeitamente… até não funcionar. E quando falha, te deixa com um .dmg que o Gatekeeper não vai permitir abrir e um erro que não diz nada. Depois de brigar com isso por alguns dias com o Tokamak (meu app de menu bar para monitorar a cota do Claude), decidi documentar tudo que aprendi e escrever um linter para nunca mais passar por isso. ...

22 de fevereiro de 2026 · Fernando

A Apple instalou 84GB de águas-vivas no meu Mac. Duplicadas.

Kimi K2 vai ter que esperar Ontem queria baixar o último modelo da Moonshot, o Kimi K2 Instruct. Um modelo bem promissor que há dias queria testar. Vou fazer espaço, olho o disco, e me deparo com isso: Disco: 927GB Usado: 644GB Livre: 283GB Hmm. 283GB livres não está mal, mas que diabos está ocupando 644GB? Tenho o Mac bem limpo, não guardo filmes localmente, e uso a nuvem para quase tudo. ...

29 de janeiro de 2026 · Fernando