Wygenerowałem klucze za pomocą GPG, wykonując następujące polecenie
gpg --gen-key
Teraz muszę wyeksportować parę kluczy do pliku; tj. klucze prywatny i publiczny odpowiednio do private.pgp
i public.pgp
. Jak to zrobić?
Komentarze
Odpowiedź
Eksportuj klucz publiczny
To polecenie wyeksportuje opancerzoną wersję ascii klucz publiczny:
gpg --output public.pgp --armor --export username@email
Eksportuj tajny klucz
To polecenie wyeksportuje opancerzoną wersję ascii tajnego klucza:
gpg --output private.pgp --armor --export-secret-key username@email
Kwestie bezpieczeństwa, kopie zapasowe i przechowywanie
Klucz publiczny PGP zawiera informacje mniej więcej jeden adres e-mail. Jest to ogólnie akceptowane, ponieważ do szyfrowania wiadomości e-mail na Twój adres używany jest klucz publiczny. Jednak w niektórych przypadkach jest to niepożądane.
W większości przypadków tajny klucz nie musi być eksportowany, a nie powinien d przypisane . Jeśli celem jest utworzenie klucza zapasowego, powinieneś użyć opcji kopii zapasowej:
gpg --output backupkeys.pgp --armor --export-secret-keys --export-options export-backup user@email
Spowoduje to wyeksportowanie wszystkich niezbędnych informacji do przywrócić klucze tajne, w tym informacje z zaufanej bazy danych. Upewnij się, że przechowujesz wszelkie zapasowe tajne klucze poza platformą komputerową i w bezpiecznym miejscu fizycznym.
Jeśli ten klucz jest dla Ciebie ważny, zalecamy wydrukowanie go na papierze za pomocą paperkey . I umieścić papierowy klucz w ognioodpornym / wodoodpornym sejfie.
Serwery kluczy publicznych
Generalnie nie jest zalecane umieszczanie osobistych kluczy publicznych na serwerach kluczy. Nie ma metody usuwania klucza po jego wysłaniu i nie ma metody zapewniającej, że klucz na serwerze został tam umieszczony przez rzekomy właściciel klucza.
Znacznie lepiej jest umieścić swój klucz publiczny w witrynie internetowej, którą posiadasz lub kontrolujesz. Niektórzy polecają keybase.io do dystrybucji. Jednak ta metoda śledzi uczestnictwo w różnych społecznościach społecznych i technicznych, co może nie być pożądane w niektórych przypadkach użycia.
Dla zaawansowanych technicznie osobiście polecam wypróbowanie klucz internetowy usługa wykrywania kluczy na poziomie domeny.
Komentarze
- Czy wyeksportowany klucz (drugie polecenie) jest zaszyfrowany, czy też muszę zaszyfruj go samodzielnie przed zapisaniem na ag dysk USB?
- @Julian … Wyeksportowany tajny klucz ma taką samą ochronę jak tajny klucz, który został wyeksportowany. Jeśli istniało hasło, jest ono wymagane do zaimportowania tajnego klucza.
- Wykonałem kopię zapasową za pomocą powyższej metody, ale głupio zapomniałem go przetestować. O ile nie ' czegoś brakuje, mogę ' nie odzyskać mojego klucza publicznego z określonej metody tworzenia kopii zapasowej (
--export-options export-backup
itp.). Czy coś mi brakuje, czy źle zrozumiałem, jakiego rodzaju kopię zapasową tworzyłem? - Dokumentacja zawiera informacje o
--export-secret-keys
, ale nie--export-secret-key
. - @OMGtechy Jak próbowałeś odzyskać klucz (y)? Mogę przywrócić klucze publiczne przez
gpg --import-options restore --import backupkeys.pgp
, ale to nie przywraca tajnych kluczy, tylko publiczne, jeśli backupkeys.pgp został utworzony przezgpg --output backupkeys.pgp --armor --export --export-options export-backup
. W tym przypadku--armor
nie jest konieczne, aexport-backup
można zastąpićbackup
.
Odpowiedź
- Wypisz posiadane klucze:
gpg --list-secret-keys
- Eksportuj klucz:
gpg --export-secret-key name > ~/my-key.asc
- Skopiuj go na inny komputer;
- Zaimportuj klucz:
gpg --import my-key.asc
Komentarze
- Zwróć uwagę, że
.asc
oznacza dla ASCII, ale wynikgpg --list-secret-keys
jest binarny. - Właściwie .asc jest dla
ASCII armored
, a wyjście jest zaszyfrowanym tekstem. Możesz go bezpiecznie zakotować i przekonać się sam. Podobnie jak w przypadku większości plików Linuksa, rozszerzenie pliku jest również dowolne, nie ' t technicznie rzecz biorąc, musi być asc. @WeihangJian - Byłoby dobrym pomysłem usunięcie pliku klucza po jego zaimportowaniu i pomyślnym przetestowaniu. Jeśli plik tam się znajduje, może zostać użyty złośliwie.
Odpowiedź
Do export
SOMEKEYID klucza publicznego na output
file:
gpg --output public.pgp --export SOMEKEYID
Podczas pracy z tajnymi kluczami lepiej jest nie zapisywać ich do plików i, zamiast tego użyj SSH, aby skopiować je bezpośrednio między maszynami, używając tylko gpg
i potoku:
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
Jeśli musisz jednakże wyślij swój tajny klucz do pliku, upewnij się, że jest on zaszyfrowany. Oto „jak to osiągnąć za pomocą szyfrowania AES przy użyciu metody Dark Otter :
gpg --output public.gpg --export SOMEKEYID && \ gpg --output - --export-secret-key SOMEKEYID |\ cat public.gpg - |\ gpg --armor --output keys.asc --symmetric --cipher-algo AES256
Ostatnie podejście jest idealne, jeśli chcesz utworzyć fizyczną kopię zapasową swoich kluczy publicznych i prywatnych, aby zabezpieczyć się przed awarią dysku, gdy nie ma innego sposobu na odzyskanie dostępu do kluczy.
Zobacz Prywatne przenoszenie kluczy GPG w celu uzyskania dodatkowych informacji.
Odpowiedź
” GnuPG (aka PGP / GPG) „ Więcej informacji
Wygeneruj klucz: gpg --gen-key
Wyświetl wszystkie klucze: gpg --list-keys
Eksportuj klucz publiczny:
gpg --export -a --output [path-to-public-key].asc [email-address]
Eksportuj tajny klucz:
gpg -a --export-secret-keys > [path-to-secret-key].asc
gpg --full-generate-key
, aby mieć pełny interfejs do generowania kluczy