Pokouším se zkopírovat klíč gpg z jednoho stroje do druhého.

Já:

gpg --export ${ID} > public.key gpg --export-secret-key ${ID} > private.key 

Přesunout soubory na nový stroj a poté:

gpg --import public.key gpg: nyckel [ID]: public key [Name, e-mail] was imported gpg: Total number of treated keys: 1 gpg: imported: 1 (RSA: 1) gpg --allow-secret-key-import private.key sec [?]/[ID] [Creation date] [Name, e-mail] ssb [?]/[SUB-ID] [Creation date] 

Vše mi přijde dobře, ale pak:

$ gpg -d [file].gpg gpg: encrypted with 4096-bit RSA-key, id [SUB-ID], created [Creation date] [Name, e-mail] gpg: decryption failed: secret key not accessible 

Chybová zpráva tedy říká, že soubor byl zašifrován pomocí [SUB-ID], což podle importu tajného klíče znamená, že byl importován. ( [SUB-ID] v obou zprávách je stejné).

Takže jasně dělám něco špatně, ale nevím co.

Odpovědět

Chcete-li importovat soukromý klíč, musíte do příkazového řádku přidat --import. --allow-secret-key-import příznak. Podle manuálové stránky:„ Toto je zastaralá volba a nikde se nepoužívá. “

gpg --import private.key 

Komentáře

  • Jakákoli šance, že ' víte také, proč gpg2 -e -r [ID] říká " Neexistuje žádná záruka, že tento klíč patří pojmenovanému uživateli "? Přál bych si, abych to zahrnoval do původní otázky, ale všiml jsem si to až později.
  • GnuPG udržuje důvěryhodnou databázi, kterou používá k rozhodování, jak moc důvěřovat jakým klíčům. Například nejvíce důvěřujte svým vlastním klíčům, nejméně klíčům, které nejsou ' t přímo nebo nepřímo podepsány žádnými důvěryhodnými klíči. Po ' importu do prázdné databáze pravděpodobně nedůvěřujete vůbec žádným klíčům. Tato důvěryhodná databáze je oddělená od databáze nebo samotných klíčů, takže import klíčů z nich nedělá důvěryhodné, pokud nejsou podepsány nějakým již důvěryhodným klíčem. Musíte načíst GnuPG, kterým klíčům chcete důvěřovat zvlášť.
  • @Celeda, díky, pomocí –edit-key a a příkazu trust, kterému se mi podařilo získat důvěryhodný klíč. Jelikož moje původní otázka byla, jak zkopírovat klíč z jednoho stroje do druhého, myslím, že by bylo vhodné přidat něco o tom k vaší odpovědi. Já ' d raději nebudu upravovat svoji odpověď sám a zdá se, že o tom vím mnohem víc než já.
  • < „18de8c7891“ „>

Nemám pocit, že trustdb rozumím dost dobře na to, abych o tom ve své odpovědi mluvil. Jsem ' rád, že jste to dokázali vyřešit pomocí neurčitých rad, které jsem uvedl ve svém komentáři.

  • Dobře, <
  • Změnili jsme název původní otázky, aby přesněji odpovídala odpovědi. Tímto způsobem mohu položit samostatnou otázku trustdb. Děkuji za pomoc. 🙂

    Odpověď

    Výše je uvedena pouze částečná odpověď. Úplná odpověď je:

    gpg --import private.key 
    • Vzhledem k KEYID (např. FA0339620046E260) z výstupu :

      gpg --edit-key {KEY} trust quit # enter 5<RETURN> (I trust ultimately) # enter y<RETURN> (Really set this key to ultimate trust - Yes) 
    • NEBO použijte níže uvedený automatizovaný příkaz:

      expect -c "spawn gpg --edit-key {KEY} trust quit; send \"5\ry\r\"; expect eof" 

    Nakonec ověřte , že klíč je nyní důvěryhodný u [ultimate] místo [unknown]

    gpg --list-keys 

    komentářů

    • Toto by měla být přijatá odpověď. Mnohem úplnější.
    • Co tyto extra příkazy dělají?
    • @Steiny Díky němu je klíč důvěryhodný s [ultimate] namísto [unknown]. gpgtools.tenderapp.com/kb/faq/…

    Odpověď

    Importoval jsem ze zálohy, která měla starou verzi gpg. Protože starý počítač nebyl k dispozici, pouze záloha, nemohl jsem jej nejprve exportovat. To pro mě fungovalo.

     gpg --import old_home_dir/.gnupg/pubring.gpg gpg --import old_home_dir/.gnupg/secring.gpg  

    Chcete-li mít možnost importujte tajné klíče bez okamžitého zadání přístupové fráze, použijte volbu --batch.

    Ověření veřejných klíčů:

     gpg --list-keys  

    Ověření tajných klíčů:

     gpg --list-secret-keys  

    Napsat komentář

    Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *