Qual é o nível de segurança do TEPHIA SECURE?
Como os seus ficheiros são cifrados, o que é guardado nos nossos servidores – e o que obteria um atacante que se apoderasse deles por completo. Sem linguagem de marketing, com total transparência.
Cifrado no browser
Os seus ficheiros são cifrados antes de saírem do seu computador e só são decifrados do lado do destinatário.
A chave nunca chega ao servidor
Cada envio tem a sua própria palavra-passe aleatória de 32 caracteres. O nosso servidor nunca a vê.
Metadados para o comprovativo
Só conseguimos ler dados como o nome do ficheiro, endereços, data e hora. O comprovativo de entrega precisa deles.
Como funciona a cifragem
- Palavra-passeO seu browser cria uma palavra-passe aleatória: 32 caracteres, cerca de 190 bits.
- ChaveO Argon2id deriva dela a chave, o que torna cada tentativa de adivinhar dispendiosa.
- CifrarO AES-256-GCM cifra o ficheiro e deteta qualquer alteração posterior.
- CarregarSó então o ficheiro sai, via TLS 1.2 ou 1.3. A palavra-passe fica consigo.
A palavra-passe não faz parte da ligação. Transmite-a por uma segunda via, por exemplo num e-mail separado ou por telefone. Quem intercetar apenas a ligação não consegue abrir o ficheiro.
Caixa de receção
Quem lhe entrega documentos cifra-os no seu browser da mesma forma. O servidor conhece apenas um valor de verificação da palavra-passe, que não permite decifrar nada.
Exceção: para que possa voltar a encontrar a palavra-passe, enviamos-lha por e-mail quando a caixa de receção é criada. Passa uma vez pelo servidor e não é guardada.
Suplemento do Outlook
O suplemento cifra diretamente no Outlook. A palavra-passe passa pelo seu próprio sistema de e-mail, não pelo nosso servidor; os ficheiros propriamente ditos não passam pelo seu sistema de e-mail.
Duas vias: o TEPHIA SECURE envia a cada destinatário a sua própria ligação e a palavra-passe está no seu e-mail; ou a ligação está no seu e-mail e a palavra-passe segue num segundo. Quem tiver a ligação e a palavra-passe pode descarregar o envio – como em qualquer entrega por e-mail. Na segunda via, o descarregamento pode ser limitado aos endereços dos destinatários; é então necessário também um código enviado para a respetiva caixa de correio.
Detalhes técnicos
- Derivação da chave: Argon2id com 64 MB de memória, 4 passagens e 2 threads, seguido de HKDF-SHA256
- Cifragem: AES-256-GCM, com salt aleatório próprio (32 bytes) e IV (12 bytes) por envio
- Cifragem por blocos: o ficheiro é cifrado e carregado em blocos de 8 MiB, cada um com o seu próprio nonce (IV XOR número do bloco); o número do bloco e uma marca de último bloco, como dados autenticados adicionais (AAD), impedem que blocos sejam trocados, omitidos ou cortados. Assim são possíveis ficheiros até 2 GB
- Sem WebAssembly (bloqueado, por exemplo, por uma política da empresa): PBKDF2-SHA512 com um milhão de iterações
- Vários ficheiros ou pastas são compactados num ZIP no browser antes da cifragem
- Transporte: TLS 1.2 ou 1.3 com forward secrecy, HSTS durante dois anos, Content Security Policy rigorosa
- Palavras-passe de início de sessão: scrypt com salt individual; um segundo fator é obrigatório
O que está no nosso servidor
Apenas cifrado, ou nada
- Conteúdo dos seus ficheiros: apenas cifrado
- Palavra-passe e chave de um envio: nunca
- Palavra-passe de uma caixa de receção: apenas um valor de verificação
- Palavras-passe de início de sessão: apenas como hash
- Início de sessão com a Microsoft: nada, isso fica na Microsoft
- Dados de pagamento: nada, são guardados pela Stripe
Legível, para o comprovativo
- Nomes e tamanhos dos ficheiros; num ZIP, também os nomes no interior
- Designação e mensagem
- Remetente com nome, endereço e organização
- Endereços dos destinatários, se enviarmos a ligação ou se o descarregamento for limitado
- Data e hora, endereço IP e localização aproximada ao descarregar
- Somas de verificação (SHA-256) dos ficheiros, calculadas no seu browser
Enviamos os e-mails com a ligação para os seus destinatários e notificações como «O seu ficheiro foi descarregado» através do Microsoft 365 e da Hornetsecurity (reencaminhamento, verificação de vírus e spam). Não contêm nomes de ficheiros, apenas a designação que escolher ou o número de ficheiros; a palavra-passe de um envio não consta de nenhum dos nossos e-mails. O PDF do comprovativo de entrega, que contém os nomes dos ficheiros, só é anexado se ativar essa opção na sua conta.
E se alguém se apoderar do servidor?
Partimos do pior cenário: um atacante tem controlo total do servidor, da base de dados e do armazenamento de ficheiros.
O que obteria
- Ficheiros cifrados que estejam nesse momento no servidor – ilegíveis sem a palavra-passe
- Metadados: quem enviou o quê a quem, quando, nomes de ficheiros e endereços. Um nome como «Divorcio_Martins.pdf» revela alguma coisa.
O que não obteria
- Conteúdo de envios e caixas de receção anteriores: as palavras-passe nunca estiveram no servidor, e 190 bits não podem ser quebrados por força bruta
- Ficheiros eliminados: também não constam de nenhuma cópia de segurança
- Palavras-passe Microsoft e dados de pagamento
Como nos protegemos
- Conservação curta: os ficheiros são eliminados após o descarregamento. O que já não existe não pode ser roubado.
- Código de uma única origem: a aplicação web carrega o seu código apenas a partir do nosso próprio servidor, e uma Content Security Policy rigorosa impede a injeção de código.
- Acesso restrito: manutenção apenas com chave e apenas a partir de redes fixas; as organizações estão ainda separadas na base de dados.
- Notificação em caso de incidente: se detetarmos uma intrusão, informamos as organizações afetadas sem demora injustificada (art. 33.º do RGPD).
Quanto tempo demoraria a quebrar um ficheiro intercetado?
Mesmo com mil milhões de placas gráficas, um atacante precisaria, em média, de cerca de 4 × 1037 anos.
Suponha que alguém interceta um ficheiro cifrado – durante a transmissão ou a partir do servidor. Sem a palavra-passe, resta-lhe apenas experimentar palavras-passe. Em média, precisaria deste tempo:
Para comparação: o Universo tem cerca de 1,4 × 1010 anos. Mesmo mil milhões de placas gráficas precisariam de cerca de 1027 vezes mais tempo.
Porque demora tanto
- Palavras-passe aleatórias longas: cada envio recebe a sua própria palavra-passe de 32 caracteres, gerada no seu browser. São cerca de 2,3 × 1057 possibilidades (190 bits).
- Cada tentativa é dispendiosa: antes de uma palavra-passe poder ser verificada, tem de passar pelo Argon2id, com 64 MB de memória e quatro passagens. Isto trava deliberadamente as placas gráficas e o hardware especializado.
- A própria chave (AES-256), com 2256 possibilidades, seria ainda mais difícil de adivinhar do que a palavra-passe.
E os computadores quânticos?
Segundo o conhecimento atual, um computador quântico reduz, no máximo, para metade o número de bits ao experimentar as possibilidades. Dos 190 bits restariam, em termos de cálculo, 95, e cada tentativa continuaria a ter de passar pelo Argon2id. Também isto fica muito além de qualquer capacidade de cálculo previsível.
Os números foram estimados com margem generosa a favor do atacante e arredondados a um algarismo significativo. O cálculo considera a média, ou seja, metade de todas as possibilidades.
Os ataques realistas visam, portanto, não a cifragem, mas a palavra-passe: quem obtiver a ligação e a palavra-passe em conjunto não precisa de quebrar nada. É por isso que ambas seguem sempre por vias separadas – ver O que pode fazer.
Onde os dados são guardados e durante quanto tempo
O que pode fazer
- Envie a palavra-passe e a ligação em separado, nunca na mesma mensagem.
- Inicie sessão com a Microsoft e desative o início de sessão com palavra-passe, ou utilize uma chave de segurança ou chave de acesso.
- Escolha nomes de ficheiros neutros se o próprio nome for confidencial.
- Limite o descarregamento aos endereços dos destinatários: assim, a ligação e a palavra-passe por si só não bastam.
Limites que assumimos abertamente
- Metadados como nomes de ficheiros, endereços, data e hora são legíveis para nós; o comprovativo precisa deles.
- A palavra-passe de uma caixa de receção passa uma vez pelo nosso servidor, pelo Microsoft 365 e pela Hornetsecurity quando a caixa de receção é criada.
- A Microsoft e a Hornetsecurity veem o que os nossos e-mails contêm: remetente, designação, a sua mensagem, a ligação, data e hora – sem nomes de ficheiros e nunca a palavra-passe de um envio.
- A verificação no envio do suplemento do Outlook é fornecida pela Cloudflare, para que o envio de e-mails não dependa da disponibilidade do nosso servidor. A Cloudflare vê o endereço IP e a identificação do navegador, não os conteúdos.
- A soma de verificação de cada ficheiro é legível para nós. Não revela conteúdo, mas mostra se foi transferido um ficheiro já conhecido.
- Como em qualquer cifragem no browser, a proteção de novos envios depende de o código da aplicação web ser entregue sem alterações – é por isso que protegemos o próprio servidor com especial cuidado.
Encontrou uma vulnerabilidade? Comunique-a confidencialmente para o endereço indicado no nosso security.txt.