#1 Get the pieces

This guide relies on software which is freely licensed; it's completely transparent and anyone can copy it or make their own version. This makes it safer from surveillance than proprietary software (like Windows). Learn more about free software at fsf.org.

Most GNU/Linux operating systems come with GnuPG installed on them, so you don't have to download it. Before configuring GnuPG though, you'll need a desktop email program installed on your computer. Most GNU/Linux distributions have a free software version of the Thunderbird email program available to install. This guide will work with them, in addition to Thunderbird itself. Email programs are another way to access the same email accounts you can access in a browser (like GMail), but provide extra features.

If you are already have one of these, you can skip to Step 1.b.

Step 1.a Set your email program up with your email account (if it isn't already)

Open your email program and follow the wizard that sets it up with your email account.

Troubleshooting

What's a wizard?
A wizard is a series of windows that pop up to make it easy to get something done on a computer, like installing a program. You click through it, selecting options as you go.
My email program can't find my account or isn't downloading my mail
Before searching the Web, we recommend you start by asking other people who use your email system, to figure out the correct settings.

Step 1.b Install the Enigmail plugin for your email program

In your email program's menu, select Add-ons (it may be in the Tools section). Make sure Extensions is selected on the left. Do you see Enigmail? if so, skip this step.

If not, search "Enigmail" with the search bar in the upper right. You can take it from here. Restart your email program when you're done.

Troubleshooting

I can't find the menu.
In many new email programs, the main menu is represented by an image of three stacked horizontal bars.

#2 Make your keys

To use the GnuPG system, you'll need a public key and a private key (known together as a keypair). Each is a long string of randomly generated numbers and letters that are unique to you. Your public and private keys are linked together by a special mathematical function.

Your public key isn't like a physical key, because it's stored in the open in an online directory called a keyserver. People download it and use it, along with GnuPG, to encrypt emails they send to you. You can think of the keyserver as phonebook, where people who want to send you an encrypted email look up your public key.

Your private key is more like a physical key, because you keep it to yourself (on your computer). You use GnuPG and your private key to decode encrypted emails other people send to you.

Step 2.a Make a keypair

In your email program's menu, select OpenPGP → Setup Wizard. You don't need to read the text in the window that pops up unless you'd like to, but it's good to read the text on the later screens of the wizard.

On the second screen, titled "Signing," select "No, I want to create per-recipient rules for emails that need to be signed."

Use the default options until you reach the screen titled "Create Key".

On the screen titled "Create Key," pick a strong password! Your password should be at least 12 characters and include at least one lower case and upper case letter and at least one number or punctuation symbol. Don't forget the password, or all this work will be wasted!

The program will take a little while to finish the next step, the "Key Creation" screen. While you wait, do something else with your computer, like watching a movie or browsing the Web. The more you use the computer at this point, the faster the key creation will go.

When the OpenPGP Confirm screen pops up, select Generate Certificate and choose to save it in a safe place on your computer (we recommend making a folder called "Revocation Certificate" in your home folder and keeping it there. You'll learn more about the revocation certificate in Section 5. The setup wizard will ask you to move it onto an external device, but that isn't necessary at this moment.

Troubleshooting

I can't find the OpenPGP menu.
In many new email programs, the main menu is represented by an image of three stacked horizontal bars. OpenPGP may be inside a section called Tools.
The wizard says that it cannot find GnuPG.
Open whatever program you usually use for installing software, and search for GnuPG, then install it. Then restart the Engimail setup wizard by going to OpenPGP → Setup Wizard.

Step 2.b Upload your public key to a keyserver

In your email program's menu, select OpenPGP → Key Management.

Right click on your key and select Upload Public Keys to Keyserver. Use the default keyserver in the popup.

Now someone who wants to send you an encrypted message can download your public key from the Internet. There are multiple keyservers that you can select from the menu when you upload, but they are all copies of each other, so it doesn't matter which one you use. However, it sometimes takes a few hours for them to match each other when a new key is uploaded.

Troubleshooting

The progress bar never finishes
Close the upload popup, make sure you are on the Internet and try again. If that doesn't work, try again, selecting a different keyserver.
My key doesnt appear in the list
Try checking Show Default Keys.

GnuPG, OpenPGP, what?

You're using a program called GnuPG, but the menu in your email program is called OpenPGP. Confusing, right? In general, the terms GnuPG, GPG, GNU Privacy Guard, OpenPGP and PGP are used interchangeably, though they all have slightly different meanings.

#3 Experimente!

Você agora vai tentar uma correspondência de teste com um programa de computador chamado Edward, que sabe como usar criptografia. Exceto onde avisarmos, esses são os mesmos passos que você vai seguir quando se corresponder com uma pessoa viva, real.

Passo 3.a Mande sua chave pública para Edward

Esse é um passo especial que você não vai ter que fazer quando estiver se correspondendo com pessoas de verdade. No menu do seu programa de e-mail, vá para @@OpenPGP → Key Management@@. Você deve ver sua chave na lista que aparece. Clique com o botão direito na chave e selecione @@Send Public Keys by Email@@. Isso vai criar uma nova mensagem, como se você tivesse clicado no botão @@Write@@.

Destine a mensagem pra edward-pt-br@fsf.org. Coloque pelo menos uma palavra (a que quiser) no assunto e no corpo do e-mail, e clique em @@Send@@.

Pode levar de dois a três minutos pra Edward responder. Enquanto isso, você pode querer avançar e checar a seção Use bem desse guia. Assim que ela tiver respondido, passe para o próximo passo. Daqui pra frente, você vai fazer tudo do mesmo jeito que fará quando se corresponder com uma pessoa real.

Passo 3.b Envie um e-mail codificado de teste

Componha uma nova mensagem em seu programa de e-mail, endereçado a edward-pt-br@fsf.org. Escreva "Teste de criptografia" ou algo parecido no assunto, e escreva alguma coisa no corpo. Não envie ainda.

Clique no ícone de chave no canto inferior direito da janela de composição (ele deve ficar amarelo). Isso diz pro Enigmail codificar a mensagem com a chave que você baixou no passo anterior.

Próximo à chave, você vai notar o ícone de um lápis. Clicar nele diz pro Enigmail adicionar uma assinatura especial e única à sua mensagem, gerada usando sua chave privada. Isso é uma funcionalidade separada da codificação, e você não tem que usá-la nesse guia.

Clique @@Send@@. O Enigmail vai abrir uma janela que diz "@@Recipients not valid, not trusted or not found."

Para codificar e enviar o e-mail para Edward, você deve ter a chave pública dele, e então agora você vai fazer o Enigmail baixá-la de um servidor de chaves. Clique @@Download Missing Keys@@ e use a padrão na janela que pede a você pra escolher um servidor. Assim que encontrar as chaves, marque a primeira (a chave com ID que começa com 9), e selecione OK. Selecione OK na próxima janela.

Você agora está de volta à tela "@@Recipients not valid, not trusted or not found@@". Escolha a chave da Edward na sua lista e clique em OK. Se a mensagem não for enviada automaticamente, você já pode enviá-la.

Resolução de Problemas

O Enigmail não encontra a chave de Edward
Feche as janelas que apareceram desde que você clicou. Tenha certeza de que está conectado à Internet e tente novamente. Se isso não funcionar, repita o processo, escolhendo um servidor de chaves diferente quando o programa lhe pedir pra escolher um.

Importante: Dicas de segurança

Mesmo se você codificar seu e-mail, a linha do assunto não será codificada, então não coloque informações privadas ali. Os endereços de origem e destino também não são codificados, então podem ser lidos por um sistema de vigilância. Quando você enviar anexos, o Enigmail te dará a opção de codificá-los ou não.

Também é uma boa prática clicar no ícone de chave da janela de composição antes de começar a escrever. Se não fizer isso, seu cliente de e-mail pode salvar um rascunho não-codificado no servidor de e-mail, potencialmente expondo a mensagem a bisbilhoteiros.

Passo 3.c Receba uma resposta

Quando Edward receber sua mensagem, ele vai usar a chave privada dela pra decodificá-la, baixar sua chave pública de um servidor de chaves e usá-la para codificar uma mensagem de volta pra você.

Como você codificou essa mensagem com a chave pública de Edward, a chave privada de Edward é necessária pra decodificá-la. A Edward é o único que tem essa chave, então ninguém exceto ele — nem mesmo você — pode decodificar.

Pode levar dois ou três minutos pra Edward responder. Enquanto isso, você pode querer avançar e checar a seção Use bem desse guia.

Quando você receber e abrir a mensagem de Edward, o Enigmail vai detectar automaticamente que ele está codificada com sua chave pública, e então vai usar sua chave privada para decodificá-la.

Note a barra que o Enigmail mostra acima da mensagem, com informações sobre o estado da chave de Edward.

#4 Aprenda a Rede de Confiabilidade

A criptografia por e-mail é uma tecnologia poderosa, mas tem uma fraqueza; ela requer uma maneira de verificar que a chave pública de uma pessoa é dela mesmo. Senão, não há nada que impeça um adversário de criar um endereço de e-mail com o nome de uma pessoa, criando chaves pra esse endereço e fazendo-se passar por ela. É por isso que os programadores de software livre que desenvolveram a criptografia por e-mail criaram a assinatura de chave e a Rede de Confiabilidade.

Quando você assina a chave de alguém, está dizendo publicamente que confia que a chave pertence mesmo a essa pessoa e não a um impostor. Pessoas que usam sua chave pública podem ver o número de assinaturas que ela tem. Quando já tiver usado o GnuPG por algum tempo, sua chave pode ter centenas de assinaturas. A Rede de Confiabilidade é uma constelação de todas as pessoas que usam o GnuPG, conectadas umas às outras por correntes de confiança expressadas através de assinaturas, formando uma rede gigante. Quanto mais assinaturas uma chave tiver, e quanto mais assinaturas essas pessoas que assinaram tiverem, mais confiável é essa chave.

As chaves públicas das pessoas geralmente são identificadas pela impressão digital de sua chave, que é uma série de dígitos como DD878C06E8C2BEDDD4A440D3E573346992AB3FF7 para a chave de Edward). Você pode ver a imprsesão digital de sua chave pública, e de outras chaves públicas salvas no seu computador, indo em

Você também pode ver chaves públicas serem citadas por seus ID's, que são simplesmente os últimos 8 dígitos da imprsesão digital, como 92AB3FF7 para a Edward. O ID da chave é visível diretamente da Janela @@Key Management@@. O ID da chave é como o primeiro nome de uma pessoa (é uma abreviação útil mas pode mãn ser única para uma determinada chave), enquanto a impressão digital realmente identifica a chave unicamente sem a possibilidade de confusão. Se você só tem o ID da chave, você ainda pode encontrar a chave (assim como a impressão digital), como fez no Passo 3, mas se múltiplas opções aparecerem, você vai precisar da impressão digital da pessoa com quem está tentando se comunicar pra ver qual delas usar.

Passo 4.a Assine uma chave

No menu do seu programa de e-mail, vá para @@OpenPGP → Key Management@@.

Dê dois cliques na chave pública de Edward e selecione @@Select Key@@ do menu de contexto.

Na janela que aparece, selecione "@@I will not answer@@" e clique em OK.

No menu do seu programa de e-mail, vá para @@OpenPGP → Key Management → Keyserver → Upload Public Keys@@ e clique em OK.

Você efetivamente disse "Eu confio que a chave pública de Edward pertence mesmo a Edward." Isso não significa muito porque Edward não é uma pessoa de verdade, mas é uma boa prática.

Importante: cheque a identidade das pessoas antes de assinar as chaves delas

Antes de assinar a chave de uma pessoa de verdade, sempre tenha certeza de que ela pertence mesmo a quem diz, e que elas são quem dizem ser. Peça a elas pra mostrar seus ID's (a não ser que confie muito nelas) e a impressão digital de suas chaves públicas -- não somente o ID da chave pública mais curto, que pode se referir a mais de uma chave. No Enigmail, responda honestamente a janela que aparece e pergunta "@@How carefully have you verified that the key you are about to sign actually belongs to the person(s) named above?@@.

#5 Use bem

Cada pessoa usa o GnuPG de um jeito um pouquinho diferente, mas é importante seguir algumas práticas básicas pra manter seu e-mail seguro. Se você não as seguir, estará ponto em risco a privacidade das pessoas com as quais se comunica, assim como a sua própria, e danificando a Rede de Confiabilidade.

Quando devo codificar?

Quanto mais você puder codificar suas mensagens, melhor. Isso porque se você só codificar e-mails ocasionalmente, cada mensagem codificada pode despertar suspeitas em sistemas de vigilância. Se todos os quase todos os seus e-mails são codificados, as pessoas que conduzem a vigilância não saberão por onde começar.

Não queremos dizer que codificar só uma parte do seus e-mails não ajuda -- é um ótimo começo e torna a vigilância em massa mais difícil.

Importante: Cuidado com chaves inválidas

O GnuPG torna o e-mail mais seguro, mas ainda é importante estar atento para chaves inválidas, que podem ter caído em mãos erradas. E-mails codificados com chaves inválidas podem ser lidos por programas de vigilância.

Em seu programa de e-mail, volte à segunda mensagem que Edward mandou. Como Edward o codificou com a sua chave pública, vai haver uma mensagem do OpenPGP no topo, que provavelmente diz "@@OpenPGP: Part of this message encrypted.@@"

Quando usar o GnuPG, torne prestar atenção nessa barra um hábito. O programa vai te alertar por ali se você receber um e-mail codificado com uma chave na qual não se pode confiar.

Copie seu certificado de revogação para algum lugar seguro

Lembra quando você criou suas chaves e salvou o certificado de revogação que o GnuPG fez? É hora de copiar esse certificado para o armazenamento digital mais seguro que você tiver -- o ideal é um pendrive, CD ou HD guardados em um local seguro na sua casa.

Se um dia você perder sua chave privada, ou se a roubarem, você vai precisar desse arquivo de certificado.

Importante: aja rápido se alguém pegar sua chave privada

Se você perder sua chave privada ou se alguém tomar posse dela (por exemplo, roubando ou invadindo seu computador), é importante revogá-la imediatamente antes que alguém a use para ler suas mensagens encriptadas. Esse guia não cobre os passos pra revogar uma chave, mas você pode seguir as instruções no site do GnuPG (em inglês). Depois que tiver , mande um e-mail pra todas as pessoas com as quais você costuma usar sua chave pra ter certeza de que elas saberão disso.