ᓚ₍ ^. .^₎ Pretty Good Privacy

[0x1] Como PGP Funciona? [0x2] Exemplos [1x0] Como utilizar GPG [1x1] Utilizar Suas Chaves [1x2] Assinar E Criptografar [2x0] Finalização

Olá gente, hoje venho ensinar para vocês e apresentar o metodo de mandar arquivos/mensagem mais seguro e confiavel que eu utilizo no Dia a Dia o PGP O PGP (Pretty Good Privacy) é um programa de criptografia amplamente utilizado para proteger a privacidade e a segurança de comunicações e de arquivos.

Desenvolvido por Phill Zimmermann em 1991, o PGP permite que usuários criptografem e assinem coisas como: mensagens, arquivos e e-mails Garantindo que apenas os destinatários autorizados possam acessar o conteúdo. Mas como isso é possivel? bom vou explicar isso nesse post de uma maneira facil de entender.

───────────────── Como PGP Funciona? [ 0x1 ]

O PGP ele utiliza uma combinação de criptografia simétrica e assimétrica, Mas Oque Seria isso? Bom resumidamente, criptografia simétrica usa uma chave para criptografar e descriptografar dados é Rapido e eficiente, mas exige que a chave seja compartilhada de uma forma segura.

──── Criptografia simétrica ────────────────────────────────── ── “Hii :3” ── ── Criptografado ── ── “Hii :3” ── Chave Chave ────────────────────────────────── Por Outro lado, Criptografia Assimétrica Utiliza um par de chaves: Uma Chave Pública que é utilizada Apenas para Criptografar arquivos, E Uma Chave Privada que é utilizada Apenas para Descriptografá-las. A Chave Publica Pode ser repassada para qualquer pessoa, ja a sua chave Privada tem que ser mantida em Segurança maxima!

──── Criptografia Assimétrica ────────────────────────────────── ── “Hellow” ── ── Criptografado ── ── “Hellow” ── Chave Publica Chave Privada ──────────────────────────────────

Mas, bom, uma das coisas que faz eu utilizar o PGP são os seus vários exemplos de como o PGP fez o seu trabalho protegendo o conteúdo sensível de mensagens, sendo algo que nem mesmo governos ou agências poderosas conseguiram quebrar a criptografia.

Aqui estão exemplos de pessoas famosas que usaram PGP para se proteger e manter suas comunicações seguras usando PGP

───────────────── Exemplos [ 0x2 ]

── Edward Snowden Edward Snowden, famoso por ser o delator americano que, enquanto trabalhava na NSA, a Agência de Segurança dos Estados Unidos, revelou o maior esquema de vigilância global. Feito pelos Estados Unidos, esse esquema tinha planos de se expandir para outros países vizinhos Graças à criptografia PGP e outros métodos de segurança, ele conseguiu contatar dois jornalistas. Ambos tiveram que aprender a usar PGP para que pudessem enviar provas e mensagens de maneira segura. E, mesmo assim, ele pediu para que ambos se encontrassem em Hong Kong, em julho de 2013.
────────────

── Julian Assange

Julian Assange, criador do WikiLeaks, desenvolveu um refúgio onde jornalistas podiam enviar provas e documentos que revelavam crimes cometidos pelo Estado incluindo crimes de guerra, assassinatos e censura. Em seu site, jornalistas podiam enviar seus relatos sem problemas, pois a plataforma operava por meio do TOR e PGP garantindo que todas as mensagens e arquivos fossem transmitidos de forma segura. Além disso, esses mecanismos impediam que governos removessem o site da internet ou interferissem nas mensagens. ────────────

── Ross Ulbricht (Dread Pirate Roberts)

Ross Ulbricht, conhecido pelo pseudônimo “Dread Pirate Roberts”, foi o criador do Silk Road um dos maiores mercados online da dark web. Lançado em 2011, o site operava através da rede TOR Permitindo que usuários comprassem e vendessem produtos anonimamente, principalmente drogas ilícitas. Para garantir a segurança e o sigilo das comunicações dentro do Silk Road Ulbricht utilizava Do PGP. Fazendo Com que as mensagens e transações fossem protegidas contra interceptações, garantindo que apenas o destinatário legítimo pudesse ler as informações. A combinação do TOR com a criptografia PGP tornou o Silk Road extremamente difícil de rastrear, permitindo que o mercado clandestino funcionasse por mais de dois anos antes de ser desmantelado pelo FBI em 2013.

───────────────── Como Utilizar GPG [ 1x0 ]

Bom Agora vou mostrar para vocês como você pode usar PGP para suas mensagens e arquivos. No Linux Você Pode usar gerenciadores como GPG (Gnu Privacy Guard), E Para Baixar caso não tiver Instalado, instale usando: sudo apt install gpg logo após baixar, vamos criar um par de chaves para utilizar para criptografar nossos arquivos para isso vamos utilizar o comando: gpg --full-gen-key logo apos, vamos ter que responder algumas perguntas para criar nosso par de chaves, sendo a primeira delas:

──── gpg1.png ────────────────────────────────── ────────────────────────────────────────

Nossa primeira pergunta seria o tipo de criptografia que pode ser usada nas chaves podendo ser:

────────────────────────────────────────

Opção Assinatura Criptografia Eficiência
RSA and RSA Sim Sim Média
DSA + Elgamal Sim Sim Baixa
DSA only Sim Não Alta
RSA only Sim Não Média
ECC (default) Sim Sim Alta
ECC (sign) Sim Não Alta
Card Key Sim Sim/Não Variável

──────────────────────────────────────── Cada uma delas tem suas vantagens e desvantagens, porém eu sempre escolho ECC por além de ser uma escolha padrão para o gpg, ele é uma junção excelente em eficiência e segurança Fora que RSA-1024 pode ser quebrado em ataques de força bruta (porém é muito caro) E ECC é um tipo de criptografia assimétrica que faz as mesmas coisas que RSA/DSA mas de forma mais eficiente e é utilizado em vários sistemas como a própria blockchain e o SSH Bom após selecionar nosso tipo podemos escolher o tipo de curva elípticas entre elas estão as seguintes:

Opção Tipos Bits Eficiência
Curve25519 EdDSA 256 128 bits
NIST P-384 ECDSA 389 129 bits
Brainpool P256 ECDSA 256 128 bits


//Quanto mais alto os Bits e a eficiência maior será a segurança ────────────────────────────────────────

Aqui temos esses 3 no GPG para escolher, NIST P-384 é considerada uma muito segura porém mais lenta e o tamanho das chaves são mais grandes. Curve e Brainpool são alternativas praticamente iguais. Nesse caso eu vou escolher a que o próprio GPG me recomenda que é a Curve25519. Após isso vai vir a pergunta que é muito importante a validade da chave Isso é importante para você ter uma segurança mais ativa e mitigar certos perigos isso ajuda você a mitigar coisas como vazamentos e uso impróprio para sua chave pois ela terá uma data de validade, assim podendo ter um controle e segurança sobre isso.

Para mim que sou uma pessoa eu sempre deixo a data de validade dela de 1 Ano. Pois anualmente terei que fazer a troca para atualizar a segurança e assim ter mais controle delas. Porém Existem casos e casos, para pessoas que se sentem seguras em não deixar validade nelas vai em frente, porém lembre-se que isso não é muito recomendado por mim. Eu selecionei que a validade da minha chave seja de 1 ano, Logo Após confirmar, vamos responder o questionário de dados sobre a chave sendo eles:

Preenchendo eles, haverá uma dupla confirmação para você ter certeza que tudo está em ordem.

Logo Após isso vai aparecer dependendo se você estiver usando uma DE ou apenas no terminal um prompt exigindo você a digitar uma senha para sua chave gpg, aqui está uma parte crucial.

a senha que você vai colocar aí, será a senha que você vai ter que utilizar a cada ação feita com sua chave privada, assinatura, criptografia, e outras coisas precisará da sua senha. Sem ela a chave fica praticamente inútil, por isso temos que criar com cuidado ao criar e sempre pensar em senhas fortes, longas e memorizáveis.

//Lembre-se Quanto maior a Senha Mais forte sera!

Bom, Após isso esperamos ele criar nossa chave usando a entropia de nosso computador e depois de alguns segundos, temos nosso par de chaves criadas Agora irei ensinar a vocês como utilizar nossas chaves pelo GPG.
── Utilizar Suas Chaves [ 1x1 ]
Bom temos varias coisas para explorar, mais primeiro vou mostrar como compartilhar sua chave publica para isso vamos utilizar o comando: gpg –list-keys

──── gpg-keys.png ────────────────────────────────── ────────────────────────────────────────

Assim vemos algumas infomações sendo elas:

├──pub - Seção da chave PUBLICA │ ├─ed25519 - Algoritimo usado, nesse caso ECC │ ├─2025-10-02 - Data de criação │ ├─[SC] - Capacidades: Sign (Assinar) + Certify (Certificar) │ ├─expires:… - Data de Expiração, Nesse caso em 2026-10-02 │ └─0D82…BE0B - ID Da Chave (Fingerprint) │ ├──uid - Seção da identidade │ ├─[ultimate] - Maximo nivel de confiança (Pois quem criou foi você) │ ├─Bog Bezumiya - Nome do Dono │ ├─(Minha chave :3) Comentario │ └─bezumiya@riseup.net - E-Mail ├──sub - Seção da Subchave │ ├─cv25519 - Algoritmo ECC para criptografia │ └─[E] - Apenas criptografia

Bom Explicado tudo isso vamos exportar nossa chave utilizando o comando: gpg --export --armor ID-DA-CHAVE o “–armor” serve para a saida da exportação sair algo assim:

──── export-pub-key.png ────────────────────────────────── ────────────────────────────────────────

Assim exportada podera ser enviada para qualquer um para ser utilizada para:


── Assinar E Criptografar [ 1x2 ]

Bom, Vamos entrar em um caso aonde eu enviei minha chave Publica para um amigo E nosso amigo Baixou ela e importou utilizando o comando: gpg --import nome-do-arquivo.asc. para ele encriptar algum arquivo utilizando essa chave ele vai ter que fazer o seguinte comando:

gpg --encrypt --armor -r bezumiya@riseup.net message.txt

Assim vai ser criado um arquivo com o nome message.txt.asc

──── message.txt.asc.png ────────────────────────────────── ────────────────────────────────────────

Bom com o arquivo encriptado meu amigo pode me mandar o arquivo encriptado (Via email por exemplo) e Descriptografar utilizando:

gpg --decrypt message.txt.asc

Assim vai aparecer um prompt pedindo para colocar a senha da nossa chave privada! Logo após digitar o conteudo sera revelado do arquivo sera revelado na tela.

──── hellow.png ────────────────────────────────── ────────────────────────────────────────

Bom também podemos além de criptografar arquivos e mensagens, assinar mensagens com nossa chave privada E amigos e pessoas validarem a assinatura com nossa chave pública.

no gpg Existem vários tipos de assinatura, irei mostrar 2 que eu utilizo muito para arquivos e mensagens. Para mensagens como meu caso é um arquivo de texto com uma mensagem, utilizamos o --clearsign. onde vai ser criado um arquivo .asc com o conteúdo da mensagem e a assinatura logo abaixo, assim sendo apenas um arquivo. e o --detach-sign é utilizado para criar um arquivo .sig com a assinatura separadamente.

Nesse caso estarei utilizando o --clearsign já que se trata de um arquivo txt com o conteúdo apenas informativo. então eu vou utilizar o comando gpg --clearsign carta.txt e logo após teremos o resultado em um arquivo .asc

──── carta.txt.asc.png ────────────────────────────────── ────────────────────────────────────────

Assim assinada pessoas podem verificar se a assinatura é legitima ou não, qualquer modificação no conteudo do arquivo faz a assinatura ser invalidada, fazendo o conteudo ser 100% original e confiavel.

──── carta.txt.asc.png ────────────────────────────────── ────────────────────────────────────────

Ok, agora como todos podem descobrir qual é minha chave publica? sem que eu precise enviar ela?

Oh! claro, para isso temos no GPG a opção para Divulgar sua chave publica. Para isso vamos utilizar o comando gpg --keyserver keys.openpgp.org --send-keys ID-DA-CHAVE assim estaremos enviar a nossa chave para o servidor openpgp, assim caso alguem busque pelo nosso e-mail por la ira retornar nossa chave publica

───────────────── Finalização [ 2x0 ]

E assim mais um post sobre Privacidade chega ao fim :) Espero ter ajudado e explicado a vocês um pouco sobre PGP e suas utilidades nesse mundo digital Lembre-se que minha chave publica esta no blog para qualquer um enviar uma mensagem privada para mim

Bezumiya button
Em breve... Bezumiya blinkie