«Os seus dados são encriptados» é uma das alegações mais comuns que um produto focado em privacidade faz, e uma das menos úteis por si só. A encriptação descreve um mecanismo: transformar dados legíveis em dados ilegíveis com uma chave. Não diz nada sobre quem detém essa chave depois, e esse detalhe decide quase tudo sobre quem realmente está impedido de aceder. Zero-knowledge é o termo para acertar esse detalhe.

A ideia central

Encriptação zero-knowledge significa que a empresa que administra um serviço nunca tem acesso à chave necessária para desencriptar os seus dados. Não é «escolhe não olhar», mas estruturalmente não consegue, porque a chave nunca sai do seu dispositivo e nunca foi transmitida aos servidores dela em primeiro lugar. Geralmente é derivada de algo que apenas conhece: uma palavra-passe, um PIN ou um padrão, executada através de um processo de derivação de chave localmente, com apenas o resultado, o texto cifrado, sempre a deixar o seu controlo.

Isso é importante porque «encriptamos os seus dados» e «não podemos ler os seus dados» são duas afirmações muito diferentes, e a maioria dos produtos faz apenas a primeira. Uma empresa pode encriptar ficheiros nos seus servidores com algoritmos fortes como AES-256 enquanto ainda mantém a própria chave de desencriptação, o que significa que a encriptação mantém atacantes externos afastados, mas não faz nada para impedir a empresa, uma violação dessa empresa ou uma ordem legal entregue a essa empresa. O zero-knowledge fecha essa lacuna especificamente.

Zero-knowledge vs. Encriptação de ponta a ponta

Os dois termos são utilizados de forma intercambiável, mas não são a mesma garantia. A encriptação de ponta a ponta normalmente refere-se a dados encriptados enquanto estão em movimento, para que um servidor a retransmiti-los não os possa ler em trânsito. Essa é uma proteção real, mas não diz nada sobre o que acontece assim que os dados chegam; muitos sistemas encriptados de ponta a ponta ainda desencriptam na chegada e armazenam o texto simples, ou armazenam uma cópia custodiada da chave, no lado do servidor.

Zero-knowledge é a versão mais forte e completa: o fornecedor nunca tem a chave, quer os dados estejam em movimento ou parados. Um sistema zero-knowledge genuíno encripta dados em repouso também, o que significa que os ficheiros armazenados permanecem ilegíveis para o fornecedor indefinidamente, não apenas durante o carregamento.

Contra o que protege

O valor do design zero-knowledge aparece especificamente nas situações em que um sistema meramente encriptado falha:

  • Uma violação de servidor. Se um atacante entra nos servidores de uma empresa e a empresa guarda as chaves de utilizador, o atacante possivelmente obtém um caminho para desencriptar os dados do utilizador também. Se a empresa nunca teve as chaves, a violação produz apenas texto cifrado ilegível.
  • Uma solicitação legal. Uma intimação ou ordem judicial só pode obrigar uma empresa a entregar o que ela realmente tem. Um fornecedor zero-knowledge pode entregar ficheiros encriptados e dizer honestamente que também não pode abri-los, porque não pode.
  • Um funcionário mal-intencionado. Um funcionário com acesso ao servidor num sistema sem zero-knowledge pode ser capaz de aceder aos dados do utilizador diretamente. Num sistema zero-knowledge, não há nada do lado do servidor a aceder.

Nada disso requer confiar nas intenções da empresa. É uma propriedade da arquitetura, que é exatamente o motivo pelo qual vale mais do que uma promessa numa política de privacidade.

Como saber se uma alegação é real

Existe um teste prático que elimina a maior parte da linguagem de marketing: procure por um fluxo de «esqueceu-se da palavra-passe» ou recuperação de conta que restaure o acesso aos seus dados encriptados. Se uma empresa pode redefinir a sua palavra-passe e colocá-lo de volta nos seus ficheiros, ela guarda alguma parte da chave, chame ela o produto de zero-knowledge ou não. Um produto zero-knowledge genuíno não pode fazer isso. Se a sua palavra-passe ou PIN sumiu e não há um método de recuperação gerado separadamente e retido no dispositivo, os dados também somem, por design, porque essa é a mesma propriedade que mantém todos os outros de fora.

É também por isso que os produtos zero-knowledge se apoiam em coisas como uma frase de recuperação gerada localmente, em vez de um e-mail de redefinição de palavra-passe. A frase de recuperação também nunca toca num servidor; é apenas uma segunda cópia offline do material de derivação de chaves que apenas o utilizador possui.

Como o Vaultine aplica isso

A chave de encriptação de cofre do Vaultine vem do seu próprio PIN ou padrão, derivada e utilizada inteiramente no seu dispositivo, nunca enviada para um servidor (veja Porque uma aplicação de cofre sem conta é realmente mais segura para entender como isso também remove a necessidade de uma conta em primeiro lugar). Cada ficheiro é encriptado com a sua própria chave AES-256 antes de ser armazenado, e o backup opcional no Dropbox encripta os ficheiros no dispositivo primeiro, portanto o que chega ao Dropbox já é texto cifrado, independentemente de a própria encriptação do Dropbox ser boa ou não (veja A encriptação do Dropbox é suficiente para ficheiros sensíveis? para essa questão separada).

Perder o seu PIN sem nenhuma frase de recuperação guardada significa que o Vaultine não pode recuperar os seus ficheiros por si. Isso não é uma lacuna no suporte; é a consequência direta e inevitável do mesmo design que impede que uma violação, uma intimação ou um funcionário chegue a eles.

A versão curta

«Encriptado» informa que existe uma fechadura. «Zero-knowledge» informa quem não tem a chave. As duas afirmações soam parecidas e são utilizadas de forma quase intercambiável em textos de marketing, mas apenas uma delas determina se a própria empresa está bloqueada dos seus dados. Verifique se há um fluxo de redefinição de palavra-passe antes de acreditar em qualquer uma.

A chave de encriptação do Vaultine nunca sai do seu dispositivo. Comece com 10 ficheiros grátis em vaultine.app.