O que acontece com suas palavras e seus arquivos depois que você clica em “Criptografar e enviar”, e quem pode lê-los.
Passo a passo
- Seu navegador cria uma nova chave. Uma chave aleatória é criada no seu dispositivo, só para este envio.
- Tudo é trancado com ela. Seu texto, suas escolhas sobre a publicação, seus dados de contato, se você os informar, e cada arquivo e seu nome são criptografados no seu navegador antes de saírem dele.
- A chave é trancada para os editores. Em seguida, a própria chave é trancada com a chave pública dos editores. Uma chave pública só consegue trancar. Para abrir, é preciso a chave privada correspondente, que só os editores têm.
- Nosso servidor armazena o que não consegue ler. Ele verifica se o formulário foi enviado por uma pessoa, e não por um robô de spam, e depois armazena o texto trancado em seu banco de dados e os arquivos trancados em um armazenamento privado sem endereço público. Ele não tem nenhuma chave capaz de abri-los.
- Você recebe um código de protocolo (guardá-lo é opcional). O servidor gera um código aleatório e o mostra a você uma única vez. Ele guarda apenas um hash do código, o suficiente para reconhecê-lo, mas não para mostrá-lo novamente. Guardar o código é opcional: com ele, você pode adicionar mais material ao mesmo envio mais tarde. Depois de feito, um envio não pode ser retirado nem alterado.
Quem pode ler
Somente os editores deste site, que têm a chave privada que abre os envios. Essa chave nunca fica em nosso servidor: um membro da equipe editorial só a carrega no próprio navegador enquanto lê os envios, e ela é esquecida quando a página é bloqueada ou fechada.
Ninguém mais pode ler o que você envia: nem nosso provedor de hospedagem; nem quem estiver monitorando sua conexão com a internet; nem alguém que invada nosso servidor ou seu banco de dados.
O que nosso servidor pode ver
A criptografia oculta o que você escreveu, não o fato de que algo foi enviado. O servidor pode ver:
- quando chegaram o seu envio e tudo o que você adicionar depois;
- o tipo que você escolheu: sua experiência, um caso ou material;
- quantos arquivos você enviou e o tamanho de cada arquivo e do texto criptografado, o que indica aproximadamente a extensão deles;
- o hash do seu código de protocolo.
Ele não armazena seu endereço IP, e o registro de solicitações está desativado.
O que “anônimo” significa aqui
- Você não precisa de uma conta nem precisa informar seu nome.
- O único campo de contato é opcional e é criptografado junto com todo o resto.
- Não armazenamos seu endereço IP. Nosso provedor de hospedagem, que também faz a verificação antispam, ainda o vê quando você se conecta, e nosso servidor o usa por um instante para limitar a frequência com que uma mesma conexão pode enviar.
Antes de qualquer publicação
- Nada do que você envia é publicado automaticamente. Os editores primeiro leem e verificam tudo.
- Seu relato só é publicado se você tiver autorizado, e nunca com mais do seu nome do que você escolheu. Um relato publicado mostra o mês em que foi recebido.
- As identidades de sobreviventes, de suas famílias e de fontes anônimas são retiradas dos relatos e tarjadas nos documentos antes da publicação. O que um documento mostra sobre maus-tratos ou acobertamentos não é tarjado: é para isso que o registro existe.
- Todo arquivo publicado é limpo de dados ocultos: nenhum autor, dispositivo, localização, software ou histórico de edição. As fotos são salvas novamente a partir dos pixels. Os PDFs são reconstruídos a partir de uma imagem de cada página, de modo que texto oculto e versões anteriores não sobrevivem.
- As anotações privadas dos editores, como fontes e dados de contato, nunca são publicadas.
Detalhes técnicos
- A criptografia é executada no seu navegador com a libsodium.
- Cada envio recebe uma chave aleatória de 256 bits. Dela são derivadas subchaves separadas para o texto e para os arquivos com crypto_kdf (BLAKE2b), de modo que os dois nunca compartilham uma chave.
- Texto: XChaCha20-Poly1305 (IETF AEAD) com um nonce aleatório de 192 bits. A mensagem criptografada contém os campos do formulário, as opções de consentimento, o contato opcional e a lista de arquivos (nomes, tipos, tamanhos).
- Arquivos: crypto_secretstream_xchacha20poly1305 em blocos autenticados de 64 KiB; uma tag final detecta truncamento.
- Encapsulamento da chave: a chave do envio é selada para cada chave pública de editor com crypto_box_seal (X25519 com um par de chaves descartável, XSalsa20-Poly1305). A chave pública dos editores está embutida nesta página.
- Tudo o que for adicionado depois com um código de protocolo é criptografado da mesma forma, com uma nova chave.
- Código de protocolo: 26 caracteres (130 bits aleatórios) gerados pelo servidor; só o hash SHA-256 dele é armazenado.
- Armazenamento: um banco de dados para o texto criptografado e um armazenamento privado de arquivos para os arquivos criptografados, ambos contendo apenas texto cifrado. O limite de frequência usa como chave o IP da conexão dentro do limitador de frequência do provedor de hospedagem e não é armazenado; o token antispam é verificado sem enviar seu IP.
- Integridade dos scripts: cada arquivo de script que o formulário carrega é fixado com um hash SHA-384 em um import map, de modo que os navegadores compatíveis com a integridade de import maps recusam arquivos alterados. A Política de Segurança de Conteúdo (Content Security Policy) só permite scripts deste site e da verificação antispam. Isso protege contra arquivos de script substituídos, não contra alguém que assuma o controle do site e altere a própria página; por isso os hashes são publicados: hashes dos scripts do formulário.