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

  • P.S. w GPG 2 użyj gpg --full-generate-key, aby mieć pełny interfejs do generowania kluczy

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 przez gpg --output backupkeys.pgp --armor --export --export-options export-backup. W tym przypadku --armor nie jest konieczne, a export-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 wynik gpg --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 

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *