Generowanie klucza PPG za pomocą komendy gpg lub gpg2, gpg --key-gen standardowa skrócona procedura, lepszą opcją jest wygenerowanie klucza za pomoca parametru --full-generate-key

Pierwsza cześć to pytania o parametry klucza

gpg2  --full-generate-key
gpg (GnuPG) 2.2.13; Copyright (C) 2019 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

gpg: katalog ,,/home/testowy/.gnupg'' utworzony
gpg: keybox ,,/home/testowy/.gnupg/pubring.kbx'' utworzony
Proszę wybrać rodzaj klucza:
   (1) RSA i RSA (domyślne) 1
   (2) DSA i Elgamala
   (3) DSA (tylko do podpisywania)
   (4) RSA (tylko do podpisywania)
Twój wybór? 1
Klucze RSA będą miały od 1024 do 4096 bitów długości.
Jakiej długości klucz wygenerować? (2048) 2048
Żądana długość klucza to 2048 bitów.
Okres ważności klucza.
         0 = klucz nie ma określonego terminu ważności
      <n>  = termin ważności klucza upływa za n dni
      <n>w = termin ważności klucza upływa za n tygodni
      <n>m = termin ważności klucza upływa za n miesięcy
      <n>y = termin ważności klucza upływa za n lat
Okres ważności klucza? (0) 0
Klucz nie wygaśnie w ogóle
Czy wszystko się zgadza (t/N)? t

Dalsza cześć to informacje o identyfikacji

GnuPG musi utworzyć identyfikator użytkownika do identyfikacji klucza.

Imię i nazwisko: testowy
Adres poczty elektronicznej: testowy@example.com
Komentarz: komentarz
Twój identyfikator użytkownika będzie wyglądał tak:
    "testowy (komentarz) <testowy@example.com>"

Zmienić (I)mię/nazwisko, (K)omentarz, adres (E)mail, przejść (D)alej,
czy (W)yjść z programu? d

Po potwierdzeniu informacji, przejdziemy do podania przepustki (hasła) i wygenerowania klucza.

┌─────────────────────────────────────────────────┐
│ Proszę wprowadzić hasło do                      │
│ zabezpieczenia swojego nowego klucza            │
│                                                 │
│ Hasło: ________________________________________ │
│                                                 │
│      <OK>                           <Anuluj>    │
└─────────────────────────────────────────────────┘

Generowanie klucza

Musimy wygenerować dużo losowych bajtów. Dobrym pomysłem aby pomóc komputerowi
podczas generowania liczb pierwszych jest wykonywanie w tym czasie innych
działań (pisanie na klawiaturze, poruszanie myszką, odwołanie się do dysków);
dzięki temu generator liczb losowych ma możliwość zebrania odpowiedniej ilości
entropii.
Musimy wygenerować dużo losowych bajtów. Dobrym pomysłem aby pomóc komputerowi
podczas generowania liczb pierwszych jest wykonywanie w tym czasie innych
działań (pisanie na klawiaturze, poruszanie myszką, odwołanie się do dysków);
dzięki temu generator liczb losowych ma możliwość zebrania odpowiedniej ilości
entropii.
gpg: /home/testowy/.gnupg/trustdb.gpg: baza zaufania utworzona
gpg: klucz 9B76BB5DDC8ADBE0 został oznaczony jako obdarzony absolutnym zaufaniem.
gpg: katalog ,,/home/testowy/.gnupg/openpgp-revocs.d'' utworzony
gpg: certyfikat unieważnienia został zapisany jako ,,/home/testowy/.gnupg/openpgp-revocs.d/4E70
klucz publiczny i prywatny (tajny) zostały utworzone i podpisane.

pub   rsa2048 2019-04-19 [SC]
      4E70814B987ECB1AC675A5BD9B76BB5DDC8ADBE0
uid                      testowy (komentarz) <testowy@example.com>
sub   rsa2048 2019-04-19 [E]

Lista kluczy

Lista kluczy publicznych

gpg2 --list-keys
gpg: sprawdzanie bazy zaufania
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: poziom: 0 poprawnych:   1 podpisanych:   0 zaufanie: 0-,0q,0n,0m,0f,1u
/home/testowy/.gnupg/pubring.kbx
--------------------------------
pub   rsa2048 2019-04-19 [SC]
      4E70814B987ECB1AC675A5BD9B76BB5DDC8ADBE0
uid    [   absolutne   ] testowy (komentarz) <testowy@example.com>
sub   rsa2048 2019-04-19 [E]

Lista kluczy tajnych

gpg2 --list-secret-keys
/home/testowy/.gnupg/pubring.kbx
--------------------------------
sec   rsa2048 2019-04-19 [SC]
      4E70814B987ECB1AC675A5BD9B76BB5DDC8ADBE0
uid    [   absolutne   ] testowy (komentarz) <testowy@example.com>
ssb   rsa2048 2019-04-19 [E]

Eksport klucza publicznego

gpg2 --export -a testowy
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQENBFy5vYABCADIeD0thtCgF+PnMxmGkowpCb6aMZ7L4b2O81PQetljx/z0AhmM
UmRcxHLcBixrmF6GfSjrL0LDi/XLmsYrDKQLSWrDUTqkR+02zRp8MIT/u7IJQWrr
vBuShFisCZpmaObQLVjTnaIn08kMHGjr8NRReo8FSBOsCjqMnDcBRBoyCh/vVJjS
acKqYy6Kjo8Bcua2yr8lJL3XYhGJfe5xArZF22PnQ+GXVbYVtnRL6uYTL9Qtk95g
nX6IjnnZwKRixfYUC6+CD39agyaw2hn/qga+yo3Cjax4jiv9ExPi3LPAuBuSCe0w
...
K2MqZRgCaALaoilVy1kV8C4kKMF5dOSfW2/rSrkBDQRcub2AAQgA0ehLzWOeYTZu
irZtZeHXZbNfc5kDdpNkbxkSu/gy7vUNY4gQH47r2Zy/i7iZ4CR1siBXPIz9Z4JB
zmxDjbff0fbQnI1QxKeZ19eXsYr8B0DyArvIDZiovJVhLfu/wF1guxd1x1TbSE/N
+C51O2jsLWI72ThKWVo97Mze7c5OpjUkc6RHX9e1ycgV1PbNlBait7rwq9Y+iy67
hDzDmZDiwIriBxQiL3Xu7HFv4aoNfFFI383kho6fid5mVDwR1yxWGEmaZmXTmhOv
0AQwbxilE3jmzNS8wrRRDzE4IprsdJebJPf/wyA7Esfm/+M5XjOqQg+LxUVwU3Xb
ex1SWDMM2QARAQABiQE2BBgBCAAgFiEETnCBS5h+yxrGdaW9m3a7XdyK2+AFAly5
vYACGwwACgkQm3a7XdyK2+CI9QgAuUcX1rBFV76JyuBmFSLmTHpVAAzirjEqXjej
zP0j0suw0Ej0JvO2a0MzlIdYn/1LhWrFbo856RTLmsxpKY6f3XHjAPeEtpdG2jEz
5+QX4Rg7Sni9kl76bMOOl+9OpkZlnbgSfl0VHEHTmVr6T0K3fXrJ+EVIQN60Au1t
kc1sAG0KmedrvCC4vpjzd9sH1rqigV7UfNlcMz28h14RF7YMzBO/S9CHW7SA5kR1
yHsI8wCosWVb/3AItHMh3K9Nji2HCS3WFwXmIKjBS2Hm2Lgy4YTquw0m9gwtBivi
T28LXFzSNuaG9BudTSxqnOS6CXUdDRgRC9IOvchmGHR9LvEFXA==
=utwF
-----END PGP PUBLIC KEY BLOCK-----

Eksport klucza tajnego

Do wyeksportwania klucza tajnego będzie potrzebne hasło

gpg2 --export-secret-key -a testowy
-----BEGIN PGP PRIVATE KEY BLOCK-----

lQPGBFy5vYABCADIeD0thtCgF+PnMxmGkowpCb6aMZ7L4b2O81PQetljx/z0AhmM
UmRcxHLcBixrmF6GfSjrL0LDi/XLmsYrDKQLSWrDUTqkR+02zRp8MIT/u7IJQWrr
vBuShFisCZpmaObQLVjTnaIn08kMHGjr8NRReo8FSBOsCjqMnDcBRBoyCh/vVJjS
acKqYy6Kjo8Bcua2yr8lJL3XYhGJfe5xArZF22PnQ+GXVbYVtnRL6uYTL9Qtk95g
NuJEZZ+422jTA+HCKDxEsLDLRUqTzSGjPdzMOLPmAEoQvKjba0aZZTb9UTFWs8k+
o+WQuHAd//eMEXlznrcGT3fEbGTjXd6KOhpt02+LtuDKSDTudwPQ9oNwgj/KK7q+
s0iOMA/Nmfg7NbjYZU6vtSQOiMyZmOOSM2U5W/0IQ6pStMS4vwXZp2qFh7F6GFj/
...
qy6mSW9ILFueabk1wdYP6tfvu6aYZwyzwSnrSc6iFZT+hsnxwG2z2gff2njHgmmx
SUmZOzZfLAs4TPn+ZgoWcK61PHYveZ8RLt6CI/Z8RcW4ErXYR+dSzA07QfpbUDnq
riH54894q/qkm6qT77vp72mWbDqilArJWQJg5Mjtpcmli0bFU2O9Tzl6rBZ8w+GL
eRpiO7yF0T4cStj8CsJoa/UCxlEmWajhQTOx8vRgDCoKKELbIcnNHCW6DjpbBZbQ
CzzYXyQq1sImE1yvZyOJATYEGAEIACAWIQROcIFLmH7LGsZ1pb2bdrtd3Irb4AUC
XLm9gAIbDAAKCRCbdrtd3Irb4Ij1CAC5RxfWsEVXvonK4GYVIuZMelUADOKuMSpe
N6PM/SPSy7DQSPQm87ZrQzOUh1if/UuFasVujznpFMuazGkpjp/dceMA94S2l0ba
MTPn5BfhGDtKeL2SXvpsw46X706mRmWduBJ+XRUcQdOZWvpPQrd9esn4RUhA3rQC
7W2RzWwAbQqZ52u8ILi+mPN32wfWuqKBXtR82VwzPbyHXhEXtgzME79L0IdbtIDm
RHXIewjzAKixZVv/cAi0cyHcr02OLYcJLdYXBeYgqMFLYebYuDLhhOq7DSb2DC0G
K+JPbwtcXNI25ob0G51NLGqc5LoJdR0NGBEL0g69yGYYdH0u8QVc
=GJgF
-----END PGP PRIVATE KEY BLOCK-----

Date: 2020-10-24T15:52:11+02:00