Je veux générer des paires de clés privées publiques GnuPG. J'ai gpg
et pas gpg2
installé. Je suis donc allé au terminal et j'ai fait:
gpg --gen-key
production:
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
J'ai sélectionné 1
Production:
What keysize do you want? (2048)
J'ai sélectionné 4096
Production:
Key is valid for? (0)
J'ai sélectionné 0
Production:
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 Title (some comment) <[email protected]>"
Real name: My Name
Email address: [email protected]
Comment: comment
You selected this USER-ID:
"My Name (comment) <[email protected]>"
Production:
You need a Passphrase to protect your secret key.
J'ai donné un mot de passe de sortie:
gpg: key XXXXXXXL marked as ultimately trusted
public and secret key created and signed.
pub ABCDE/XXXXXXXL 2016-06-09
Key fingerprint = XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXXL
uid My Name (comment) <[email protected]>
sub ABCDE/XXXXXXXM 2016-06-09
J'ai ajouté la ligne suivante à mon ~/.profile
:
export GPGKEY=XXXXXXXM
Ensuite, je l'ai fait
killall -q gpg-agent
eval $(gpg-agent --daemon)
export GPGKEY=XXXXXXXM
Ensuite, je l'ai chiffré:
gpg --cert-digest-algo=SHA256 --edit-key XXXXXXXM
Production:
Secret key is available.
pub ABCDE/XXXXXXXM created: 2016-06-09 expires: never usage: SC
trust: ultimate validity: ultimate
[ultimate] (1). My Name (comment) <[email protected]>
Command>
J'ai fait
addkey
Production:
Please select what kind of key you want:
(2) DSA (sign only)
(4) Elgamal (encrypt only)
(5) RSA (sign only)
(6) RSA (encrypt only)
J'ai sélectionné 6
Production:
What keysize do you want? (2048)
J'ai sélectionné 4096
Production:
Key is valid for? (0)
J'ai sélectionné 0
Production:
pub ABCDE/XXXXXXXL created: 2016-06-09 expires: never usage: SC
trust: ultimate validity: ultimate
sub ABCDE/XXXXXXXM created: 2016-06-09 expires: never
sub ABCDE/XXXXXXXN created: 2016-06-09 expires: never usage: E
[ultimate] (1). My Name (comment) <[email protected]>
Command>
J'ai fait:
save
Ensuite, j'ai fait:
gpg --list-keys
Voici mon exemple de sortie:
pub ABCDE/XXXXXXXL 2016-06-09
uid My Name (comment) <[email protected]>
sub ABCDE/XXXXXXXM 2016-06-09
sub ABCDE/XXXXXXXN 2016-06-10
Mais quand je fais
`gpg --list-secret-keys`
J'obtiens de-à-de la même sortie à l'exception de sec au lieu de pub:
sec ABCDE/XXXXXXXL 2016-06-09
uid My Name (comment) <[email protected]>
sub ABCDE/XXXXXXXM 2016-06-09
sub ABCDE/XXXXXXXN 2016-06-10
Je sais que la portion après pub ABCDE/
est la clé publique et la partie après sec ABCDE/
est la clé privée. Bref, ma clé publique et ma clé privée sont les mêmes.
Un autre scénario particulier est qu'ici trois lignes commencent par ABCDE
, mais la combinaison doit être différente.
Comment obtenir des clés publiques et privées distinctes?
Finalement, j'ai réussi à résoudre mon problème. Bien que d'une manière différente.
J'ai installé Thunderbird, créé un compte pour mon adresse e-mail. Ensuite, j'ai installé l'extension enigmail. À partir de l'assistant de configuration enigmail, j'ai créé une paire de clés pour mon compte et un certificat de révocation.
Mais ici, le problème n'était toujours pas résolu. Je suis allé à la gestion des clés enigmail, puis j'ai fait un clic droit sur ma clé et sélectionné le téléchargement sur le serveur de clés publiques. Mais une erreur constante venait. C'est parce qu'enigmail n'a pas pu ajouter les clés à mon trousseau de clés de confiance.
J'ai donc de nouveau fait un clic droit sur ma clé et sélectionné la clé d'exportation, puis activé l'exportation de la clé privée et cliqué sur OK. Supposons que j'avais donné le nom au fichier de sortie mykey-pub-sec.asc
Ensuite, je suis allé au terminal et j'ai tapé:
cd /path/to/the/saved/file
gpg --allow-secret-key-import --import mykey-pub-sec.asc
gpg --keyserver keyserver.ubuntu.com --send-key $GPGKEY
Ici, j'ai remplacé $ GPGKEY par l'ID de clé
Voilà le travail fait
Je sais que la portion après
pub ABCDE/
est la clé publique et la partie aprèssec ABCDE/
est la clé privée.
Vous confondez le champ d'identification de l'algorithme avec l'ID de clé.
sec ABCDE/XXXXXXXL 2016-06-09
uid My Name (comment) <[email protected]>
sub ABCDE/XXXXXXXM 2016-06-09
sub ABCDE/XXXXXXXN 2016-06-10
Le champ que vous avez masqué par ABCDE
ne peut jamais être ABCDE
. Ce champ contient l'algorithme et l'identificateur de taille de clé, par exemple R4096
pour une clé RSA 4096 bits. Il devrait contenir les mêmes informations pour le même algorithme et la même taille de clé. D1024
désigne une clé DSA 1024 bits, et cetera.
L'identifiant de la clé (courte) est la partie derrière la barre oblique /
- et en regardant la question, cela semble déjà être différent, de toute façon.
Comment obtenir des clés publiques et privées distinctes?
Tu as déjà. Trois paires de clés publiques/privées ont été générées, chacune étant unique. Il n'y a rien de tel qu'un identifiant de clé privée, dans OpenPGP vous faites toujours référence à la clé publique (car les clés viennent toujours par paires, de toute façon).