January 8, 2018

O que é um AxCrypt ID?

Atenção – isto é um post bastante técnico ;-) É apenas para quem está realmente interessado em alguns dos mecanismos internos do AxCrypt.

Na realidade, é mais do que isso. Tecnicamente, o AxCrypt ID é um par de chaves RSA-4096.

Um par de chaves é um conceito usada na criptografia de chave pública ou assimétrica. Neste tipo de criptografia, há duas chaves relacionadas e que têm as seguintes propriedades:

  • Uma chave pública – esta chave não é secreta e pode ser usada por qualquer pessoa para cifrar dados. Mas não pode ser usada para decifrar nada! Às vezes, chamamos-lhe chave partilhada.
  • Uma chave privada – esta chave deve ser secreta e é necessária para decifrar quaisquer dados cifrados com a chave pública. Por vezes, designamo-la chave secreta.
  • Sabendo a chave pública, é computacionalmente inviável (i.e. impossível, em termos simples) derivar a chave privada.
  • Quando ciframos um ficheiro com o AxCrypt, fazemo-lo usando AES-128/-256. Este é um algoritmo de cifragem simétrica forte, com uma única chave a ser usada tanto para cifragem como decifragem.

    O processo, em princípio, quando a AxCrypt cifra um ficheiro é o seguinte:

  • Cada vez que uma ficheiro é cifrado, é gerada uma chave de sessão aleatória de 128 ou 256 bits.
  • Os dados do ficheiro são cifrados usando-se AES e a chave de sessão.
  • A chave de sessão é cifrada com a sua palavra-passe, usando-se um algoritmo especial de key wrap, com AES na sua base. Esta chave de sessão cifrada é adicionada ao ficheiro cifrado.
  • A chave de sessão é cifrada com a chave pública do seu AxCrypt ID, usando RSA-4096. Esta chave de sessão cifrada é adicionada ao ficheiro cifrado.
  • A chave de sessão é cifrada com a chave pública AxCrypt ID de quaisquer outros utilizadores AxCrypt com quem tenha decido partilhar o ficheiro. Estas chaves cifradas de sessão são adicionadas ao ficheiro cifrado.
  • Para decifrar um ficheiro, a AxCrypt, em princípio, faz o seguinte:

  • Tome a sua palavra-passe, encontre a chave de sessão cifrada com palavra-passe acima e tente decifrá-lo. Se tiver sucesso, a chave de sessão decifrada é usada para decifrar o ficheiro.
  • Obtém a sua chave privada AxCrypt ID, encontra todas as chaves de sessão cifradas com a chave pública do seu AxCrypt ID, e tenta decifrar com cada uma. Se tiver sucesso com alguma, a chave de sessão decifrada é usada para decifrar o ficheiro.
  • O par de chaves é tipicamente gerado no nosso servidor quando uma conta é criada. A chave privada é temporariamente cifrada usando-se a nossa chave do sistema local. Uma vez que você inicia sessão e define a sua palavra-passe, nós re-ciframo-la com a sua palavra-passe.

    A chave privada, quando cifrada, é na realidade cifrada como um ficheiro AxCrypt, claro – mas usando-se apenas a sua palavra-passe para cifrar a chave de sessão. Não usamos quaisquer chaves públicas para esta cifragem.

    Normalmente, então, o processo consiste no seguinte:

  • Você cria uma conta. Nós geramos e criamos um par de chaves no nosso servidor e ciframos a chave privada temporariamente.
  • Você define sua palavra-passe. Re-ciframos a chave privada com a sua palavra-chave. Neste momento, ninguém pode recuperar a sua chave privada sem saber a sua palavra-passe. Nem nós, nem ninguém.
  • Você inicia sessão com a app AxCrypt. A app contacta o nosso servidor e descarrega o par de chaves – privada e pública – do servidor. A chave privada é mantida cifrada.
  • Sempre que abrir um ficheiro com a sua palavra-passe falhar, a AxCrypt decifrará a chave privada e tentará decifrar a chave de sessão como descrito acima. Isto permitir-lhe-á abrir os seus ficheiros com a chave partilhada consigo assim como ficheiros mais antigos cifrados com uma palavra-passe anterior caso tenha mudado a palavra-passe desde então (note: mudado – não redefinido).
  • Alterar a palavra-passe do seu AxCrypt ID significa que pegamos na sua chave privada, deciframo-la com a palavra-passe antiga e, de seguida, re-ciframo-la com a nova palavra-passe. É assim que uma mudança de palavra-passe lhe permitirá abrir ficheiros antigos cifrados com a AxCrypt. Note que, de facto, eles ainda vão ser abertos com a palavra-passe antiga também! É também por isso que você nunca depende dos nossos servidores. Se você sabe a palavra-passe original, pode sempre abrir o ficheiro. Se tiver uma cópia sincronizada da chave privada cifrada, pode abrir qualquer ficheiro desde que tenha a palavra-passe actual.

    Toda esta gestão de chaves é feita automaticamente e nos bastidores pela AxCrypt, de forma inteiramente transparente desde que você permita que a AxCrypt aceda aos nossos servidores.

    Para utilizadores avançados que compreendem completamente os mecanismos acima, é possível fazer tudo isto sem os nossos servidores. É possível gerar pares de chaves AxCrypt ID, exportá-los, importá-los, etc. Não recomendamos a ninguém fazer isto, pois um engano ou equívoco pode facilmente causar perda de dados ou incapacidade de se usar a AxCrypt.

    Tudo acima é uma versão simplificada do processo. Há muitos detalhes adicionais incluídos para garantir a segurança e lidar com vários cenários de sincronização, eventos de redefinição de palavra-passe, etc. Para detalhes completos, leia a documentação técnica.

    Experimente grátis