Jeg har genereret nøgler ved hjælp af GPG ved at udføre følgende kommando
gpg --gen-key
Nu skal jeg eksportere nøgleparret til en fil; dvs. private og offentlige nøgler til henholdsvis private.pgp
og public.pgp
. Hvordan gør jeg det?
Kommentarer
Svar
Eksporter offentlig nøgle
Denne kommando eksporterer en ascii-pansret version af offentlig nøgle:
gpg --output public.pgp --armor --export username@email
Eksporter hemmelig nøgle
Denne kommando eksporterer en ascii pansret version af den hemmelige nøgle:
gpg --output private.pgp --armor --export-secret-key username@email
Sikkerhedshensyn, sikkerhedskopiering og opbevaring
En offentlig PGP-nøgle indeholder information om ens e-mail-adresse. Dette er generelt acceptabelt, da den offentlige nøgle bruges til at kryptere e-mail til din adresse. I nogle tilfælde er dette imidlertid uønsket.
For de fleste brugssager er den hemmelige nøgle behøver ikke at eksporteres, og bør ikke d istribueret . Hvis formålet er at oprette en backup-nøgle, skal du bruge backup-indstillingen:
gpg --output backupkeys.pgp --armor --export-secret-keys --export-options export-backup user@email
Dette eksporterer alle nødvendige oplysninger til gendanne hemmelighedsnøglerne inklusive tillidsdatabaseinformation. Sørg for at gemme eventuelle backup-hemmelige nøgler fra computerplatformen og et sikkert fysisk sted.
Hvis denne nøgle er vigtig for dig, anbefaler jeg, at du udskriver nøglen på papir med paperkey . Og placere papirnøglen i et brandsikkert / vandtæt pengeskab.
Public Key Servers
Generelt er det ikke tilrådeligt at sende personlige offentlige nøgler til nøgleservere. Der er ingen metode til at fjerne en nøgle, når den først er sendt, og der er ingen metode til at sikre, at nøglen på serveren blev placeret der af den formodede ejer af nøglen.
Det er meget bedre at placere din offentlige nøgle på et websted, som du ejer eller kontrollerer. Nogle mennesker anbefaler keybase.io til distribution. Denne metode sporer dog deltagelse i forskellige sociale og tekniske samfund, hvilket måske ikke er ønskeligt i nogle brugssager.
For de teknisk dygtige anbefaler jeg personligt at prøve webkey domæneniveau nøgleopdagelsestjeneste.
Kommentarer
- Er den eksporterede nøgle (anden kommando) krypteret eller skal jeg kryptere det selv, før jeg gemmer det på ag et USB-drev?
- @Julian … Den eksporterede hemmelige nøgle har samme beskyttelse som den hemmelige nøgle, der blev eksporteret. Hvis der var en adgangssætning, skal adgangssætningen kræves for at importere den hemmelige nøgle.
- Jeg lavede en sikkerhedskopi ved hjælp af ovenstående metode, men glemte tåbeligt at teste den. Medmindre jeg ' mangler noget, kan jeg ' ikke synes at gendanne min offentlige nøgle fra den angivne sikkerhedskopimetode (
--export-options export-backup
osv.). Mangler jeg noget, eller misforstod jeg den slags sikkerhedskopi, den lavede? - Dokumentationen kender
--export-secret-keys
, men ikke--export-secret-key
. - @OMGtechy Hvordan prøvede du at gendanne nøglen / nøglerne? Jeg kunne gendanne offentlige nøgler med
gpg --import-options restore --import backupkeys.pgp
, men det gendanner ikke hemmelige nøgler, kun de offentlige, hvis backupkeys.pgp blev oprettet afgpg --output backupkeys.pgp --armor --export --export-options export-backup
. I og med at--armor
ikke er nødvendigt, ogexport-backup
kunne erstattes afbackup
.
Svar
- Angiv de nøgler, du har:
gpg --list-secret-keys
- Eksporter nøglen:
gpg --export-secret-key name > ~/my-key.asc
- Kopier den på en anden maskine;
- Importer nøglen:
gpg --import my-key.asc
Kommentarer
- Bemærk, at
.asc
står til ASCII, men output fragpg --list-secret-keys
er binært. - Faktisk er .asc for
ASCII armored
er krypteret tekst. Du kan sikkert katte det og se selv. Som de fleste linux-filer er filtypen også vilkårlig, behøver ' ikke teknisk at være asc. @WeihangJian - Det ville være en god ide at fjerne nøglefilen, når den er importeret og testet med succes. Hvis filen sidder der, kan den bruges skadeligt.
Svar
Til export
SOMEKEYID offentlig nøgle til en output
fil:
gpg --output public.pgp --export SOMEKEYID
Når du arbejder med hemmelige nøgler, foretrækkes det generelt ikke at skrive dem til filer og, I stedet skal du bruge SSH til at kopiere dem direkte mellem maskiner, der kun bruger gpg
og et rør:
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
Hvis du skal dog output din hemmelige nøgle til en fil skal du sørge for at den er krypteret. Her kan du opnå det ved hjælp af AES-kryptering ved hjælp af Dark Otter-tilgang :
gpg --output public.gpg --export SOMEKEYID && \ gpg --output - --export-secret-key SOMEKEYID |\ cat public.gpg - |\ gpg --armor --output keys.asc --symmetric --cipher-algo AES256
Den sidste tilgang er ideel, hvis du vil oprette en fysisk sikkerhedskopi af dine offentlige og private nøgler for at beskytte mod en diskfejl, når der ikke findes nogen anden måde at genvinde adgang til dine nøgler.
Se Flytning af GPG-nøgler privat for yderligere overvejelser.
Svar
” GnuPG (aka PGP / GPG) “ Flere oplysninger
Generer nøgle: gpg --gen-key
Se alle nøgler: gpg --list-keys
Eksporter offentlig nøgle:
gpg --export -a --output [path-to-public-key].asc [email-address]
Eksporter hemmelig nøgle:
gpg -a --export-secret-keys > [path-to-secret-key].asc
gpg --full-generate-key
for at have en fuld grænseflade til generering af nøgler