Escolha uma Página

GPG Logo

Este é um tutorial básico feito com Tiago Bugarin em Pipa – RN de como usar as ferramentas de anonimidade na internet. Para saber mais sobre GPG e Tor basta pesquisar sobre eles.

O GPG usa o método de chaves pública e privada (secreta) para assegurar a transferência de informações entre pares. Neste modelo cada usuário cria uma chave privada e outra pública. A privada é guardada consigo e não é passada adiante. A pública é enviada aos pares com os quais se deseja realizar trocas de informações de forma segura por criptografia. É crucial neste método que a chave privada seja guardada pelo criador e somente por este usada. Esta chave não deve ser trafegada pela Internet.

Para criar a nossa chave escrevemos no terminal gpg –gen-key e segue os passos ate ter a chave.

[code lang=”plain”]

[livre@220 ~]$ gpg –gen-key
gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.</code>

Por favor selecione o tipo de chave desejado:
(1) DSA and Elgamal (default)
(2) DSA (apenas assinatura)
(5) RSA (apenas assinatura)
Sua opção?

[/code]

É recomendado escolher a opção 1, que é a opção padrão.

[code lang=”plain”]

DSA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)

[/code]

2048 é a opção padrão, apertando a tecla “Enter” ela é escolhida.

[code lang=”plain”]

Por favor especifique por quanto tempo a chave deve ser válida.
0 = chave não expira
<n> = chave expira em n dias
<n>w = chave expira em n semanas
<n>m = chave expira em n meses
<n>y = chave expira em n anos
A chave é valida por? (0)

[/code]

Note que no lugar de “<n>” você colocaria um numero. Por exemplo “2m” seria 2 meses.

[code lang=”plain”]

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"</code>Nome completo: farid
Endereço de correio eletrônico: farid@qualquercoisa.org
Comentário: teste de chave gpg

[/code]

Basta preencher os campos acima e trocar meus dados pelos seus. E o resultado seria assim:

[code lang=”plain”]</pre>
<div id="terminal"><code> Você selecionou este identificador de usuário:
"farid (teste de chave gpg) <farid@qualquercoisa.org>" </code></div>
<div>
<pre>[/code]

E escolhemos a opção “O” de “Ok”, assim:

[code lang=”plain”]

Muda (N)ome, (C)omentário, (E)ndereço ou (O)k/(S)air? o
Você precisa de uma frase secreta para proteger sua chave.

[/code]

Apos ter escolhido sua frase secreta, o programa comença a gerar nossa chave gpg. E aparece na tela alguma coisa assim:

[code lang=”plain”]

Precisamos gerar muitos bytes aleatórios. É uma boa ideia realizar outra
atividade (digitar no teclado, mover o mouse, usar os discos) durante a
geração dos números primos; isso dá ao gerador de números aleatórios
uma chance melhor de conseguir entropia suficiente.
++++++++++++++++++++..++++++++++++++++++++.+++++.++++++++++++++++++
++..++++++++++..++++++++++.+++++..+++++.+++++..+++++.+++++++++++++++++++
+.++++++++++……………>+++++…………………………………………………………+++++
Precisamos gerar muitos bytes aleatórios. É uma boa ideia realizar outra
atividade (digitar no teclado, mover o mouse, usar os discos) durante a
geração dos números primos; isso dá ao gerador de números aleatórios
uma chance melhor de conseguir entropia suficiente.
+++++..++++++++++++++++++++++++++++++…+++++.++++++++++++++++++++++++
++++++.+++++.++++++++++++++++++++++++++++++.++++++++++++++++++++..++++
+++++++++++.+++++>.++++++++++>+++++>+++++…………………………………………………………+++++
^^^
gpg: key E1D458BB marked as ultimately trusted
chaves pública e privada criadas e assinadas.</code>gpg: a verificar a base de dados de confiança
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
pub 1024D/E1D458BB 2008-07-25
Key fingerprint = 2EC2 34C7 B9C6 5F88 1452 FCCB A5A7 8DC6 E1D4 58BB
uid farid (teste de chave gpg) <farid@qualquercoisa.org>
sub 2048g/1B2F852E 2008-07-25

[/code]

Podemos conferir nossa chave segura escrevendo gpg –list-keys:

[code lang=”plain”]

[livre@220 ~]$ gpg –list-keys
/home/livre/.gnupg/pubring.gpg
——————————
pub 1024D/E1D458BB 2008-07-25
uid farid (teste de chave gpg) <farid@qualquercoisa.org>
sub 2048g/1B2F852E 2008-07-25

[/code]

Agora vamos criar uma chave publica para poder trocar arquivos criptografados com outras pessoas.
o formato para fazer isso é: gpg –export -o nome_do_arquivo nome_do_usuario

[code lang=”plain”]</pre>
<div id="terminal"><code> gpg –export -o chave_publica-Farid farid </code></div>
<div>
<pre>[/code]

Agora vamos importar uma chave publica com gpg –import nome_de_chave. No nosso a chave se chama “chave_publica_de_tiago”

[code lang=”plain”]</pre>
<div id="terminal"><code> [livre@220 ~]$ gpg –import chave_publica_de_tiago
gpg: key 4528A0A0: public key "Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>" imported
gpg: Número total processado: 1
gpg: importados: 1
[livre@220 ~]$ </code></div>
<div>
<pre>[/code]

Podemos conferir com gpg –list-keys que a importação deu certo.

[code lang=”plain”]</pre>
<div id="terminal"><code> [livre@220 ~]$ gpg –list-keys
/home/livre/.gnupg/pubring.gpg
——————————
pub 1024D/E1D458BB 2008-07-25
uid farid (teste de chave gpg) <farid@qualquercoisa.org>
sub 2048g/1B2F852E 2008-07-25</code>pub 1024D/4528A0A0 2008-07-25
uid Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>
sub 2048g/301E7CF1 2008-07-25
[livre@220 ~]$
<pre>[/code]

Agora vamos criptografar um arquivo (no nosso caso uma foto que se chama foto-importante.png) para enviar para Tiago de Farid.

[code lang=”plain”]</pre>
<div id="terminal"><code> [livre@220 ~]$ gpg -e -r Tiago foto-importante.png
gpg: 301E7CF1: There is no assurance this key belongs to the named user</code>pub 2048g/301E7CF1 2008-07-25 Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>
Impressão da chave primária: 98A5 AB9B 4801 506A 0328 3DE7 EBA4 A9A2 4528 A0A0
Impressão da subchave: 3018 054A 2978 3E12 8AD1 B728 6E31 5418 301E 7CF1
It is NOT certain that the key belongs to the person named
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.

Use this key anyway? (y/N) y
[livre@220 ~]$
<pre>[/code]

Pronto, agora foi criado um arquivo criptografado que se chama “foto-importante.png.gpg” que podemos mandar para tiago.

Para tiago poder descriptografar o arquivo que mandamos ele precisa ter a chave privada. e digitar gpg nome_do_arquivo.gpg

[code lang=”plain”]</pre>
<div id="terminal"><code> [tiago@zimbo ~]$ gpg foto-importante.png.gpg</code>You need a passphrase to unlock the secret key for
user: "Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>"
2048-bit ELG-E key, ID 301E7CF1, created 2008-07-25 (main key ID 4528A0A0)
Digite a frase secreta:

gpg: encrypted with 2048-bit ELG-E key, ID 301E7CF1, created 2008-07-25
"Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>"
[tiago@zimbo ~]$
<pre>[/code]

Este tutorial foi um exemplo, e agora vamos apagar as chaves ficticias publicas e privadas usando o comando gpg –delete-keys para publicas e logo apos gpg –delete-secret-keys para a privada.

[code lang=”plain”]</pre>
<div id="terminal"><code> [livre@220 ~]$ gpg –delete-keys Tiago
gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.</code>pub 1024D/4528A0A0 2008-07-25 Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>
Delete this key from the keyring? (y/N) y
[livre@220 ~]$ gpg –delete-secret-keys farid
gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

sec 1024D/E1D458BB 2008-07-25 farid (teste de chave gpg) <farid@qualquercoisa.org>

Delete this key from the keyring? (y/N) y
This is a secret key! – really delete? (y/N) y
[livre@220 ~]$
<pre>[/code]

Existe tambem um jeito de apagar tudo de um comando so: gpg –delete-secret-and-public-keys

[code lang=”plain”]</pre>
<div id="terminal"><code> [tiago@zimbo ~]$ gpg –delete-secret-and-public-keys Tiago Farid
gpg (GnuPG) 1.4.7; Copyright (C) 2006 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.</code>sec 1024D/4528A0A0 2008-07-25 Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>
Delete this key from the keyring? (y/N) y
This is a secret key! – really delete? (y/N) y

pub 1024D/4528A0A0 2008-07-25 Tiago Bugarin (Minha primeira chave GPG) <tiago@gpg.org>

Delete this key from the keyring? (y/N) y

pub 1024D/E1D458BB 2008-07-25 farid (teste de chave gpg) <farid@qualquercoisa.org>
[tiago@zimbo ~]$
<pre>[/code]