SlideShare a Scribd company logo
GPG BASICS
Carlos Perez carlos_perez@darkoperator.com
Friday, September 13, 13
WHAT IS ENCRYPTION?
• Encryption encodes and scrambles data so it is difficult to obtain the
original content unless a known secret is used to decipher it.
• The 2 main schemes of encryption are:
• Symmetric -The same cryptographic key is used for both encryption
and decryption of the data. It is the simplest form of encryption.
• Public Key - Requires two separate keys, a secret key and a public
key.Although different, the two parts of the key pair are
mathematically linked. One key locks or encrypts the data , and the
other unlocks or decrypts the data.
Friday, September 13, 13
Text
Friday, September 13, 13
PGP
• PGP Stands for Pretty Good Privacy.
• It was initially created by Phil Zimmerman in 1991
• In 1997 OpenPGP was proposed to the IETF and in 2007 and
accepted. It is currently RFC4880 http://tools.ietf.org/html/
rfc4880 and it is fo
Friday, September 13, 13
OPENPGP
• The standard covers strong public-key and symmetric cryptography to
provide security services for electronic communications and data storage.
• These services are:
• Confidentiality
• Key management
• Authentication
• Digital signatures
Friday, September 13, 13
GNUPG
• Stands for GNU Privacy Guard http://www.gnupg.org/
• Is a Free (open-source) implementation of the OpenPGP standard.
• The package is separate from any GUI and refers to the Library and
Binary tools.
• Linux - comes with all distributions
• Windows - http://www.gpg4win.org/ (Do NOT use the outlook plugin)
• OS X - https://gpgtools.org/
Friday, September 13, 13
PGP WEB OFTRUST
Friday, September 13, 13
CERTIFICATE AUTHORITY
WEB OFTRUST
Friday, September 13, 13
WHAT PGP/GPG DOES
PROVIDE
• Verification of sender.
• Encryption of data being sent.
• Trust relationship based on reputation of known persons.
• Strong protection of offline data or data at rest at other
location as long as private key is protected.
Friday, September 13, 13
WHAT PGP/GPG DOES NOT
PROVIDE
• Anonymity
• Enumeration of Metadata (Subject, Source, Destination,
Possible software version)
• Enumeration of Relations (People that trust the parties)
Friday, September 13, 13
GENERATING KEYS
• The command to generate the keys is: gpg --gen-key
• Choose key sizes larger than 1024.
• Set an expiration date for the key.
• Set a good passphrase to protect the key.
• To list the key gpg --list-keys "<your name|Email>"
Friday, September 13, 13
GENERATING KEYS
Friday, September 13, 13
GENERATING KEYS
• After generating a key pair create a revocation certificate and
save it in a safe place with gpg --output revoke.asc --
gen-revoke <keyid>
• Revocation certificate is use to revoke your key from key
servers in the case you lost your passphrase.
• A revoked key can still be used to verify old signatures, or
decrypt data, but it cannot be used to encrypt new messages
to you.
Friday, September 13, 13
GENERATING KEYS
• To list secret keys gpg --list-secret-keys
• Create a backup of your private key gpg --export-secret-key
-a "[name|email]" > private.key
• placed the backed up public and private keys in a safe place.
• To restore a private key on another machine:
• gpg --import public.key
• gpg --allow-secret-key-import --import private.key
Friday, September 13, 13
UPLOADYOUR KEYTO A
KEYSERVER
• For first time keys use a key server that verifies the email, this
applies to you and anyone you ask to generate a new key to
communicate with.
• To export a key to a server gpg --keyserver
<keyserver> --send-keys <key ID>
• To export an individual Public key for sharing gpg --armor
--export [email|name] > pubkey.asc
Friday, September 13, 13
UPLOADYOUR KEYTO A KEY
SERVER
• A recommended server is https://keyserver.pgp.com server
will validate the key via the email message in the key and will
ask for periodic confirmation.
Friday, September 13, 13
IMPORTING ANDVERIFYING A
KEY
• To download a key from a key server gpg --keyserver
<keyserver> --recv-keys <key id>
• To import an exported key gpg --import <key file>
• After we import a key the fingerprint should verified to know
if its the one we expected gpg --fingerprint "[email|
name]"
Friday, September 13, 13
IMPORTING ANDVERIFYING A
KEY
• To download a key from a key server gpg --keyserver
<keyserver> --recv-keys <key id>
• To import an exported key gpg --import <key file>
• After we import a key the fingerprint should verified to know
if its the one we expected gpg --fingerprint "[email|
name]"
Friday, September 13, 13
IMPORTING ANDVERIFYING A
KEY
• Once a key is verified you can sign it with our key, for this we
have to edit the key
• gpg --edit-key "[email|name]"
• gpg> sign
Friday, September 13, 13
REMOVING A KEY FROMTHE
KEYRING
• To remove a key a trusted source from the keyring
trustdb.gpg gpg --delete-key “[name|email]”
• To remove a secret key from secring gpg --delete-
secret-key “[name|email]”
Friday, September 13, 13
ENCRYPTING A FILE
• Encrypt symmetrically a file using a password gpg -c
filename
• Decrypt a file using a gpg -d --output <new
filename> filename
• To encrypt a file with a specific public key gpg --output
document.gpg --encrypt --recipient “[email|
name]” document.doc
Friday, September 13, 13
ENCRYPTING A FILE
Friday, September 13, 13
DECRYPTING A FILE
Friday, September 13, 13
SIGNING ANDVERIFYING A
FILE
• To generate a signature for a file gpg --output file.sig --
sign file
• To verify a signature both the sig file and the original file must
be in the same folder gpg --verify file.sig
Friday, September 13, 13
SIGNING ANDVERIFYING A
FILE
Friday, September 13, 13
LEAKINGTO MUCH
INFORMATION
Friday, September 13, 13
DISABLE COMMENT AND
VERSION INFO
• Add to your gpg.conf file the following lines:
• Disables version information
• Sets the comment to an empty string
Text
Friday, September 13, 13
THANKS
Friday, September 13, 13

More Related Content

PPTX
Firewall ppt
PDF
SSH - Secure Shell
PDF
Ceh v5 module 02 footprinting
PPTX
Snort ppt
PPTX
HAProxy
PPT
Diffie-hellman algorithm
PPTX
PDF
Introduction to Network Function Virtualization (NFV)
Firewall ppt
SSH - Secure Shell
Ceh v5 module 02 footprinting
Snort ppt
HAProxy
Diffie-hellman algorithm
Introduction to Network Function Virtualization (NFV)

What's hot (20)

PPTX
Securing management, control & data plane
PPTX
Message digest 5
PPT
Socket programming
PPTX
symmetric cipher model.pptx
PPTX
PPT
IDS and IPS
PPTX
Case Study - SUN NFS
PPT
Secure shell ppt
PDF
IT6712 lab manual
PPT
Authentication services
PPTX
Intruders in cns. Various intrusion detection and prevention technique.pptx
PPT
Arp spoofing
PPT
Web security
PPTX
Open Source Forensics
PPTX
Iptables the Linux Firewall
PPTX
01 - Introduction to Distributed Systems
PPT
Virtual private network
PPTX
Cryptography-Hash-Functions.pptx
Securing management, control & data plane
Message digest 5
Socket programming
symmetric cipher model.pptx
IDS and IPS
Case Study - SUN NFS
Secure shell ppt
IT6712 lab manual
Authentication services
Intruders in cns. Various intrusion detection and prevention technique.pptx
Arp spoofing
Web security
Open Source Forensics
Iptables the Linux Firewall
01 - Introduction to Distributed Systems
Virtual private network
Cryptography-Hash-Functions.pptx
Ad

Viewers also liked (6)

PDF
GPG Signing Git Commits
ODP
Installing Gpg
PPTX
PDF
Gnu Privacy Guard - Intro
PPTX
PGP - Pretty Good Privacy
PPTX
Pgp pretty good privacy
GPG Signing Git Commits
Installing Gpg
Gnu Privacy Guard - Intro
PGP - Pretty Good Privacy
Pgp pretty good privacy
Ad

Similar to Gpg basics (20)

PPT
email.ppt
PPT
PDF
Basics of GnuPG (gpg) command in linux
PDF
Berlinsides2017
PPTX
Mulesoft Meetup Cryptography Module
PPTX
Using pgp with mule
PPTX
Using pgp with mule
PPT
OpenPGP/GnuPG Encryption
PDF
Puppet Camp NYC 2014: Safely storing secrets and credentials in Git for use b...
PPT
Mule security - pgp
PPT
Mule security - pgp
PPT
Mule security - pgp
PDF
Crypto hlug
PPTX
Linux securities
PPTX
Pgsodium's Features: those not provided by pgcrypto and integration with rem...
 
PPTX
CryptoGraphy Module in Mulesoft
PPTX
Ahmadabad mule soft_meetup_17april2021_mule4_cryptography
PDF
FLISOL 2015 - Criptografia é importante! Aprenda meios simples de proteger ar...
PPTX
Email Security with OpenPGP - An Appetizer
email.ppt
Basics of GnuPG (gpg) command in linux
Berlinsides2017
Mulesoft Meetup Cryptography Module
Using pgp with mule
Using pgp with mule
OpenPGP/GnuPG Encryption
Puppet Camp NYC 2014: Safely storing secrets and credentials in Git for use b...
Mule security - pgp
Mule security - pgp
Mule security - pgp
Crypto hlug
Linux securities
Pgsodium's Features: those not provided by pgcrypto and integration with rem...
 
CryptoGraphy Module in Mulesoft
Ahmadabad mule soft_meetup_17april2021_mule4_cryptography
FLISOL 2015 - Criptografia é importante! Aprenda meios simples de proteger ar...
Email Security with OpenPGP - An Appetizer

Recently uploaded (20)

PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
cuic standard and advanced reporting.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Dropbox Q2 2025 Financial Results & Investor Presentation
Mobile App Security Testing_ A Comprehensive Guide.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Encapsulation_ Review paper, used for researhc scholars
Per capita expenditure prediction using model stacking based on satellite ima...
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Programs and apps: productivity, graphics, security and other tools
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Spectral efficient network and resource selection model in 5G networks
Unlocking AI with Model Context Protocol (MCP)
Digital-Transformation-Roadmap-for-Companies.pptx
A comparative analysis of optical character recognition models for extracting...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
cuic standard and advanced reporting.pdf
MIND Revenue Release Quarter 2 2025 Press Release
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf

Gpg basics

  • 1. GPG BASICS Carlos Perez carlos_perez@darkoperator.com Friday, September 13, 13
  • 2. WHAT IS ENCRYPTION? • Encryption encodes and scrambles data so it is difficult to obtain the original content unless a known secret is used to decipher it. • The 2 main schemes of encryption are: • Symmetric -The same cryptographic key is used for both encryption and decryption of the data. It is the simplest form of encryption. • Public Key - Requires two separate keys, a secret key and a public key.Although different, the two parts of the key pair are mathematically linked. One key locks or encrypts the data , and the other unlocks or decrypts the data. Friday, September 13, 13
  • 4. PGP • PGP Stands for Pretty Good Privacy. • It was initially created by Phil Zimmerman in 1991 • In 1997 OpenPGP was proposed to the IETF and in 2007 and accepted. It is currently RFC4880 http://tools.ietf.org/html/ rfc4880 and it is fo Friday, September 13, 13
  • 5. OPENPGP • The standard covers strong public-key and symmetric cryptography to provide security services for electronic communications and data storage. • These services are: • Confidentiality • Key management • Authentication • Digital signatures Friday, September 13, 13
  • 6. GNUPG • Stands for GNU Privacy Guard http://www.gnupg.org/ • Is a Free (open-source) implementation of the OpenPGP standard. • The package is separate from any GUI and refers to the Library and Binary tools. • Linux - comes with all distributions • Windows - http://www.gpg4win.org/ (Do NOT use the outlook plugin) • OS X - https://gpgtools.org/ Friday, September 13, 13
  • 7. PGP WEB OFTRUST Friday, September 13, 13
  • 9. WHAT PGP/GPG DOES PROVIDE • Verification of sender. • Encryption of data being sent. • Trust relationship based on reputation of known persons. • Strong protection of offline data or data at rest at other location as long as private key is protected. Friday, September 13, 13
  • 10. WHAT PGP/GPG DOES NOT PROVIDE • Anonymity • Enumeration of Metadata (Subject, Source, Destination, Possible software version) • Enumeration of Relations (People that trust the parties) Friday, September 13, 13
  • 11. GENERATING KEYS • The command to generate the keys is: gpg --gen-key • Choose key sizes larger than 1024. • Set an expiration date for the key. • Set a good passphrase to protect the key. • To list the key gpg --list-keys "<your name|Email>" Friday, September 13, 13
  • 13. GENERATING KEYS • After generating a key pair create a revocation certificate and save it in a safe place with gpg --output revoke.asc -- gen-revoke <keyid> • Revocation certificate is use to revoke your key from key servers in the case you lost your passphrase. • A revoked key can still be used to verify old signatures, or decrypt data, but it cannot be used to encrypt new messages to you. Friday, September 13, 13
  • 14. GENERATING KEYS • To list secret keys gpg --list-secret-keys • Create a backup of your private key gpg --export-secret-key -a "[name|email]" > private.key • placed the backed up public and private keys in a safe place. • To restore a private key on another machine: • gpg --import public.key • gpg --allow-secret-key-import --import private.key Friday, September 13, 13
  • 15. UPLOADYOUR KEYTO A KEYSERVER • For first time keys use a key server that verifies the email, this applies to you and anyone you ask to generate a new key to communicate with. • To export a key to a server gpg --keyserver <keyserver> --send-keys <key ID> • To export an individual Public key for sharing gpg --armor --export [email|name] > pubkey.asc Friday, September 13, 13
  • 16. UPLOADYOUR KEYTO A KEY SERVER • A recommended server is https://keyserver.pgp.com server will validate the key via the email message in the key and will ask for periodic confirmation. Friday, September 13, 13
  • 17. IMPORTING ANDVERIFYING A KEY • To download a key from a key server gpg --keyserver <keyserver> --recv-keys <key id> • To import an exported key gpg --import <key file> • After we import a key the fingerprint should verified to know if its the one we expected gpg --fingerprint "[email| name]" Friday, September 13, 13
  • 18. IMPORTING ANDVERIFYING A KEY • To download a key from a key server gpg --keyserver <keyserver> --recv-keys <key id> • To import an exported key gpg --import <key file> • After we import a key the fingerprint should verified to know if its the one we expected gpg --fingerprint "[email| name]" Friday, September 13, 13
  • 19. IMPORTING ANDVERIFYING A KEY • Once a key is verified you can sign it with our key, for this we have to edit the key • gpg --edit-key "[email|name]" • gpg> sign Friday, September 13, 13
  • 20. REMOVING A KEY FROMTHE KEYRING • To remove a key a trusted source from the keyring trustdb.gpg gpg --delete-key “[name|email]” • To remove a secret key from secring gpg --delete- secret-key “[name|email]” Friday, September 13, 13
  • 21. ENCRYPTING A FILE • Encrypt symmetrically a file using a password gpg -c filename • Decrypt a file using a gpg -d --output <new filename> filename • To encrypt a file with a specific public key gpg --output document.gpg --encrypt --recipient “[email| name]” document.doc Friday, September 13, 13
  • 22. ENCRYPTING A FILE Friday, September 13, 13
  • 23. DECRYPTING A FILE Friday, September 13, 13
  • 24. SIGNING ANDVERIFYING A FILE • To generate a signature for a file gpg --output file.sig -- sign file • To verify a signature both the sig file and the original file must be in the same folder gpg --verify file.sig Friday, September 13, 13
  • 27. DISABLE COMMENT AND VERSION INFO • Add to your gpg.conf file the following lines: • Disables version information • Sets the comment to an empty string Text Friday, September 13, 13