5 comandos do GPG para criptografar e descriptografar arquivos

Os comandos que seguem, podem ser usados com o utilitário gpg, que pode ser instalado a partir dos repositórios oficiais da maioria das distribuições GNU/Linux.
Este post tem o propósito de fazer “um apanhado” geral do uso da ferramenta, nas funções de criptografia/descriptografia.

Caso tenha dúvidas ou queira se aprofundar mais sobre algum procedimento, clique nos links do texto.

gpg criptografia

Para criptografar um arquivo texto (por exemplo, ‘texto.txt’) com o uso de uma senha simples, definida durante o procedimento, use a opção ‘-c’:


gpg -c texto.txt

O comando irá lhe pedir uma senha (e confirmar, em seguida) e criar um novo arquivo, com extensão .gpg.
Se o arquivo, com esta extensão, já existir, você será avisado com a mensagem “File ‘texto.txt.gpg’ exists. Overwrite? (y/N) “.
Neste caso, tecle ‘y’ para sobrescrever ou ‘N’ para interromper a execução e voltar à linha de comando.
Leia mais sobre esta opção aqui.
Se usar ‘-e’, é possível criptografar usando a chave pública de um (ou mais) destinatário(s) — adicionando uma camada extra de proteção contra bisbilhoteiros corporativos ou governamentais.
Segue um exemplo:


gpg -e texto.txt

You did not specify a user ID. (you may use "-r")

Current recipients:

Enter the user ID.  End with an empty line: hermengardaafonso@yahoo.com.br
No such user ID.

Current recipients:
rsa2048/5ASDFS7832142418 2017-11-23 "Hermengarda Afonso" hermengardaafonso@yahoo.com.br

Enter the user ID.  End with an empty line: justincase@gmail.com

Current recipients:
rsa2048/4FE73CDD0A83E688 2017-11-23 "Justin Case justincase@gmail.com"
rsa2048/5ASDFS7832142418 2017-11-23 "Hermengarda Afonso" hermengardaafonso@yahoo.com.br

Enter the user ID.  End with an empty line:

Vamos entender o que houve aqui:

  • Você pode especificar mais de um destinatário a ter acesso ao arquivo. Digite o email dele ou dela e tecle Enter para fornecer o email do próximo.
  • Basta dar um ‘Enter’, para uma linha em branco, para o gpg entender que não há mais novos recipients a acrescentar.

Você também pode indicar o destinatário direto na linha de comando, com a opção ‘-r’:


gpg -er justincase@gmail.com texto.txt

Se quiser assinar um arquivo texto com sua chave secreta (privada), use a opção ‘-s’:


gpg -s texto.txt

Uma variante, para este comando é dado pela opção --clearsign.
Ele acrescenta a sua assinatura e mantém o arquivo legível para as pessoas que não possuem suporte ao GPG:


gpg --clearsign loremipsum.txt

cat loremipsum.txt.asc 

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

O que é o Lorem Ipsum?

 O Lorem Ipsum é um texto modelo da indústria tipográfica e de impressão. 

 O Lorem Ipsum tem vindo a ser o texto padrão usado por estas indústrias desde o ano de 1500, quando uma misturou os caracteres de um texto para criar um espécime de livro.

 Este texto não só sobreviveu 5 séculos, mas também o salto para a tipografia electrónica, mantendo-se essencialmente inalterada.

 Foi popularizada nos anos 60 com a disponibilização das folhas de Letraset, que continham passagens com Lorem Ipsum, e mais recentemente com os programas de publicação como o Aldus PageMaker que incluem versões do Lorem Ipsum.


Fonte: https://pt.lipsum.com/
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEwiKr3xCRZwLRemeMKsDy8hFgxDsFAlodsXAACgkQKsDy8hFg
xDvtCQf9EqpnF++3RbYb+LJBhlmjKdflJTg8xDX8WWFKDxL52dRHx9Hy1K7SlOo5
7gm+O38u0OVlPMx2OeUEBj9QSw9E9rKBOr/sMT2uK5ZoRDvTRXsfhcm0/oI5Xowa
9CtG2rWcH2RBZ+wiuFOQmPzMv7/T50wyx1Vxcqrw264XQ/1zPDegBajhe8CrgTXY
HbkLDfXeNBwfOY3GAvTwbRFlUa/bJ2mOxkAJyn8bynU6VaqEXKNL1rKnazHNrNwp
kHaQHw5+ZEdWzpslxPnuLblsV8XjWIsLYsCND4gZhcAA0jCTEoTWScUd3BbWBjm7
zZFvpaRT1/Rjd74cwRI3DerMT4vy/g==
=Lpy5
-----END PGP SIGNATURE----

Como é possível observar, acima, o conteúdo continua visível a qualquer. Ele foi acrescido da assinatura (PGP signature) do seu criador.
Neste caso, o procedimento pode ajudar a dar legitimidade a um arquivo ou certificar sua procedência.

O comando que segue, pode ser usado para assinar seu arquivo com sua chave privada e, em seguida, criptografá-lo com a chave pública do destinatário (recipient).


gpg -se -r justincase@email loremipsum.txt

… que irá gerar um arquivo ‘loremipsum.txt.gpg’, que poderá ser descriptografado pelo usuário (userid) justincase@email.

Ao descriptografar o arquivo ‘loremipsum.txt.gpg’, o programa irá criar um arquivo de saída, chamado ‘loremipsum.txt’.
Se você prefere que ele crie um arquivo de saída, descriptografado, com outro nome, use a opção ‘-o’:


gpg -o outroarquivo.txt loremipsum.txt.gpg

Referências

Texto sobre o Lorem Ipsum: https://pt.lipsum.com/.

Criptografe arquivos usando uma chave pública GPG

Antes de armazenar um arquivo com conteúdo sensível, convém protegê-lo com uma camada de criptografia forte.
Se você não precisa de recursos criptográficos muito fortes e se sente melhor usando a interface gráfica (GUI) do Linux, experimente usar o Xarchiver.

Neste texto vou mostrar como criptografar um arquivo (ou vários), usando uma chave pública, na linha de comando (CLI) do Linux, usando o gpg.
Depois de seguro, o arquivo pode ser armazenado em CD/DVD, em flash drive (pendrive), na nuvem etc.
É claro que você ou o destinatário precisa ter criado uma chave pública antes, a ser usada no procedimento.
No artigo como encriptar seus arquivos com gpg, ensinei uma maneira um pouquinho mais simplificada de aplicar a criptografia a arquivos, usando apenas uma senha criada na hora.
Neste texto, vamos abordar um método mais sofisticado — sob o ponto de vista da segurança.
É necessário saber o nome do arquivo e o email usado para registrar a chave pública, em questão, além da sua própria chave privada.


Tá confuso? Então leia mais sobre o gpg.

O comando para criptografar um arquivo, com o uso da sua chave pública é o seguinte:

gpg -e -r email seu-arquivo

Troque, no comando acima, “email”, pela conta de email usada para definir a public key.
No lugar de “seu-arquivo”, use o nome do arquivo a ser criptografado.
Veja um comando real:


gpg -e -r justincase@gmail.com texto.txt

Será gerado um segundo arquivo criptografado ‘texto.txt.gpg’.
Por segurança, remova o original e mantenha apenas a versão segura — com extensão .gpg.
Este arquivo pode ser guardado em segurança.

Se você deseja enviar este arquivo para alguém, deve usar a chave pública do destinatário, ou seja, informar a conta de email que este usou pra registrar sua public key.
O destinatário do arquivo poderá abri-lo usando o gpg:


gpg texto.txt.gpg

Novamente será criado um arquivo ‘texto.txt’, descriptografado.
Se for texto puro, pode ser lido com o comando cat:


cat texto.txt

criptografia com o GNUPG para iniciantes

O GNU Privacy Guard ou GnuPG (GPG ou segurança da privacidade GNU, em uma tradução livre) é um software livre desenvolvido para oferecer uma solução segura, com padrões abertos e auditáveis para criptografar dados de usuários.
Com desenvolvimento iniciado em 1997, na Alemanha, teve sua primeira versão estável lançada em 1999.
É, hoje, uma solução madura e sólida para dar mais segurança às suas informações — tanto no armazenamento, quanto no tráfego.

O GPG pode dar uma camada concreta de segurança para arquivos desde os mais simples, de texto, a pacotes volumosos de backups.
O software pode manter suas conversas por chat ou email protegidas de olhares bisbilhoteiros do governo, de grandes corporações ou dos seus concorrentes empresariais.

Usuários Linux dispõem de clientes de email com a tecnologia integrada, desde a instalação — como o Kmail (KDE) e o Evolution (GNOME).
Outros aplicativos podem receber a funcionalidade através de plugins.

Resumidamente, é uma solução para criptografar e descriptografar, além de assinar digitalmente os dados que você envia — para garantir ao recebedor que as informações estão realmente vindo de você.
Quem ainda não tem o hábito de criptografar informações sensíveis, deveria começar a levar isto a sério.
Os tempos atuais já exigem que se tenha este tipo de cuidados com os dados, seja no servidor, no computador pessoal ou do trabalho.

Este post é baseado no GNU/Linux (Debian 10 testing “Buster”, mais especificamente). Os conceitos, contudo se aplicam a qualquer outra distribuição ou sistema operacional.

É importante garantir que seus dados não serão facilmente lidos pelas pessoas erradas.

Este artigo parte do zero, ou seja, do pressuposto de que você não sabe nada sobre o GPG ainda.
Inúmeras aplicações fazem uso da criptografia com o GPG.
Na medida em que o seu conhecimento sobre o assunto for se consolidando, sua compreensão irá melhorar sobre o funcionamento deste recurso.

Neste sentido, vamos fazer um passo a passo, que começa com a instalação à geração de uma chave pública e outra privada para você usar.
Vamos começar pela linha de comando (CLI) e, em outros artigos, vou mostrar como usar a criptografia em aplicativos (CLI e GUI).
Abra o terminal!

Instalação do GnuPG

Baixe e instale o pacote de criptografia dos repositórios.
No Debian, no Ubuntu e nas outras distribuições derivadas destas, use o apt (ou apt-get):


sudo apt install gnupg

Isto é tudo o que você precisa, por enquanto.
Vamos em frente.

Como funcionam as chaves criptográficas

Tecnicamente, o gpg já está pronto para ser usado para criptografar seus arquivos.
Para usar todos os recursos do software, é necessário gerar algumas chaves criptográficas.
São duas:

  • a chave pública ou public key
  • a chave privada ou private key

É com este par de chaves que seus dados são codificados/decodificados.
Elas são associadas ao seu endereço de email.
A chave pública é a que você compartilha com as pessoas que desejam se comunicar com você, em segurança.
A chave privada, como o nome sugere, é a que só lhe diz respeito. Esta não é para ser compartilhada.
Quando você e outra pessoa trocam suas chaves públicas, podem passar a trocar mensagens privadas entre si.

Por exemplo, para enviar uma mensagem criptografada para João, é necessário que você e ele troquem chaves públicas entre si.
Então você abre o seu email (com suporte a criptografia) e digita sua mensagem para João.
Antes de enviar sua mensagem, clique no botão para criptografá-la.
A mensagem será codificada (ou embaralhada) com a chave pública de João e só ele poderá abri-la, com a chave privada dele.

Como gerar suas chaves criptográficas


Segue o passo a passo para criar seu par de chaves (pública e privada) para usar todo o potencial do GPG
No terminal rode o comando


gpg --gen-key 

gpg (GnuPG) 2.1.18; Copyright (C) 2017 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.

Note: Use "gpg --full-generate-key" for a full featured key generation dialog.

GnuPG needs to construct a user ID to identify your key.

Real name: 

O seu nome real será pedido, como primeiro requisito.
Em seguida, seu endereço de email.
Seja cuidadosa(o) e verifique se as informações estão corretas.
O gpg irá pedir para entrar uma senha (sua chave privada) — que deve ser o mais complexa possível, envolvendo caracteres alfanuméricos, números, letras alternadamente maiúsculas/minúsculas e símbolos.

O ponto mais fraco do GPG é a senha que você escolhe como chave privada. Sugiro ler sobre o uso do apg, para ajudar a gerar senhas pessoais mais seguras.

Ao confirmar, uma série de bytes aleatórios serão gerados, para compor a sua nova chave pública.
Este processo pode demorar um pouco.
É uma boa ideia manter o sistema ocupado com outras ações: usar o teclado, o mouse, abrir o conteúdo do pendrive etc. Com isto, você ajuda a “gerar ruído” a ser usado para aumentar a complexidade da sua public key.
Ao fim do processo, o gpg irá reportar a criação com sucesso da chave e exibir sua ID de chave pública, sua “impressão digital” (fingerprint), entre outras informações.

Com isto, você está pronto para os próximos passos.
Continue no terminal!

Como exportar sua chave pública

Este procedimento é muito importante.
Sem isto, não é possível às outras pessoas criptografarem mensagens exclusivas para você.
Para exportar sua chave pública, rode o seguinte comando:


gpg --armor --export seu-email > chave_publica.asc

Acima, substitua “seu-email” pelo email usado para criar a chave pública, anteriormente.
Este comando cria o arquivo chave_publica.asc (você pode usar outro nome, se quiser).
Este arquivo contém a sua chave pública. Se quiser ver o seu conteúdo, use o comando cat:


cat chave_publica.asc 

-----BEGIN PGP PUBLIC KEY BLOCK-----

PkoQEWmlxNAEllQWoHwVbXBmgi6bkB945gg6M9QNLujLgfsDY0vAgeMMxTXbAnTR
BxL+w/PikSy44CIGy9EtQ+d27PpcrLkRM/HLABEBAAG0NkVsaWFzIFNlcnJhIFBy
YWNpYW5vIFBlcmVpcmEgPGVsaWFzcHJhY2lhbm9AZ21haWwuY29tPokBVAQTAQgA
PhYhBA2NPdDX0EfJoPcb2v2mn4cCXf7cBQJaB1EEAhsDBQkDwmcABQsJCAcCBhUI
CQoLAgQWAgMBAh4BAheAAAoJEP2mn4cCXf7cLU0H/3xW3ShRh1xXGQ5NLAmAuTOl
6D8ECyQmpxdhTJaiQ2wsosnrRIBi6XNuMj5b3Mhd51pVNlMadKRIWfNs99Yjaci5
S5oQz3oHwlIZ2C/g35utcHcTpShbSBJrm3bgY+dOeXtk2M0cuKPxJ4uyLvSfgknG
x1eqF6OAKhIqHi9NC7sW5YJ3Fq4zXh0gYyVTmLQ5O5LviPOGjn+B9IMg/Ewjk/vL
8rI4w1IRuXL+BAy3RKwv4Cb0qmsu2o0WfzkAEQEAAYkBPAQYAQgAJhYhBA2NPdDX

...

6D8ECyQmpxdhTJaiQ2wsosnrRIBi6XNuMj5b3Mhd51pVNlMadKRIWfNs99Yjaci5
S5oQz3oHwlIZ2C/g35utcHcTpShbSBJrm3bgY+dOeXtk2M0cuKPxJ4uyLvSfgknG
x1eqF6OAKhIqHi9NC7sW5YJ3Fq4zXh0gYyVTmLQ5O5LviPOGjn+B9IMg/Ewjk/vL
qGuITvoL2H2C+I6Z1hxLxnFq4BciiEXpErxTk+A+HbUYSTyCf4LsjZn0vVaYpq7C
sBBsFXTMWZS1osrgvkE9K05g/yEKBYxpFVR98hSKrmxfNSL8YPnjCXQ7vn7eV5K5
-----END PGP PUBLIC KEY BLOCK-----

Se quiser, você pode inserir este conteúdo no rodapé dos seus emails. Ele é para ser compartilhado com todo mundo que deseja te enviar informações criptografadas.
Se achar mais cômodo, apenas envie o arquivo chave_publica.asc para as pessoas.

Outra solução é enviar a sua chave pública para um servidor (public key server), de forma que ela fique catalogada e possa ser acessada por qualquer pessoa no mundo que queira trocar mensagens seguras com você.
Para isto, use a opção --list-keys:


gpg --list-keys 

/home/justincase/.gnupg/pubring.kbx
-----------------------------------
pub   rsa2048 2017-11-23 [SC] [expires: 2019-11-23]
      6750982194C7BB445CE45LL0B092D0E68C08315A
uid           [ultimate] Justin Case 
sub   rsa2048 2017-11-23 [E] [expires: 2019-11-23]

Preste atenção na cadeia de caracteres na segunda linha, logo após a data de expiração. No meu caso, é a seguinte: 6750982194C7GG445CE45FF0B092D0E68C08315A.
Esta é a identificação primária (primary ID), associada à chave que será exportada.
Agora rode o seguinte comando:


gpg --keyserver pgp.mit.edu --send-keys 6750982194C7CC445CE45BB0B092D0E68C08315A

gpg: sending key 2194C7GG445CE45FF0 to hkp://pgp.mit.edu

Você já deve ter deduzido que o comando acima envia sua chave pública para armazenamento em um dos servidores do MIT. Lá, ela poderá ser acessada e baixada por qualquer um.

Como acessar a chave pública de uma pessoa

Depois de exportada, sua public key poderá ser vista e usada para criar documentos criptografados para você, a partir do servidor do MIT:

https://pgp.mit.edu/

Se a pessoa souber o seu nome ou o seu email, ela pode fazer uma busca no servidor, conforme a imagem abaixo:
elias praciano chave publica no servidor do MIT
Resultado da busca:
mit public key

Como importar a chave pública de alguém

No caminho inverso, se você quiser enviar um email com conteúdo criptografado para alguém, vai precisar da chave pública desta pessoa.
Você pode obter a chave diretamente da pessoa ou de um servidor público.
De posse da chave, é necessário “importá-la”. Veja como fazer isso.
Vamos supor que a chave esteja dentro do arquivo ‘fulano_public_key.asc’. Use ‘--import‘:


gpg --import ~/.PUBKEYS/fulano_public_key.asc

De acordo com a configuração de cada aplicativo que usa o GPG, o seu sistema vai saber aonde encontrar as chaves públicas que você tiver, aí.
Ou seja, se estiver usando o plugin Enigmail, o cliente de email Thunderbird fará uso intuitivo e automático da criptografia, quando requerido.

referências

https://pt.wikipedia.org/wiki/GNU_Privacy_Guard.

https://www.linux.com/learn/how-send-and-receive-encrypted-data-gnupg.

Criptografia para jornalistas

À medida em que forças policiais (governamentais) ganham mais poderes de invasão, no mundo todo, profissionais que lidam com informações sensíveis precisam proteger a si mesmos, suas fontes e, obviamente, a própria informação.
A criptografia, se bem aplicada, é uma ferramenta poderosa e eficiente para evitar vazamento de seus dados mais preciosos.
Sua eficiência, é preciso que se diga, precisa estar aliada a outras medidas (que não serão abordadas neste texto).
Neste post, iremos abordar algumas ferramentas e técnicas que qualquer jornalista pode usar para proteger a si e suas fontes da vigilância governamental — especialmente se estiverem trabalhando em projetos investigativos e conversando com denunciantes (whistle-blowers).

Criptografia em dispositivos móveis

Um dispositivo móvel, como um smartphone, é algo extremamente fácil de roubar.
Embora eu espere que você não carregue uma grande quantidade de documentos extensos dentro dele, é de se imaginar que ele possa conter outro tipo de informações sensíveis — fotos, contatos, históricos chats etc.
Usar um dispositivo criptografado é muito fácil e não traz impacto significativo na performance de aparelhos atuais — que usam processadores de 64 bits e com vários núcleos.

Mesmo um smartphone de entrada (popular), como o Motorola Moto E 2015, já conta com um processador 64 bit de quatro núcleos — o que satisfaz os requisitos fundamentais para usar criptografia.

Chamo a atenção para o fato de que a criptografia básica, se resume aos arquivos do aparelho (na memória interna e no cartão). Ela pode impedir o acesso aos seus arquivos, caso o aparelho seja roubado — mas não protege arquivos em trânsito ou a comunicação por voz.
O uso de aplicativos, como o Telegram, pode oferecer mais eficiência na comunicação que se deseja criptografada.

Ferramentas de criptografia de arquivos

Dotados de processadores mais robustos que os smartphones, não há desculpa para não manter seus arquivos sempre protegidos, no laptop ou PC — onde se dispõe de mais recursos do que nos dispositivos móveis.
Se o seu laptop é mais antigo e você teme impactar sua produtividade com a criptografia (que pode torná-lo mais lento), uma das opções é criptografar apenas os arquivos chave — como os seus documentos de trabalho, tais como artigos em progresso ou documentos confidenciais que você esteja transmitindo/recebendo.
Neste caso, destacam-se as ferramentas de compressão, com suporte ao padrão AES-256 de encriptação.

A segurança proporcionada pela criptografia será comprometida se você usar senhas triviais e fracas.
Leia 10 dicas para criar senhas à prova de hackers para conhecer algumas dicas dos especialistas em segurança.

Ao escolher a ferramenta de criptografia, você não pode ignorar as inúmeras tentativas da NSA, entre outras agências governamentais ou corporações, para embutir backdoors em softwares de várias empresas.
Este tipo de tentativa só pode ter sucesso em softwares de código proprietário e/ou fechado.
Ou seja, você pode estar achando que está seguro e, provavelmente, estará com seu computador escancarado ao inimigo que você deseja evitar.
Software proprietário, em termos de segurança, pode ser uma grande cilada.
Use apenas (ou o máximo possível) softwares de código aberto e livre — por que eles podem ser auditados por qualquer pessoa ou empresa (inclusive por você).
O Gnupg é um exemplo de software livre de criptografia.
É importante ter em mente que criptografar arquivos, quando se tem uma máquina conectada à Internet é muito pouco (ou nada), se você não cuidar da segurança da sua conexão.

Qualquer máquina conectada à Internet está potencialmente sob risco de ser espionada. Neste caso, quaisquer dados sensíveis pode ser acessados, antes mesmo de serem criptografados.

Uma solução para isto é ter um segundo notebook que nunca é conectado à Internet — adotada por experts renomados em segurança.
Este tipo de solução é conhecida como air-gapping.
Use o seu equipamento air-gaped para trabalhar com seus arquivos mais sensíveis, encriptando e decriptando-os em um ambiente mais seguro — evitando que massas de texto puro jamais sejam carregadas para a memória e submetidas a espionagem digital.

Acesse a internet anonimamente

Quando estamos conectados à Internet, nossa identidade pode ser revelada a partir do nosso endereço IP (Internet Protocol) único.
Cada conexão que fazemos na Internet pode ser rastreada, até chegar à nossa residência — ou qualquer outro lugar, de onde estamos nos conectando.
O significado disto é que, mesmo sendo prudente, usando encriptação, a identidade de denunciantes e daqueles com quem trabalham pode ser descoberta — ainda que não se possa ver exatamente o teor do que estão dizendo.
Diante disto, o anonimato é desejável ao navegar.
Uma das ferramentas mais simples para surfar a Internet anonimamente é o pacote de softwares Tor, que esconde sua identidade (ou seu endereço) enviando suas consultas através de nós de rede intermediários, até chegar ao destino final — e vice-versa.
Estes nós são formados por vários outros computadores, também rodando o Tor (em modo relay).

O que incomoda no Tor é o fato de um de seus principais financiadores ser o governo dos EUA e da Suécia.
Ser premiado pela Free Software Foundation (FSF) (2010), na minha opinião, contudo, depõe a favor da seriedade do projeto.

Saiba como instalar o Tor, no Ubuntu e no Debian.


Um ponto importante a ser enfatizado no uso do Tor é que, embora o tráfego de dados ocorra sob criptografia, ao sair pela “outra ponta”, ele retorna ao seu estado original — ou seja, você precisa criptografar seus dados, antes de os enviar pelo Tor.
Adquirir uma conta em um serviço de rede virtual privada ou Virtual Private Network (VPN) é uma forma de navegar na Internet anonimante.
Com o uso de uma VPN, é possível acessar sites na Internet, com um endereço IP diferente do seu computador.

Os dados são encriptados entre o seu computador e os servidores VPN. Você deve levar em conta, contudo, que este é um tipo de criptografia que a NSA mais tem trabalhado para comprometer.

Há uma gama de serviços de VPN disponíveis, com níveis diferentes de segurança.
Você precisa ter em mente, antes de jogar “todas as suas fichas” em um serviços destes é que o histórico mostra que a maioria deles entrega as informações sobre seus usuários, com qualquer pressão do governo ou das forças policiais.
Portanto, nunca use um provedor de VPN como sua única ferramenta de privacidade ou segurança.

Solução completa: TAILS

Tails GNU/Linux logo
O TAILS é um sistema operacional completo, baseado na distribuição GNU/Linux Debian.
Customizado pelo ponto de vista da segurança e da privacidade, contém as ferramentas de que falamos até agora e outras tantas.

Uma das formas mais práticas de usar o sistema operacional TAILS é dentro de um pendrive, o que te permite levá-lo aonde você for.
Quando terminar de realizar suas atividades mais sensíveis, basta remover o dispositivo e voltar a usar o seu computador normalmente.
A sua sessão com o TAILS, não deixa rastros.

Segundo alguns documentos de Snowden, a NSA tem reclamado do TAILS (por dificultar o seu trabalho).
Quando usado adequadamente, o TAILS pode ser muito eficiente na proteção dos seus dados e da sua anonimidade.
Especialistas de segurança insistem que, em um mundo ideal, todos usem criptografia. Na realidade, esta prática se encontra além das capacidades técnicas e da paciência da maioria das pessoas.
Um dos grandes desafios da gestão de segurança é equilibrar o uso dos recursos mais avançados com a praticidade de seu uso — se for muito complicado, o fato é que a maioria das pessoas vai acabar não usando.
Jornalistas preocupados com a sua segurança e a do seu trabalho devem contatar grupos ou empresas locais, que saibam trabalhar com a instalação e configuração do Linux, para obter consultoria sobre como exercer suas funções com mais segurança.

Referência

https://www.journalism.co.uk/news/encryption-for-the-working-journalist-accessing-the-internet-anonymously/s2/a580938/

Como criptografar seus arquivos com o gpg

O GnuPG, ou GPG, é uma ferramenta completa e poderosa que permite encriptar e proteger suas informações e sua comunicação.
O software oferece um sistema versátil de gestão de chaves, bem como módulos de acesso para todos os tipos de diretórios de chaves públicas.
logo do GnuPG
Neste artigo, vou mostrar como usar as opções básicas de encriptar e decriptar arquivos, na linha de comando — muito embora possa ser facilmente integrada a outras aplicações gráficas.
Por ser software livre o GnuPG respeita sua liberdade, sua privacidade e tem código aberto — que pode ser auditado.

O aplicativo vem já instalado nas grandes distribuições Linux — o que inclui o Fedora, o Ubuntu, Linux Mint, Debian etc. — e segue os padrões definidos pelo OpenPGP.

A sua distro Linux provavelmente vem com a versão clássica, disponível nos repositórios (que tem foco na portabilidade).
É possível baixar outras versões estáveis e mais avançadas, com suporte a outros recursos, no site oficial (veja os links ao final do artigo).

Mesmo que você não tenha nada a esconder, o uso de encriptação ajuda a preservar a privacidade das pessoas com quem você se comunica e dificulta a vida dos burocratas que comandam sistemas de vigilância, mundo afora.

Se você tem informações importantes a esconder — tais como dados da sua empresa, você está em boa companhia. Este é o sistema usado por Edward Snowden para esconder documentos comprometedores.

Como encriptar com o gpg

O comando pode ser usado para encriptar e decriptar eficientemente arquivos no Linux, FreeBSD e outros sistemas operacionais. Pode ser usado, também para criar assinaturas digitais.
Abra um terminal (Ctrl + Alt +T, no Ubuntu) e experimente os exemplos que seguem.
Para simplesmente criptografar um arquivo no Linux, use o gpg com a opção -c.
No exemplo, abaixo, o gpg é usado para encriptar o arquivo historico.txt:


gpg -c historico.txt

Após fornecer a senha e confirmar, o sistema irá criar um segundo arquivo historico.txt.gpg, já criptografado — este é o arquivo seguro.
gpg confirmar senha
Se este arquivo tiver informações sensíveis, é prudente apagar o original.


rm historico.txt

Tenha cuidado especial também com suas senhas.
Use senhas seguras para sua conta de usuário e senhas de frase para sua chave GnuPG secreta.
A sua senha é a parte mais frágil de todo o sistema de encriptação —. Programas de ataque por força bruta ou dicionário são fáceis de fazer e implementar.

Como decriptar um arquivo, com o gpg

Aproveitando o exemplo já dado, vou mostrar abaixo como recuperar os dados do arquivo encriptado historico.txt.gpg. É simples:


gpg historico.txt.gpg

gpg-password-decriptar-box
Diferenças entre um arquivo “normal” e criptografado:


ls -lah hist*

-rw-r--r-- 1 justincase henry 805 Jan 20 16:16 historico.txt
-rw-r--r-- 1 justincase henry 318 Jan 20 14:57 historico.txt.gpg

Se você esquecer a senha, será impossível reverter a criptografia.
O arquivo com extensão .gpg é um arquivo binário, em oposição ao original .txt.

Como usar o padrão ASCII

Você pode criar arquivos encriptados no padrão ASCII, em vez de usar o padrão OpenPGP (binário e mais seguro), com a opção -a.
Veja como:


gpg -ac historico.txt

O procedimento resultará na criação do arquivo historico.txt.asc, cujo conteúdo pode ser visto assim:


cat historico.txt.asc 

-----BEGIN PGP MESSAGE-----
Version: GnuPG v1

jA0EAwMCOg2umLcrybhgycBpiRafCJBUEyKIyDMfXzEfCd+PwJVxI/+63ypL8lFZ
7+0YgzmSee+sooLTplJGbvlAVz23Y2KCcgmOC3v0URvUkT+7qhCsWLqYP0J21Ikr
Ie3DpqYwWxi9jeZ6Ae8cQDu0tUNVDV4zyV4Oim/DQZk7WwpIXgwwjnbfHEtdLqX3
etfq5OD8FMJN2nPoigIwLF6oq3m+CWGC64BqRx8QS81qMk6W8qmssC9iFYk84Csp
jOebc98pPjnt/5tnkHuISMRicLjtWKvlok2P80Nmv6h6WjkfpMmMZ4vAlkM7GtLl
IHiU9rPp31djpwpQoNQQN8VzJxMq4IdR0JAMaOUSV/oY6Q3voJOW8NW4+sOgLqAr
Ur9Tzwn+WMOo2pxBdjZ0/xI4mG6txDy6YLlh
=Tp7M
-----END PGP MESSAGE-----

Referências