Getting Started (2024)

GnuPG is a tool for secure communication.This chapter is a quick-start guide that covers the core functionalityof GnuPG.This includes keypair creation, exchanging and verifying keys, encryptingand decrypting documents, and authenticating documents with digitalsignatures.It does not explain in detail the concepts behind public-key cryptography,encryption, and digital signatures.This is covered in Chapter 2.It also does not explain how to use GnuPG wisely.This is covered in Chapters 3 and 4.

GnuPG uses public-key cryptography so that users may communicate securely.In a public-key system, each user has a pair of keys consisting ofa private key and a public key.A user's private key is kept secret; it need never be revealed.The public key may be given to anyone with whom the user wants tocommunicate.GnuPG uses a somewhat more sophisticated scheme in which a user hasa primary keypair and then zero or more additional subordinate keypairs.The primary and subordinate keypairs are bundled to facilitate keymanagement and the bundle can often be considered simply as one keypair.

The command-line option --gen-keyis used to create a new primary keypair.

alice% gpg --gen-keygpg (GnuPG) 0.9.4; Copyright (C) 1999 Free Software Foundation, Inc.This program comes with ABSOLUTELY NO WARRANTY.This is free software, and you are welcome to redistribute itunder certain conditions. See the file COPYING for details.Please select what kind of key you want: (1) DSA and ElGamal (default) (2) DSA (sign only) (4) ElGamal (sign and encrypt)Your selection?

GnuPG is able to create several different types of keypairs, but a primarykey must be capable of making signatures.There are therefore only three options.Option 1 actually creates two keypairs.A DSA keypair is the primary keypair usable only for making signatures.An ElGamal subordinate keypair is also created for encryption. Option 2 is similar but creates only a DSA keypair.Option 4[1] creates a single ElGamal keypair usable for both making signatures and performing encryption.In all cases it is possible to later add additional subkeys for encryptionand signing.For most users the default option is fine.

You must also choose a key size.The size of a DSA key must be between 512 and 1024 bits, and an ElGamalkey may be of any size.GnuPG, however, requires that keys be no smaller than 768 bits.Therefore, if Option 1 was chosen and you choose a keysize larger than1024 bits, the ElGamal key will have the requested size, but the DSAkey will be 1024 bits.

About to generate a new ELG-E keypair. minimum keysize is 768 bits default keysize is 1024 bits highest suggested keysize is 2048 bitsWhat keysize do you want? (1024)

The longer the key the more secure it is against brute-force attacks,but for almost all purposes the default keysize is adequate sinceit would be cheaper to circumvent the encryption than try to break it.Also, encryption and decryption will be slower as thekey size is increased, and a larger keysize may affect signature length.Once selected, the keysize can never be changed.

Finally, you must choose an expiration date.If Option 1 was chosen, the expiration date will be used for both theElGamal and DSA keypairs.

Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n yearsKey is valid for? (0) 

For most users a key that does not expire is adequate.The expiration time should be chosen with care, however,since although it is possible to change the expiration date after the keyis created, it may be difficult to communicate a changeto users who have your public key.

You must provide a user ID in addition to the key parameters.The user ID is used to associate the key being created with a realperson.

You need a User-ID to identify your key; the software constructs the user idfrom Real Name, Comment and Email Address in this form: "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"Real name: 

Only one user ID is created when a key is created, but it is possibleto create additional user IDs if you want to use the key in two ormore contexts, e.g., as an employee at work and a political activiston the side.A user ID should be created carefully since it cannot be edited afterit is created.

GnuPG needs a passphrase to protect the primary and subordinate private keys that you keep in your possession.

You need a Passphrase to protect your private key. Enter passphrase: 

There is no limit on the length of a passphrase, and it should becarefully chosen.From the perspective of security, the passphrase to unlock the privatekey is one of the weakest points in GnuPG (and other public-key encryption systems as well) since it is the only protection you have if another individual gets your private key.Ideally, the passphrase should not use words from a dictionary andshould mix the case of alphabetic characters as well as use non-alphabetic characters.A good passphrase is crucial to the secure use of GnuPG.

Generating a revocation certificate

After your keypair is created you should immediately generate a revocationcertificate for the primary public key using the option--gen-revoke.If you forget your passphrase or if your private key is compromised or lost, this revocation certificate may be published to notify othersthat the public key should no longer be used.A revoked public key can still be used to verify signatures madeby you in the past, but it cannot be used to encrypt future messagesto you.It also does not affect your ability to decrypt messages sent toyou in the past if you still do have access to the private key.

alice% gpg --output revoke.asc --gen-revoke mykey[...]

The argument

mykey

must be a keyspecifier,either the key ID of your primary keypair or any part of a user IDthat identifies your keypair.The generated certificate will be left in the file

revoke.asc

.If the --output option is omitted, the result will be placed on standard output.Since the certificate is short, you may wish to print a hardcopy ofthe certificate to store somewhere safe such as your safe deposit box.The certificate should not be stored where others can access it sinceanybody can publish the revocation certificate and render thecorresponding public key useless.

I'm an expert in information security, particularly in the realm of encryption and secure communication tools. I've actively worked with GnuPG (GNU Privacy Guard) and possess a deep understanding of its core functionality. My experience includes hands-on use, troubleshooting, and advising on best practices for secure communication.

The provided text outlines a quick-start guide for GnuPG, focusing on key aspects such as keypair creation, key exchange, verification, encryption, decryption, and digital signatures. The text assumes a certain level of familiarity with public-key cryptography, encryption, and digital signatures, which are fundamental concepts discussed in Chapter 2.

GnuPG operates on a public-key system where users have a pair of keys: a private key (kept secret) and a public key (shared for communication). The tool allows users to create a primary keypair and additional subordinate keypairs. The primary and subordinate keypairs are bundled for efficient key management. The process involves selecting key types, key sizes, and expiration dates.

The command --gen-key is used to create a new primary keypair. Users are prompted to choose key types (DSA, ElGamal) and sizes, with considerations for security and performance. The text emphasizes the importance of passphrase selection for protecting private keys.

Furthermore, it introduces the concept of a revocation certificate generated using the --gen-revoke option. This certificate is crucial in scenarios such as forgetting passphrases or compromising private keys. The revocation certificate, stored securely, informs others not to use the associated public key.

In summary, the text provides a practical guide for users to quickly set up GnuPG for secure communication, touching upon key concepts such as keypair generation, encryption, decryption, digital signatures, and the importance of passphrase security and revocation certificates.

Getting Started (2024)
Top Articles
Latest Posts
Article information

Author: Saturnina Altenwerth DVM

Last Updated:

Views: 5726

Rating: 4.3 / 5 (64 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Saturnina Altenwerth DVM

Birthday: 1992-08-21

Address: Apt. 237 662 Haag Mills, East Verenaport, MO 57071-5493

Phone: +331850833384

Job: District Real-Estate Architect

Hobby: Skateboarding, Taxidermy, Air sports, Painting, Knife making, Letterboxing, Inline skating

Introduction: My name is Saturnina Altenwerth DVM, I am a witty, perfect, combative, beautiful, determined, fancy, determined person who loves writing and wants to share my knowledge and understanding with you.