Jag har genererat nycklar med GPG genom att utföra följande kommando
gpg --gen-key
Nu måste jag exportera nyckelparet till en fil; dvs privata och offentliga nycklar till private.pgp
respektive public.pgp
. Hur gör jag det?
Kommentarer
Svar
Exportera offentlig nyckel
Detta kommando exporterar en ascii-pansarversion av offentlig nyckel:
gpg --output public.pgp --armor --export username@email
Exportera hemlig nyckel
Detta kommando exporterar en ascii-pansarversion av den hemliga nyckeln:
gpg --output private.pgp --armor --export-secret-key username@email
Säkerhetsproblem, säkerhetskopiering och lagring
En offentlig PGP-nyckel innehåller information ungefär en e-postadress. Detta är i allmänhet acceptabelt eftersom den offentliga nyckeln används för att kryptera e-post till din adress. I vissa fall är detta dock inte önskvärt.
För de flesta fall är den hemliga nyckeln behöver inte exporteras och ska inte d istribuerad . Om syftet är att skapa en reservnyckel bör du använda alternativet för säkerhetskopiering:
gpg --output backupkeys.pgp --armor --export-secret-keys --export-options export-backup user@email
Detta exporterar all nödvändig information till återställa hemlighetens nycklar inklusive tillförlitlig databasinformation. Se till att du lagrar säkerhetskopierade hemliga nycklar från datorplattformen och på en säker fysisk plats.
Om den här nyckeln är viktig för dig rekommenderar jag att du skriver ut nyckeln på papper med pappersnyckel . Och placera pappersnyckeln i ett brandsäkert / vattentätt värdeskåp.
Public Key Servers
I allmänhet är det inte tillrådligt att publicera personliga offentliga nycklar till nyckelservrar. Det finns ingen metod för att ta bort en nyckel när den väl har publicerats och det finns ingen metod för att säkerställa att nyckeln på servern placerades där av den antagna ägaren av nyckeln.
Det är mycket bättre att placera din offentliga nyckel på en webbplats som du äger eller kontrollerar. Vissa människor rekommenderar keybase.io för distribution. Den metoden spårar dock deltagande i olika sociala och tekniska samhällen, vilket kanske inte är önskvärt för vissa användningsfall.
För de tekniskt skickliga rekommenderar jag personligen att testa webkey tjänsten för identifiering av nyckel på domännivå.
Kommentarer
- Är den exporterade nyckeln (andra kommandot) krypterad eller behöver jag kryptera det själv innan jag lagrar det på ag en USB-enhet?
- @Julian … Den exporterade hemliga nyckeln har samma skydd som den hemliga nyckeln som exporterades. Om det fanns en lösenfras krävs lösenfrasen för att importera den hemliga nyckeln.
- Jag gjorde en säkerhetskopia med ovanstående metod, men glömde dåraktigt att testa den. Om jag inte ' saknar något kan jag ' inte tycka återställa min offentliga nyckel från den angivna säkerhetskopieringsmetoden (
--export-options export-backup
, etc). Saknar jag något eller missförstod jag vilken typ av säkerhetskopia den gjorde? - Dokumentationen vet
--export-secret-keys
, men inte--export-secret-key
. - @OMGtechy Hur försökte du återställa nycklarna? Jag kunde återställa offentliga nycklar med
gpg --import-options restore --import backupkeys.pgp
, men det återställer inte hemliga nycklar, bara de offentliga, om backupkeys.pgp skapades avgpg --output backupkeys.pgp --armor --export --export-options export-backup
. Genom att--armor
inte är nödvändigt ochexport-backup
kan ersättas medbackup
.
Svar
- Lista upp de nycklar du har:
gpg --list-secret-keys
- Exportera nyckeln:
gpg --export-secret-key name > ~/my-key.asc
- Kopiera den till en annan maskin;
- Importera nyckeln:
gpg --import my-key.asc
Kommentarer
- Observera att
.asc
står för ASCII, men utdata frångpg --list-secret-keys
är binär. - Egentligen är .asc för
ASCII armored
är krypterad text. Du kan säkert katta det och se själv. Liksom de flesta Linux-filer är filtillägget också godtyckligt, behöver inte ' inte vara asc. @WeihangJian - Det skulle vara en bra idé att ta bort nyckelfilen efter att den har importerats och testats framgångsrikt. Om filen sitter där kan den användas skadligt.
Svar
Till export
SOMEKEYID offentlig nyckel till en output
fil:
gpg --output public.pgp --export SOMEKEYID
När du arbetar med hemliga nycklar är det i allmänhet att föredra att inte skriva dem till filer och, använd istället SSH för att kopiera dem direkt mellan maskiner med endast gpg
och ett rör:
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
Om du måste dock mata ut din hemliga nyckel till en fil, se till att den är krypterad. Så här gör du med AES-kryptering med Dark Otter-strategi :
gpg --output public.gpg --export SOMEKEYID && \ gpg --output - --export-secret-key SOMEKEYID |\ cat public.gpg - |\ gpg --armor --output keys.asc --symmetric --cipher-algo AES256
Det sista tillvägagångssättet är perfekt om du vill skapa en fysisk säkerhetskopia av dina offentliga och privata nycklar för att skydda mot ett diskfel när det inte finns något annat sätt att återfå åtkomst till dina nycklar.
Se Flytta GPG-tangenter privat för ytterligare överväganden.
Svar
” GnuPG (aka PGP / GPG) ” Mer information
Skapa nyckel: gpg --gen-key
Visa alla nycklar: gpg --list-keys
Exportera offentlig nyckel:
gpg --export -a --output [path-to-public-key].asc [email-address]
Exportera hemlig nyckel:
gpg -a --export-secret-keys > [path-to-secret-key].asc
gpg --full-generate-key
för att ha ett fullständigt gränssnitt för att generera nycklar