Análise Técnica · Prova Digital

O relatório da PF sobre o celular de Vorcaro, explicado sem tecniquês

Por que os tracinhos verdes não dizem o que parecem dizer, o que “mensagem apagada” realmente significa, e por que duas cópias do mesmo documento contam histórias diferentes

·28 min de leitura
Rafael Chiara, fundador da Cyberlex
Rafael Chiara
Fundador da Cyberlex

Nos últimos dias, todo mundo viu as mesmas figuras: bolhas verdes de WhatsApp, “Mensagem apagada pelo remetente” repetido, um ícone redondo com o número 1, dois tracinhos ao lado da hora. E muita gente concluiu, a partir delas, coisas que elas não dizem. Não por má-fé. É que ler um ícone exige saber qual programa o desenhou — e o que esse programa foi buscar no celular para desenhá-lo.

Este texto é a versão sem tecniquês de uma análise técnica publicada aqui. Lá estão os números de linha do código, os nomes dos campos do banco de dados, os códigos de cor. Aqui está o mesmo raciocínio, com desenhos. As notas de rodapé guardam o detalhe técnico para quem quiser conferir.

Uma coisa antes de começar: nada do que segue diz quem tem razão no caso. Diz o que o documento prova, o que ele não prova, e por que a resposta depende de qual arquivo você abriu.

Primeiro: que documento é esse

O que a Polícia Federal entregou ao Supremo em 27 de agosto, e que teve o sigilo levantado em 1º de setembro, é um relatório de análise de investigação, de 218 páginas, sobre o conteúdo do iPhone de Daniel Vorcaro, apreendido em 18 de novembro de 2025.1

Isso é diferente de um laudo pericial, e a diferença importa. O laudo é o documento em que um perito, com requisitos formais, descreve o exame que fez — no caso, a cópia integral do celular e o “hash”, uma espécie de impressão digital matemática que garante que a cópia é fiel.2 Esse laudo existe, mas é outro documento. O relatório que circulou foi assinado por agentes e delegados. Nenhum perito. As conclusões sobre “padrão de comportamento” e sobre o que combina com o quê são conclusões de investigador — legítimas, mas com o peso de uma interpretação, não de um exame.

O próprio relatório é honesto sobre os limites: foi feito em 72 horas, diz expressamente que não é exaustivo, e só olhou as menções nominais diretas. Isso é rigor, não fraqueza.

O caminho de uma mensagem até a figura que você viu

Para entender o que as figuras mostram, é preciso saber como elas foram produzidas. Não são prints de celular. São o resultado de uma cadeia de etapas — e em cada uma delas algo pode ficar pelo caminho.

Fluxograma: celular apreendido, extração, programas desenham as telas, relatório da PF, e duas cópias públicas diferentes Como uma mensagem do celular virou a figura que você viu Cinco etapas. Em cada uma, algo pode ficar pelo caminho — e a última tem duas versões. Celular apreendido 18/11/2025 iPhone 17 Pro Extração copia tudo do aparelho laudo próprio, à parte, com hash da cópia Programas desenham IPED faz as telas de conversa; Cellebrite Reader faz as tabelas de registro Relatório da PF 218 páginas entregue ao STF em 27/08/2026 Cópia A tarjada, imagens pequenas não dá para conferir Cópia B íntegra, alta resolução permite conferir Onde a leitura pode escorregar Na etapa 3: as telas não são prints do WhatsApp. São desenhos feitos por um programa, a partir do banco de dados. O que o programa não lê simplesmente não aparece — e as duas ferramentas aparecem misturadas, sem indicação. Na etapa 5: qual cópia se abriu decide o que é possível verificar. A extração (etapa 2) tem laudo próprio e hash — é a parte formalmente pericial. As etapas 3 e 4 são análise de investigação, assinada por agentes e delegados, não por peritos. A etapa 5 não foi feita pela PF: as duas cópias foram preparadas por quem republicou o arquivo.

A etapa que mais confunde é a terceira. O relatório usou duas ferramentas: o IPED, um programa de código aberto mantido pela própria Polícia Federal, e o Cellebrite Reader.3 As telas de conversa que aparecem no relatório — bolha verde, papel de parede de rabiscos — não foram tiradas do WhatsApp. Foram desenhadas pelo IPED a partir do banco de dados do aplicativo. As tabelas de registro, por sua vez, vêm do Cellebrite. As duas aparecem misturadas nas figuras, sem indicação de qual gerou o quê.

A consequência é simples e central: o desenho é fiel ao que o programa leu, e cego para o que ele não leu. Como o IPED é aberto, dá para baixar exatamente a versão que a PF usou e ler o que ele faz com cada campo. Foi isso que fizemos.

Uma advertência que vale para qualquer documento público

Existem pelo menos duas cópias do relatório circulando, e elas não permitem as mesmas conclusões.4

A primeira, publicada pelo Poder360, tem 5,5 MB. Foi tarjada antes da publicação — o veículo avisa na própria reportagem que removeu telefones, endereços e e-mails, o que é uma decisão editorial legítima — e as telas de conversa nela ficaram com cerca de 333 por 280 pixels. Nesse tamanho, um tracinho de confirmação mede seis pixels. Revista Fórum e Canal Meio distribuem o mesmo arquivo.

A segunda, publicada pelo Painel Político, tem 20,5 MB e veio por outro caminho: os metadados mostram que foi gerada a partir de um arquivo do Word, sem passar pelos programas de edição de imagem que a primeira atravessou. Não tem tarjas, e as telas de conversa têm 792 por 1046 pixels.

Comparação entre a cópia tarjada e de baixa resolução e a cópia íntegra e legível O mesmo relatório, duas cópias públicas muito diferentes Qual arquivo se abre determina o que é possível conferir. Nenhuma das duas foi produzida pela Polícia Federal. Cópia A — a que circulou primeiro 5,5 MB · Illustrator, depois iLovePDF · 1º/9, 19h36 envio registro 1 registro 2 registro 3 1º envio2º envio3º envio4º envio Tarjas cobrem as colunas de registro. Telas de conversa a 333 × 280 pixels: o tracinho tem 6 pixels. A correlação é afirmada, não exibida. Cópia B — a que permite conferir 20,5 MB · Word, depois Ghostscript · 1º/9, 20h21 AplicativoConteúdoData/hora WhatsAppparticipant identifier2025-11-17T20:22:40Z WhatsAppparticipant identifier2025-11-17T20:26:12Z NotesWan In / Wan Out2025-11-17T20:22:32Z InCallServiceincoming call2025-11-17T20:27:13Z WhatsAppparticipant identifier2025-11-17T20:27:30Z InCallServiceoutgoing call2025-11-17T20:27:35Z WhatsAppparticipant identifier2025-11-17T20:30:07Z Sem tarjas. Telas de conversa a 792 × 1046 pixels — as colunas de registro são legíveis linha a linha. Aqui a correlação pode ser verificada. A opacidade não era do documento. Era da cópia. Quem analisou só a cópia A concluiu que a peça central não podia ser conferida. Com a cópia B, pode.

Nenhuma das duas é o arquivo original assinado, que está no sistema do Supremo e exige certificado digital para acessar. Mas a diferença entre elas muda o que é possível verificar — e quem examinar apenas a menor chegará a conclusões que a maior desmente.

Fica a lição, que vale para qualquer cobertura de documento público: conclusões tiradas de uma única cópia são conclusões sobre aquela cópia.

O que a PF fez bem

Antes de apontar o que as figuras não dizem, o crédito — porque há crédito real.

O relatório afirma que houve uma sequência de ações no celular: escrever no aplicativo Notas, capturar a tela, e enviar pelo WhatsApp. Para sustentar isso, montou um quadro com sete marcos de tempo para cada mensagem.

Linha do tempo com sete marcos: abre o Notas, captura de tela e PDF criados no mesmo segundo, fecha o Notas e abre o WhatsApp no mesmo segundo, mensagem enviada, fecha o WhatsApp O método da PF: sete marcos de tempo, não quatro relógios batendo juntos Exemplo da p. 15 do relatório (30/10/2025, horários em UTC). Os eventos são encadeados — só dois pares são simultâneos. abre o Notas 16:43:16 captura de tela + PDF criado no mesmo segundo 16:44:43 simultâneos fecha o Notas + abre o WhatsApp no mesmo segundo 16:44:48 simultâneos mensagem enviada 16:44:56 fecha o WhatsApp 16:45:26 1 min 27 s escrevendo a nota 5 s 8 s 30 s Por que isso é método sólido — e por que a palavra “simultâneo” não serve Os eventos não acontecem todos ao mesmo tempo: formam uma cadeia de cerca de dois minutos. O que o relatório demonstra é que a cadeia se repete com o mesmo encaixe, e que dois pares são simultâneos por construção do sistema — o PDF nasce no instante da captura, e o Notas fecha no instante em que o WhatsApp abre. É a repetição do encaixe, não a coincidência de um relógio, que sustenta a correlação. O relatório apresenta cada horário em UTC e em UTC−3 lado a lado. O envio das 16:44:56 UTC corresponde a 13:44:56 em Brasília.

É comum resumir isso dizendo que os registros apontam “para o mesmo instante”. Não é o caso, e a diferença importa. A cadeia dura cerca de dois minutos. Só dois pares são realmente simultâneos: a captura de tela e a criação do PDF, no mesmo segundo, porque o iPhone gera o PDF no instante da captura; e o fechamento do Notas com a abertura do WhatsApp, no mesmo segundo, porque é a mesma ação de trocar de aplicativo.

E é justamente por ser uma cadeia, e não uma coincidência, que a demonstração funciona. Um alinhamento pode ser acaso. O mesmo encaixe repetido, com os mesmos pares simultâneos e os mesmos intervalos curtos, várias vezes, não é.5

A PF ainda tratou de frente uma armadilha clássica: os registros internos do iPhone usam o horário universal (UTC), enquanto o WhatsApp usa o horário de Brasília. O relatório mostra os dois lado a lado e avisa a diferença.

Um detalhe dessa cadeia foi muito questionado publicamente: a ideia de que capturar a tela dentro do Notas cria um arquivo PDF “escondido” no celular. Parece estranho, mas está correto. A Apple documenta isso: desde o iOS 13, quando você captura a tela de certos aplicativos (o Notas é um deles), o sistema pede ao aplicativo uma versão em PDF do conteúdo completo — é o que alimenta a opção “Página Inteira” que aparece ao editar o print. Esse PDF nasce no mesmo segundo da captura e fica numa área temporária, de onde pode ou não ser apagado depois.6

A única crítica aqui é de documentação, não de método: o relatório apresenta isso como dedução, quando bastava citar a página da Apple para transformar dedução em fato.

Achado 1: os tracinhos significam “chegou”, não “foi lida”

Todo mundo conhece os tracinhos do WhatsApp. No IPED, o desenho é parecido, mas a paleta é outra — e há quatro estados, não três.

Os quatro ícones do IPED: relógio para não enviada, um tracinho verde para enviada, dois tracinhos verdes para entregue, dois tracinhos azuis para lida Os tracinhos: quantos são, e de que cor O IPED usa quatro ícones. Contar os tracinhos separa “enviada” de “entregue”; a cor separa “entregue” de “lida”. relógio não enviada ainda no aparelho um tracinho verde enviada saiu, mas não chegou dois tracinhos verdes entregue ao aparelho é isto que aparece no relatório dois tracinhos azuis lida não ocorre nenhuma vez mesmo desenho, só muda a cor Como isso foi conferido Medimos a cor de cada tracinho nas 218 páginas da cópia em alta resolução. Todos os medidos ficam na família do verde-sálvia (média RGB 156, 166, 147 — a 13 unidades do verde do IPED e a 130 do azul). Nenhum pixel azul de confirmação em nenhuma página. Nenhuma mensagem do documento está registrada como lida. O que se sabe é que chegaram ao aparelho do destinatário. Se alguém as leu, o registro não diz — inclusive porque a confirmação de leitura pode estar desligada do outro lado.
Os quatro ícones do IPED: relógio para não enviada, um tracinho verde para enviada, dois tracinhos verdes para entregue, dois tracinhos azuis para lida Os tracinhos: quantos são, e de que cor O IPED usa quatro ícones. Contar os tracinhos separa “enviada” de “entregue”; a cor separa “entregue” de “lida”. relógio não enviada ainda no aparelho um tracinho verde enviada saiu, mas não chegou dois tracinhos verdes entregue ao aparelho é isto que aparece no relatório dois tracinhos azuis lida não ocorre nenhuma vez mesmo desenho, só muda a cor Como isso foi conferido Medimos a cor de cada tracinho nas 218 páginas da cópia em alta resolução. Todos os medidos ficam na família do verde-sálvia (média RGB 156, 166, 147 — a 13 unidades do verde do IPED e a 130 do azul). Nenhum pixel azul de confirmação em nenhuma página. Nenhuma mensagem do documento está registrada como lida. O que se sabe é que chegaram ao aparelho do destinatário. Se alguém as leu, o registro não diz — inclusive porque a confirmação de leitura pode estar desligada do outro lado.

“Enviada” e “entregue” têm a mesma cor, mas desenhos diferentes — um tracinho e dois tracinhos. Só “lida” muda de cor, para azul.7

Na prática, a leitura é simples: contar os tracinhos separa “enviada” de “entregue”; a cor separa “entregue” de “lida”. Dois tracinhos verdes significam, sem ambiguidade, entregue ao aparelho e não registrada como lida.

E aqui está o achado que a cópia de alta resolução permitiu. Em vez de deduzir a cor pelo código, medimos: varremos os tracinhos das 218 páginas e comparamos a cor de cada um com as duas referências do programa. Todos ficam na família do verde. Não existe um único tracinho azul em nenhuma página do documento.8

Se você tentou conferir isso a olho nu e não conseguiu distinguir cinza de verde, você estava certo em não conseguir. Mesmo ampliado, o tracinho parece cinza — a cor é muito pouco saturada. A diferença entre verde e cinza, neste caso, não se resolve olhando. Resolve-se medindo.

O que continua indeterminado é se alguém leu as mensagens. “Entregue” quer dizer que chegaram ao aparelho do destinatário. A confirmação de leitura pode estar desligada do outro lado, e nesse caso o registro nunca mudaria para “lida” mesmo que a pessoa lesse tudo. O que as figuras não mostram, em nenhuma hipótese, é que alguém viu. Mostram que chegou.

É como uma carta com aviso de recebimento: o aviso prova que a carta entrou na casa. Não prova que alguém abriu o envelope.

Achado 2: o ícone de “visualização única” nunca muda

Parte das mensagens era de visualização única — aquelas que somem depois de abertas. A repercussão pública tratou como certo que foram abertas.

O IPED não tem como dizer isso. O programa desenha um único ícone fixo para toda mensagem de visualização única, escrito uma vez só no código, sem variante para “aberta” ou “não aberta”. E, ao ler o banco de dados, ele classifica a mensagem apenas pelo tipo — não vai buscar nenhum campo que diga se o destinatário abriu.9

Fluxo mostrando que o IPED lê o tipo da mensagem mas não lê se foi aberta, e desenha o mesmo ícone nos dois casos 1 Visualização única: o ícone não conta se a mensagem foi aberta O programa que desenhou a tela não vai buscar essa informação. Então ela não aparece. No banco de dados do celular tipo da mensagem: “visualização única” foi aberta pelo destinatário? pode haver registro aqui — mas ninguém foi ler (a ferramenta não vai buscar esse campo — isso está no código dela, não é opinião) O IPED lê… ✓ o tipo da mensagem ✗ se foi aberta — não lê e desenha sempre o mesmo ícone, escrito uma única vez no código O que aparece na figura se foi aberta se não foi aberta idênticos Olhar a figura não responde a pergunta. O relatório da PF foi cuidadoso: diz que cinco mensagens de visualização única foram enviadas. Não diz que foram abertas. Quem afirmou que foram abertas foi a repercussão — não o documento.

Isso não é opinião: está no código. O ícone é idêntico para mensagem aberta e não aberta, então olhar a figura não responde a pergunta.

Vale ser preciso aqui, porque a frase fácil está errada. O IPED não extrai nada: quem extraiu os dados do celular foi o Cellebrite; o IPED apenas processa e organiza o que já foi extraído. O que se pode afirmar é que o IPED, ao montar essas telas, não vai buscar nenhum campo que registre abertura. Se um campo desses existe no WhatsApp desta versão, e se o Cellebrite o copiou, são perguntas que o relatório não responde — só a própria extração responderia. Em resumo: o dado pode existir no aparelho; pode ou não estar na cópia extraída; e não está no desenho.

Vale registrar que o relatório da PF foi preciso nesse ponto. Diz que houve envio de mensagens de visualização única e que os registros do aparelho mostram os envios correspondentes. Não diz que foram abertas. Quem extrapolou foi a narrativa pública.

Um detalhe que passou sem comentário, e está visível nas duas cópias. Duas dessas mensagens têm uma reação de emoji — um polegar para cima — abaixo da bolha. É tentador concluir que alguém do outro lado interagiu. Duas ressalvas honestas: pela figura não se sabe quem reagiu nem quando, porque o programa imprime só o emoji e joga o autor e o horário para uma caixinha que só existe na versão interativa e some na imagem colada no PDF; e reagir a uma mensagem não é o mesmo que abri-la.10

Achado 3: “mensagem apagada pelo remetente” — quantas, e quando

Na figura mais comentada, quatro mensagens do contato salvo no celular como “Alexandre de Moraes BRASILIA” — que o relatório identifica como o ministro do STF — aparecem em 1º de outubro com o texto “Mensagem apagada pelo remetente”. Os carimbos de hora são 22:17:06, 22:17:23, 22:17:32 e 22:18:21: os quatro dentro de 75 segundos. Na cópia tarjada, três desses quatro horários estão cobertos — quem contar por ali chega a um número errado. Logo acima, um aviso de 17 de setembro: a conversa passou a usar mensagens temporárias de 24 horas.

O relatório coloca as duas coisas em sequência sem distingui-las, e o leitor conclui que as mensagens sumiram por causa do temporizador. Não é isso que o dado diz. São dois mecanismos diferentes:

O que as figuras mostram é o segundo caso: quatro registros do tipo que o WhatsApp cria quando alguém apaga para todos — um tipo que o programa distingue, no banco de dados, dos registros de expiração por temporizador. Que esses quatro registros existem é fato, não hipótese. O que eles significam exige mais cuidado, e é onde este texto fica mais lento de propósito.

Há duas perguntas que a figura levanta e ninguém responde.

A primeira: esse horário na bolha é de quê?

Parece uma pergunta boba, e não é. O programa que desenha a tela pega sempre o mesmo campo de data do banco de dados e imprime — faz isso antes mesmo de descobrir que tipo de mensagem é aquela, de modo que um registro de apagamento recebe exatamente o mesmo tratamento de uma mensagem de texto comum. E ele não vai buscar nenhum campo separado que guarde a hora do apagamento.11

Ou seja: o que está impresso é o conteúdo daquele campo, seja lá o que o WhatsApp tenha gravado nele. Se o aplicativo preserva ali a hora do envio original quando transforma a mensagem em registro de apagamento, ou se sobrescreve com a hora do apagamento, é uma pergunta sobre o comportamento do WhatsApp — não sobre a ferramenta forense — e o relatório não responde.

Linha do tempo mostrando as duas leituras possíveis do carimbo: hora do envio, com apagamento em algum ponto dos 47 dias seguintes, ou hora do próprio apagamento “Mensagem apagada pelo remetente”: o carimbo é de quê? O programa imprime sempre o mesmo campo de data, sem distinguir se ele guarda a hora do envio ou a do apagamento. janela em que o apagamento pode ter ocorrido se o carimbo for do envio, o apagamento está em algum ponto daqui cerca de 47 dias 17 de setembro a conversa passa a ter mensagens temporárias (24 h) 1º de outubro quatro registros com o carimbo: 22:17:06 · 22:17:23 · 22:17:32 · 22:18:21 os quatro em 75 segundos 18 de novembro celular apreendido os registros ainda estavam lá Se o carimbo for a hora do envio o contato enviou quatro mensagens em 75 segundos, e o apagamento ocorreu em algum momento nos 47 dias seguintes. Se o carimbo for a hora do apagamento quatro mensagens foram apagadas em 75 segundos, e nada se sabe sobre quando haviam sido enviadas. O relatório não distingue as duas hipóteses, e o programa também não. Ele imprime sempre o mesmo campo de data do banco, seja qual for o tipo da mensagem, e não lê nenhum campo separado de hora de apagamento. Fica em aberto, ainda, por que quatro desses registros sobreviveram 47 dias a um temporizador de 24 horas — o documento não explica, e a explicação importa.

As duas leituras levam a histórias diferentes. Se os carimbos são horas de envio, o contato mandou quatro mensagens em 75 segundos e o apagamento aconteceu em algum ponto dos 47 dias seguintes — no máximo até a apreensão, porque o comando “apagar para todos” precisa alcançar o celular do outro lado enquanto ele ainda está conectado. Se os carimbos são horas de apagamento, quatro mensagens foram apagadas em 75 segundos e não se sabe nada sobre quando tinham sido enviadas.

Apagar dez segundos depois de enviar e apagar um mês depois são fatos com pesos completamente diferentes. O documento não permite escolher.

A segunda é uma inconsistência que fica de pé. Se o temporizador de 24 horas estava ligado desde 17 de setembro, como quatro marcas de apagamento sobreviveram cerca de 47 dias no banco de dados vivo? E estavam vivas, não recuperadas de lixeira — o IPED marca claramente, com um rótulo e um ícone, toda mensagem que veio de registro apagado, e nenhuma das quatro tem essa marca.12 Ou a marca de apagamento não herda o temporizador, ou o temporizador não incidiu sobre aquelas mensagens, ou há alguma outra explicação. O relatório não diz qual — e essa é uma pergunta que merece resposta antes de qualquer conclusão sobre o episódio.

A figura central: afirmada numa cópia, exibida na outra

Há uma figura no relatório, a de número 41, que é a peça central da demonstração: é onde os registros do sistema são alinhados a cada envio, com setas apontando para as linhas correspondentes.

Na cópia menor, as colunas de registro estão inteiramente cobertas por tarjas. As setas apontam para linhas invisíveis. A correlação é afirmada, não exibida — e isso é verdade sobre aquela cópia.

Na cópia maior, as mesmas colunas são legíveis linha a linha: aparecem o nome do aplicativo, o conteúdo do registro e o carimbo de data e hora, com as linhas destacadas em vermelho batendo com as setas. O documento exibe o que afirma. Foi a cópia que apagou, não o documento.

Placar

Nada do que está acima diz que as conclusões do relatório são erradas. Diz o que ele sustenta e o que ele não sustenta. A lista é curta e vale igualmente para os dois lados.

Sustenta

  • As mensagens foram enviadas.
  • Foram entregues ao aparelho do destinatário.
  • Existem quatro registros do tipo “apagada pelo remetente”, com carimbos em 75 segundos.
  • A cadeia Notas → captura → PDF → WhatsApp se repete com o mesmo encaixe e tem mecanismo documentado pela Apple.
  • A correlação da Figura 41 é verificável — na cópia em alta resolução.

Não sustenta

  • Que alguma mensagem foi lida.
  • Que as de visualização única foram abertas.
  • Se o carimbo dos registros de apagamento é a hora do envio ou a do próprio apagamento.
  • Por que quatro desses registros sobreviveram a um temporizador de 24 horas.
  • Quem reagiu com emoji às mensagens, e quando — o dado é extraído, mas não vai para a figura.

Para quem acusa, isso significa que o relatório sustenta menos do que a repercussão sugere — e que qualquer afirmação sobre leitura ou abertura vai precisar de fonte além dos desenhos do IPED.

Para quem defende, vale resistir à conclusão simétrica e igualmente apressada. Os quatro registros de apagamento existem, e são de um tipo que o banco de dados distingue da expiração automática: isso é registro, não hipótese. Mas quando foram produzidos não se sabe, e por que sobreviveram a um temporizador que deveria tê-los eliminado ninguém explicou. Essa persistência sem explicação é justamente o ponto técnico a levantar — e a forma correta de levantá-lo é como incerteza: há uma inconsistência aparente entre a configuração declarada e o estado do banco de dados, que o relatório mostra sem enfrentar. Dizer mais do que isso — afirmar que a inconsistência prova adulteração — seria cometer, do outro lado, o mesmo excesso que este texto atribui à repercussão.

E atacar o documento como se ele afirmasse leitura é atacar algo que ele não disse.

Para jornalistas: seis perguntas antes de escrever

Se você vai escrever sobre figuras de um relatório com telas de WhatsApp, estas perguntas evitam a maior parte dos erros que circularam:

Por que isso importa além deste caso

O Superior Tribunal de Justiça consolidou, em maio de 2026, o entendimento de que dúvida razoável sobre a integridade de uma prova digital exige exame com possibilidade de auditar o método.13 Este texto é um exemplo de como essa auditoria começa: pelo código do programa, pela documentação do fabricante, pela medição — e pela pergunta “quem desenhou este ícone e o que ele leu para desenhá-lo”.

Cada ícone é a saída de um programa. Cada programa lê campos específicos. O que o programa não lê, o relatório não pode afirmar — e a manchete também não.

O dado sustenta exatamente o que sustenta. Nem uma palavra a mais.

Notas

  1. Informação de Polícia Judiciária de Análise nº 3298613/2026, do NADIP/DFIN da Polícia Federal, produzida no âmbito da Operação Compliance Zero e juntada à Petição 16.662 do STF. “IPJ-A” é a sigla do tipo de documento; “Informação” aqui é o nome de uma peça de polícia judiciária, não sinônimo de dado. O aparelho examinado é um iPhone 17 Pro.
  2. Laudo nº 4281/2025 do SETEC (Setor Técnico-Científico da PF). O hash é o resultado de uma função matemática aplicada ao conteúdo integral da cópia: qualquer alteração de um único byte produz um hash diferente. É o mecanismo que permite provar, depois, que a cópia analisada é a mesma que foi extraída. A distinção entre documento investigativo e laudo de exame está desenvolvida em Ninguém abriu o arquivo.
  3. IPED 4.2.2 (Indexador e Processador de Evidências Digitais) e Cellebrite Reader 10.7.1.5013. O IPED é um indexador e processador: trabalha sobre dados já extraídos por outra ferramenta, não faz a extração. O código-fonte da versão 4.2.2 está fixado publicamente, o que permite ler exatamente o que a versão usada pela PF faz. Na cópia em alta resolução, as tabelas de registro exibem cabeçalhos no padrão do Cellebrite (Ufed:Application, Ufed:Body, Ufed:TimeStamp), enquanto as telas de conversa vêm do visualizador do IPED.
  4. Cópia A — publicada pelo Poder360, em static.poder360.com.br/uploads/2026/09/pet16662_relatorio_pf_celular_vorcaro_moraes_gonet_andrei_barci.pdf: 5.537.944 bytes, metadados indicando Adobe Illustrator e iLovePDF, modificada em 1º/9/2026 às 19h36 UTC. Cópia B — publicada pelo Painel Político, em painelpolitico.com/uploads/documentos/20260901_202629_relatorio_pf_vorcaro_moraes_QUALIDADE_19mb.pdf: 20.514.703 bytes, metadados indicando Microsoft Word e Ghostscript, criada em 1º/9/2026 às 20h21 UTC. Nenhuma das duas tem assinatura digital. A cópia A foi encontrada idêntica byte a byte em três veículos, o que indica redistribuição a partir de uma única fonte. O arquivo original assinado está no sistema eletrônico do STF e seu acesso depende de certificado digital. Os detalhes técnicos, com os hashes de cada arquivo, estão na versão técnica deste texto.
  5. Exemplo da p. 15 do relatório, referente a 30/10/2025, horários em UTC: Notas abre às 16:43:16; captura de tela às 16:44:43; PDF criado às 16:44:43; Notas encerra às 16:44:48; WhatsApp inicia às 16:44:48; mensagem enviada às 16:44:56 (13:44:56 em Brasília); WhatsApp encerra às 16:45:26. O mesmo encaixe se repete em outros quadros, como o da p. 52.
  6. A classe UIScreenshotService, do UIKit da Apple, disponível desde o iOS 13.0, é descrita na documentação oficial como um objeto que coordena a criação de capturas de tela em PDF do conteúdo de um aplicativo. O arquivo é depositado em área temporária (tmp), sobre a qual a Apple documenta que não há garantia de permanência, mas tampouco de exclusão imediata.
  7. Na folha de estilo do visualizador de WhatsApp do IPED 4.2.2, os quatro estados são unsent (ícone de relógio), sent (um tracinho), delivered (dois tracinhos) e viewed (dois tracinhos). Os três primeiros usam tons de verde; só viewed usa azul. Comparando os desenhos, delivered e viewed são idênticos e diferem apenas na cor; sent tem desenho próprio, com um único traço. O estado vem do campo ZMESSAGESTATUS do banco de dados do WhatsApp para iOS: 6 é entregue, 8 é visualizada.
  8. Método: isolamos, nas 218 páginas da cópia em alta resolução, os pixels cuja vizinhança é majoritariamente fundo de bolha de saída — para excluir o papel de parede e os blocos de citação, que têm tons próximos — e medimos a cor dos glifos ali encontrados. Na p. 37, a média dos pixels de traço é RGB (156, 166, 147), a 13 unidades do verde do IPED e a 130 do azul. A busca inversa, por qualquer pixel azulado dentro de bolha, com limiar frouxo, retornou 59 pixels dispersos em 19 páginas, em grupos de 1 a 8, que a inspeção identificou como o texto azul do link “Anexo” e franjas de compressão. Um tracinho duplo real produz de 28 a 59 pixels agrupados. Para confirmar que o procedimento não estava cego para azul, rodamos um controle com uma bolha sintética contendo tracinhos azuis, detectados com 165 pixels.
  9. No IPED 4.2.2, o ícone de visualização única é uma constante escrita uma única vez no gerador de relatório, sem variante. A classificação como visualização única é feita exclusivamente pelo campo de tipo da mensagem, sem leitura de qualquer campo de estado de abertura.
  10. O extrator do IPED decodifica reações e distingue as de terceiros — com contato, emoji e horário — das do próprio dono do aparelho. Mas o gerador de relatório imprime apenas o emoji na figura; contato e horário vão para um elemento de tooltip, que só existe no HTML interativo e não aparece na imagem estática colada no PDF. A classe aplicada ao elemento reflete a direção da mensagem reagida, não a autoria da reação.
  11. No IPED 4.2.2, o horário da mensagem é lido do campo ZMESSAGEDATE do banco de dados do WhatsApp para iOS. A leitura é incondicional e ocorre antes de o programa determinar o tipo da mensagem, e nenhum trecho posterior revisa esse valor — de modo que um registro de apagamento recebe o mesmo tratamento de qualquer outra mensagem. Não há, em toda a classe, leitura de qualquer campo de horário de revogação. “Apagar para todos” é chamado tecnicamente de revogação, corresponde ao tipo 14 no banco e tem rótulo próprio no relatório; os tipos ligados a mensagens temporárias são distintos e têm rótulos separados. Se o aplicativo preserva ou sobrescreve ZMESSAGEDATE ao converter a linha em tipo 14 é questão sobre o WhatsApp, não sobre o IPED, e não se resolve pelo relatório.
  12. O IPED marca as mensagens recuperadas de registro apagado com um rótulo visível e um ícone próprio, impressos abaixo de cada uma. Nenhuma das quatro mensagens da figura da p. 37 tem essa marcação — logo, estavam no banco de dados vivo no momento da extração.
  13. Superior Tribunal de Justiça, Jurisprudência em Teses nº 281 — Direito Penal e Processual Penal em Ambiente Digital III, Teses 3 e 4, edição disponibilizada em 29 de maio de 2026. Base legal da cadeia de custódia: Código de Processo Penal, arts. 158-A a 158-F, na redação da Lei nº 13.964/2019.
Do dado bruto à narrativa que sustenta a sua peça.
Rafael Chiara, fundador da Cyberlex
Rafael Chiara
Fundador da Cyberlex

Após 20 anos de serviço público (TRF4, TJSC e Polícia Civil, como delegado), atua em assistência técnica à defesa, prova digital, cadeia de custódia e análise forense de dispositivos móveis.

Material técnico-educativo. O caso entra como documento público, com sigilo levantado, e as pessoas aparecem apenas como constam dele: este texto audita o método do relatório, não adere a nenhuma tese sobre o mérito da investigação nem sobre a conduta de qualquer pessoa nele mencionada, o autor não tem relação com as partes, e nada aqui é parecer jurídico nem técnico sobre caso concreto. A Cyberlex produz documentos técnicos de assistência ao advogado e ao cliente — parecer de assistência técnica, nota técnica e análise —, com linguagem de indício técnico e limitações explícitas, e não emite laudo pericial oficial nem exerce advocacia. A judicialização, quando necessária, cabe ao advogado constituído pelo cliente, com autonomia técnica e independência. Anomalias de custódia são sinalizadas com linguagem de incerteza, jamais asseridas como manipulação provada.

Leitura relacionada