Foi criado em 1991 por Phil Zimmermann e lançado como um padrão aberto chamado OpenPGP em 1997. Também existe uma implementação do PGP, que está disponível sob uma licença GPL chamada GNU Privacy Guard (GPG) desde 1999.
História do PGP
Zimmermann foi um conhecido ativista antinuclear nas décadas de 1980 e 1990 que queria uma maneira de armazenar arquivos e informações fora do alcance do governo. Zimmerman criou o PGP e lançou o software gratuitamente para todos e incluiu o código-fonte em cada versão.
No início dos anos 90, o software de criptografia ainda era classificado como munição militar e sua exportação era estritamente proibida. Para contestar esses regulamentos, a Zimmermann imprimiu o código-fonte em livros e depois os distribuiu ao redor do mundo. A justificativa era que, embora a munição fosse estritamente controlada, o texto era protegido pela Primeira Emenda. Os EUA investigaram Zimmermann por três anos, mas abandonaram todas as acusações em 1996.
Como funciona o PGP?
PGP é um sistema pseudônimo. Os principais usos são manter a privacidade do conteúdo dos seus dados e garantir a autenticidade de todas as comunicações e arquivos. Ele pode aumentar muito o anonimato quando usado em conjunto com softwares como o Tor . No entanto, o recurso de assinatura PGP faz exatamente o oposto de mantê-lo anônimo ; é usado para provar digitalmente que você escreveu uma declaração ou revisou um arquivo.
Por causa desses padrões abertos, tornou-se possível criar uma variedade de softwares para todos os dispositivos que podem interagir uns com os outros.
No PGP, todo usuário precisa criar uma chave pública e uma chave privada . A chave privada permanece no computador do usuário e a chave pública pode ser carregada com segurança na web ou fornecida a outros usuários. Não precisa estar conectado à sua identidade real ou endereço de e-mail, mas é preciso ter cuidado para não confundir as chaves!
Leia Também: Aulas de cibersegurança: Chaves privadas mais seguras com compartilhamento de segredo Shamir
Digamos que você receba a chave pública de Alice, você pode usá-la para criar arquivos ou texto que só podem ser lidos por Alice. Você também pode verificar as assinaturas de Alice para confirmar se um arquivo realmente veio dela ou se ela realmente fez uma declaração pública atribuída a ela.
Por outro lado, se você tiver a chave privada de Alice, poderá usá-la para acessar arquivos destinados apenas a ela. Você também pode usá-lo para assinar arquivos e declarações como Alice. É por isso que você precisa manter sua chave privada privada e pode ser perigoso se seu computador for comprometido. Se alguém obtiver acesso ao seu computador, também poderá obter acesso à sua chave privada.
Embora a matemática por trás do PGP seja considerada à prova de balas, há muitos exploits possíveis . O maior problema é a melhor forma de autenticar as chaves públicas. Uma vez que qualquer pessoa pode carregar e distribuir uma chave com qualquer nome, alguma verificação é necessária para garantir que a chave que você está usando realmente pertence à pessoa a quem você pensa que pertence.
PGP tenta resolver isso com o que eles chamam de “teia de confiança”. A ideia é que, embora você possa não ter conhecido a pessoa com quem está interagindo, talvez um amigo de confiança seu tenha. Ou um amigo de confiança de seu amigo de confiança e assim por diante. Para recriar essa cadeia de confiança, cada usuário assinaria a chave de seu amigo. No entanto, esse processo pode revelar informações privadas e comprometedoras e é um processo bastante cansativo. Como resultado, a rede de confiança não é usada o suficiente para torná-la útil.
Como configurar PGP em seu dispositivo
Para configurar PGP em seu dispositivo, você precisará instalar um programa e criar sua chave PGP. Existem muitos programas para necessidades diferentes, mas nos concentraremos apenas nos mais utilizáveis.
macOS: GPGTools https://gpgtools.org/
iOS: iPGMail https://ipgmail.com/
Windows: GPG4Win https://gpg4win.org/
Android: Projeto Guardian https://guardianproject.info/code/gnupg/
Linux Ubuntu: Seahorse https://wiki.gnome.org/Apps/Seahorse/
Linux Ubuntu: Enigmail https://www.enigmail.net/home/index.php
Crie sua chave PGP e faça backup dela
Para usar PGP, você precisa criar uma chave PGP. O programa PGP escolhido solicitará um nome e endereço de e-mail. Embora não importe qual identidade você escolheu, será muito mais fácil integrar PGP em seu programa de e-mail se você usar um endereço de e-mail de sua propriedade.
Também recomendamos definir uma data de validade em sua chave, por cerca de dois a três anos no futuro. Você sempre pode alterar esta data, contanto que não tenha perdido o acesso à sua chave PGP. Também é uma boa ideia criar uma chave com o tamanho máximo (pelo menos 2048 bits) e definir uma senha longa e complicada (que você pode gerar com nosso gerador de senha aleatória ).
Se você perder a senha, também perderá o acesso à sua chave PGP e não poderá descriptografar nenhum arquivo associado a ela. Certifique-se de fazer um bom backup e, se você não confia em si mesmo para lembrar a senha, faça backup separadamente. Você pode salvá-lo em seu gerenciador de senhas ou simplesmente anotá-lo e mantê-lo em um lugar seguro.
Agora você tem sua chave PGP! Parabéns! Agora você pode enviá-lo para um servidor público para que as pessoas vejam que você usa PGP e possam encontrar sua chave.
Crie um certificado de revogação PGP
A próxima etapa é criar um certificado de revogação. Não se preocupe em manter seu certificado de revogação seguro. Na verdade, você deseja mantê-lo o mais acessível possível! Envie-o para si mesmo como um anexo de e-mail, coloque-o no diretório do Dropbox e mantenha-o em sua unidade padrão. Se você perder sua chave privada, esquecer sua senha ou, pior, se outra pessoa tiver acesso a ela, você pode revogar a chave com o certificado de revogação. Revogar a chave privada garantirá que outras pessoas não enviarão mais arquivos para você com essa chave. Isso também evita que duas chaves válidas de você fiquem flutuando, o que pode ser outra fonte de confusão.
Faça backup da sua chave PGP
Fazer backup de sua chave é mais complicado. Você deseja que seu backup seja o mais seguro possível. Esperançosamente, você não precisará se preocupar muito com a possibilidade de acessá-lo.
Sempre certifique-se de fazer backup da chave PGP e de sua senha separadamente. Por exemplo, você pode escolher manter sua senha no gerenciador de senhas e armazenar a chave em um stick USB em seu cofre ou caixa de depósito bancário.
Se você configurou backups automáticos para seus dados comuns, poderá mantê-los juntos, mas certifique-se de que estejam criptografados corretamente!
A segurança e a acessibilidade costumam estar em conflito. Quanto mais sua chave estiver acessível para você, mais ela também estará acessível para outras pessoas. Pense em suas preferências de risco ao tomar decisões sobre a complexidade da senha e a localização de seus backups. Alguém que foge de um governo autoritário deve se esforçar mais por sua segurança do que um cidadão comum que deseja apenas defender seu direito à privacidade online.
Como enviar mensagens criptografadas usando PGP
Obtenha as chaves públicas PGP de seus contatos
Você precisará receber as chaves PGP públicas de seus contatos antes de enviar mensagens criptografadas ou verificar seus arquivos, e também precisará publicar os seus.
Você pode carregar sua chave PGP para um servidor de chaves, que provavelmente é o lugar mais conveniente para seus contatos a receberem. Você também pode hospedá-lo em seu site, criar um link para ele em sua biografia do Twitter ou usar um serviço dedicado como o keybase.io Você pode até fazer upload de sua chave PGP para sua página do Facebook.
Uma chave PGP pode ser identificada com um ID de usuário (um nome ou endereço de e-mail), um ID de chave (como 0x0BACE776) e uma impressão digital (como 509E 7B97 D266 A283 DC10 5E6F 57ED 72A2 0BAC E776). Embora o ID da chave e a impressão digital sejam calculados a partir da própria chave PGP, o ID da chave é um pouco curto demais para identificar a chave de maneira exclusiva, portanto, a impressão digital é preferível. Por que não imprimi-lo em seu cartão de visita para fortalecer sua identidade online e seu status como pessoa consciente e preocupada com a privacidade?
Criptografe seus arquivos
Para criptografar arquivos, você precisará da chave pública da pessoa para quem deseja enviar os arquivos criptografados. Você também pode escolher sua própria chave pública ou usar várias chaves PGP diferentes.
Você pode usar o PGP para armazenar convenientemente sua carteira Bitcoin em um stick USB. As vantagens são inúmeras e você não precisa se preocupar com quem tem acesso ao pen drive, ou se ele pode ter sido copiado sem seu conhecimento. Você também não precisará se lembrar de uma senha ou comunicá-la ao destinatário pretendido do arquivo, o que geralmente é impossível sem canais criptografados.
O software moderno facilita a criptografia e a descriptografia de arquivos . Freqüentemente, é tão simples quanto clicar com o botão direito no arquivo em questão. Selecione uma chave e o processo criará um arquivo .gpg ou .pgp que pode ser enviado com segurança pela Internet, armazenado em uma unidade de armazenamento externa ou mantido na nuvem.
Arquivos de assinatura
Qualquer pessoa pode criptografar um arquivo e enviá-lo para você e, mesmo que o arquivo venha do endereço de e-mail do seu contato, não há garantia de que o arquivo foi realmente enviado por eles. PGP oferece a opção de assinar arquivos, o que prova sem dúvida que o arquivo veio de seu contato.
Você pode escolher criptografar e assinar um arquivo, apenas criptografá-lo ou apenas assiná-lo. Você pode usar este recurso para assinar declarações públicas ou para assinar versões de software. É muito comum entre os projetos de software de código aberto assinar qualquer código e programa.
Se o software não fosse assinado, seria muito difícil verificar sua autenticidade, pois um invasor poderia ter introduzido backdoors no software sem o conhecimento dos desenvolvedores.
Esses arquivos de assinatura geralmente têm o mesmo nome dos arquivos que representam, mais as terminações .asc ou .sig.
Em alguns softwares, você pode verificar uma assinatura simplesmente clicando duas vezes no arquivo de assinatura ou executando o comando gpg –verify file.sig
Você precisará ter a chave PGP do signatário para verificar a assinatura.
Embora seja impossível para um invasor alterar um arquivo criptografado sem que o proprietário descubra, ainda pode ser muito valioso para o invasor saber quem criptografou o arquivo em primeiro lugar. Pessoas que buscam o anonimato precisam criar cuidadosamente novas chaves PGP para cada um de seus contatos, o que pode ser complicado e sujeito a erros. Nesses casos, pode ser mais apropriado usar tecnologia de mensagem criptografada como OTR , que oferece criptografia e autenticação confiáveis.
Assinar e criptografar o texto
—– COMEÇAR MENSAGEM ASSINADA POR PGP—–
Hash: SHA1
Com PGP você pode assinar e criptografar praticamente qualquer coisa. Em alguns softwares, é suficiente simplesmente escrever seu texto em um editor de texto e, em seguida, assiná-lo ou criptografá-lo com um clique com o botão direito.
Esta é a aparência da sua assinatura PGP. Pode ser postado em um comentário do Reddit, postagem no blog ou e-mail, para provar que é realmente você que está fazendo um comentário:
—–INÍCIO PGP SIGNATURE—–
Version: GnuPG v1
iQIcBAEBAgAGBQJWVXw0AAoJEIMuYyhAgNc6wKoP/AwSaInjpoSQKUBPukE+TY4vXWnoh1dCiOcLzCsbAz7IvLmtoILlGxfLwi0XUhAUQTKEAHxpWKbUTY/5MNFA1UUscHSH4t+aCtlFxNk4mMCtZO7c3JPh91U1rgN1K9J5YE9flpk+P5F5fdEhF4iD05P67uf4+t/k5cupD+pZv8pGnB+5rpPPe7ODE5ptA3DyI3i8srrvKVkictxYub9RDknqYJAaE/xxFZ7+mAZxM64gnN8Rwf+euDqdrf3PqiIUW6kcdvqJOyx7WZt+ows84kEze8AR3QhS1FBJfP3xAhsibBfy0sUSJopyl9kKIEDCcfGDf9Mthe3kzVUUayxz8AOrGC5ce6isg3YN4Nsi8K7idhPQyPgjBWtKWfuuYSUG+dPObVD+pFUkgOnrm07Qhp4ZVXKbuOnqf4swqc4vnW9C/9ADwk2/fat071fik8ohDzF9l4Cpm+iLj5w7Pv5iivvfe2oz0WCxnr6wj4XX5MsDTNOmMmObCWbnla+uYEJtDlbWse8XOq7q/DiMT9p+ZtHkSwrQ+3TLNHxxJK7UJJFdlfZUZqC06LsSb2yEBh7rJytoN2PrpjB5H7Zx99DC5v+i1klr4hbrLeHtd+fVl1AGrMz+agcO6YQGpHJ0hhJXVrRruJjLJzOhJkzUU3o0rHeHRk69jKdAKpsOqABsunt5=/QHs
—–FIM PGP SIGNATURE—–
Criptografar e-mails
Ao escrever e-mails privados, não é uma boa ideia escrevê-los na pasta de rascunho do seu provedor de e-mail. Tudo o que você faz nessa pasta é salvo para sempre e você não sabe quem tem acesso a ele.
Uma alternativa é escrever seus e-mails no bloco de notas, criptografar o texto e, em seguida, colar o texto criptografado no e-mail. Escrever e-mails no bloco de notas pode ser cansativo e copiar e colar as versões criptografadas ainda mais. Felizmente, existem plug-ins para software de e-mail como Thunderbird (Enigmail) e Apple Mail (GPGTools) que tornam o processo de descriptografia e criptografia mais fácil. É uma proteção de privacidade muito forte, mesmo contra os adversários mais sofisticados.
Uma grande coisa que você pode fazer instantaneamente é enviar sua chave PGP para o Facebook e receber todas as atualizações e notificações em formato criptografado. Isso é especialmente útil para informações confidenciais de segurança, como redefinir uma senha. Usar um PGP no Facebook evitaria que um hacker sequestrasse sua conta do Facebook por meio de sua conta de e-mail.
PGP não protege metadados
PGP é projetado para ocultar o conteúdo de arquivos e mensagens, mas não protege seus metadados. Os metadados podem incluir nomes e tamanhos de arquivos, cabeçalhos de e-mails, datas de criação e destinatários. Um hacker pode aprender muito com esse conhecimento, por isso é importante permanecer cauteloso sobre o que você compartilha – mesmo ao usar PGP.
Também é fácil para qualquer pessoa que possui um arquivo criptografado ver para quem ele está criptografado e quem o assinou. PGP não oferece sigilo de encaminhamento, portanto, se sua chave for comprometida, um invasor pode acessar todas as suas comunicações criptografadas de arquivos. Eles podem descriptografar tudo, comprometendo potencialmente anos de e-mails e transferências de arquivos.
É por isso que você deve criptografar suas chaves com uma boa senha, usar várias chaves em várias situações e substituir regularmente suas chaves PGP.
Também é importante saber que PGP não criptografa os nomes de arquivos ou cabeçalhos de e-mails. Portanto, tome cuidado com o que você escreve neles!