GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment générer des clés PGP à l'aide de GPG sous Linux

Comment générer des clés PGP avec GPG sous Linux

L'application GNU Privacy Guard vous permet de chiffrer et de déchiffrer des informations, de créer des clés de chiffrement publiques et privées et d'utiliser ou de vérifier des signatures numériques. GPG est basé sur l'utilisation d'une paire de clés, une publique et une privée (ou « secrète »). Les données chiffrées avec une clé ne peuvent être déchiffrées qu'avec l'autre. Pour chiffrer un message qui vous est adressé, quelqu'un utiliserait votre clé publique pour créer un message qui ne pourrait être déverrouillé qu'avec votre clé privée. Pour signer des informations, vous les verrouillez avec votre clé privée, permettant à quiconque de vérifier qu'elles proviennent de vous en les déverrouillant avec votre clé publique.

GPG propose des dizaines d'options supplémentaires qui affinent ses options disponibles. Dans cet article, nous verrons comment générer des clés PGP à l'aide de GPG sous Linux.

Étape 1 :Confirmer la version GPG.

# gpg --help

gpg (GnuPG) 1.4.5
Copyright (C) 2006 Free Software Foundation, Inc.

Étape 2 :démarrez le processus de génération de clé. Saisissez la commande suivante pour commencer à générer votre clé :

gpg --gen-key

Select the type of key

Please select what kind of key you want:
(1) DSA and Elgamal (default)
(2) DSA (sign only)
(5) RSA (sign only)      ## SELECT THIS OPTION
Your selection? 5

Select the key size

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 2048

Requested keysize is 2048 bits

Select the expiration time

Please specify how long the key should be valid.
0 = key does not expire                 ## SELECT THIS OPTION
 = key expires in n days
w = key expires in n weeks
m = key expires in n months
y = key expires in n years
Key is valid for? (0) 0

Key does not expire at all

Is this correct? (y/N) y

Enter user name and email

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: 

"[NAME]" (xyz-comment) [USERNAME]@[DOMAIN_NAME].com"

Real name: [Name]
Email address: [USERNAME]@[DOMAIN_NAME].com
Comment: comment
You selected this USER-ID:
"[Name] (comment) [USERNAME]@[DOMAIN_NAME].com"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O

Enter passphrase to protect secret key

You need a Passphrase to protect your secret key.

Enter passphrase: *******
Repeat passphrase: *******

We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy.

You may see the following message. If you do, follow the instructions and the key generation process will start automatically.

Not enough random bytes available. Please do some other work to give the OS a chance to collect more entropy! (Need 284 more bytes)

..+++++
...+++++
gpg: key F709C771 marked as ultimately trusted
public and secret key created and signed

gpg: checking the trustdb
gpg: 3 marginal(s) needed. 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0m, 0n, 0f, 1u
pub: 2048R/F709C771 2015-05-27
key fingerprint = BDC2 5293 DB14 C218 D2DA 711C EB0A 564A F709 C771
uid [Name] (comment) [USERNAME]@[DOMAIN_NAME].com

Notez que cette clé ne peut pas être utilisée pour le chiffrement. Vous pouvez utiliser la commande "–edit-key ” pour générer une sous-clé à cet effet. La génération de clé est terminée. À ce stade, vous avez généré une paire de clés privée/publique avec une clé publique pouvant être utilisée à des fins de signature. L'étape suivante consiste à ajouter une sous-clé qui sera utilisée pour le chiffrement.

Étape 3 :Ajoutez une sous-clé pour le chiffrement. Saisissez la commande suivante pour commencer à générer votre clé :

# gpg --edit-key '[NAME]'
gpg (GnuPG) 1.4.5; 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.

Secret key is available.

pub 2048R/F709C771 created: 2015-05-27 expires: never usage: SC
trust: ultimate validity: ultimate
[ultimate] (1). [Name] (comment) [USERNAME]@[DOMAIN_NAME].com

Enter the edit-key command

Command> addkey

Key is protected.

Enter the passphrase you specified in step 2

You need a passphrase to unlock the secret key for
user: "[NAME] (comment) [USERNAME]@[DOMAIN_NAME].com"
2048-bit RSA key, ID F709C771, created 2015-05-27

Enter passphrase: *******

user: "[Name] (comment) [USERNAME]@[DOMAIN_NAME].com"
2048-bit RSA key, ID F709C771, created 2015-05-27

Select the type of key

Please select what kind of key you want:
(2) DSA (sign only)
(4) Elgamal (encrypt only)
(5) RSA (sign only)
(6) RSA (encrypt only)              ## SELECT THIS OPTION
Your selection? 6

Select the key size

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 2048

Requested keysize is 2048 bits

Select the expiration time

Please specify how long the key should be valid.
0 = key does not expire       ## SELECT THIS OPTION
 = key expires in n days
w = key expires in n weeks
m = key expires in n months
y = key expires in n years
Key is valid for? (0) 0

Key does not expire at all
Is this correct? (y/N) Y
Really create? (y/N) Y

Nous devons générer beaucoup d'octets aléatoires. C'est une bonne idée d'effectuer une autre action (taper au clavier, déplacer la souris, utiliser les disques) pendant la génération principale; cela donne au générateur de nombres aléatoires une meilleure chance d'obtenir suffisamment d'entropie.

Vous pouvez voir le message suivant. Si vous le faites, suivez les instructions et le processus de génération de sous-clé démarrera automatiquement.

Not enough random bytes available. Please do some other work to give the OS a chance to collect more entropy! (Need 277 more bytes)

..........+++++
..........+++++

pub 2048R/F709C771 created: 2015-05-27 expires: never usage: SC
trust: ultimate validity: ultimate
sub 2048R/13DA9D02 created: 2015-05-27 expires: never usage: E
[ultimate] (1). [Name] (comment) [USERNAME]@[DOMAIN_NAME].com

Note, pub is for signing (SC), sub is for encryption (E)

Exit the edit-key editor and save your changes

Command> q
Save changes? (y/N) y

La génération de la sous-clé à des fins de chiffrement est terminée. L'étape suivante consiste à vérifier et exporter les clés.

Étape 4 :Listez vos clés. Entrez la commande suivante pour lister la clé sur votre trousseau :

# gpg -k
/home/[USERNAME]/.gnupg/pubring.gpg
--------------------------------
pub 2048R/F709C771 2015-05-27
uid Your [NAME] (comment) [USERNAME]@[DOMAIN_NAME].com
sub 2048R/13DA9D02 2015-05-27

Étape 5 – Exportez la clé publique (y compris la sous-clé) au format ASCII. Saisissez la commande suivante pour lister les clés :

# gpg --armor --output [Name]-pub-sub.asc --export '[Name]'
# cat [NAME]-pub-sub.asc

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.5 (GNU/Linux)

“[.......Removed the PGP KEY...... ]”

-----END PGP PUBLIC KEY BLOCK-----


Cent OS
  1. Comment configurer les clés SSH à l'aide de cPanel

  2. Comment générer une clé SSH sur un serveur dédié Linux ?

  3. Comment générer une demande de signature de certificat (CSR) sous Linux

  4. Comment chiffrer et déchiffrer un fichier à l'aide de GnuPG sous Linux

  5. Comment créer (et publier) une clé PGP sous Linux à l'aide d'une interface graphique

Comment générer une clé SSH dans CentOS 8

Comment configurer des clés SSH sur Debian 11 Linux

Comment générer et utiliser une clé SSH avec PuTTY

Comment générer et utiliser la clé SSH dans le système Linux ?

Générer des clés RSA avec SSH en utilisant PuTTYgen

Comment générer une clé pré-partagée forte sous Linux