dešifrování zašifrovaného souboru gpg pomocí externího tajného klíče

hlasů
6

Encryptd I soubor pomocí gpg, teď chci soubor dešifrovat.

Existuje nějaký způsob, jak dešifrovat soubor bez nutnosti dovážet tajný soubor?

Máme tajný klíč do souboru s názvem key.sec; můžeme předat tajný soubor gpgjako parametr (když jsme se spustit decryptpříkaz z bashpříkazového řádku), který se použije při dešifrování zašifrovaný soubor? Nebo musíme dovážet tajný klíč poté dešifrování souborů?

Položena 31/01/2012 v 02:27
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
9

Musíte přidat tajný klíč na klíčenku. Z gpg(1)dokumentace:

   --no-default-keyring
          Do not add the default keyrings to the list of
          keyrings. Note that GnuPG will not operate without any
          keyrings, so if you use this option and do not provide
          alternate keyrings via --keyring or --secret-keyring,
          then GnuPG will still use the default public or secret
          keyrings.

Dalo by se --import --no-default-keyring --secret-keyring temporaryimportovat klíče, použijte --secret-keyring temporarypři dešifrování obsahu, odstraňte ~/.gnupg/temporary.gpgsoubor, když budete hotovi. Ale to je jen práce kolem.

Odpovězeno 31/01/2012 v 02:37
zdroj uživatelem

hlasů
2

Budete muset dovážet tajný klíč ji používat , ale tak, že tajné klíče jsou řízeny GnuPG verze 2.x změnil. Tam je gpg-agentdémon, který se zabývá tajné klíče přístup a jeho použití je povinné od verze 2.1.

Zde je způsob, který můžete rychle vytvořit dočasný klíčenku dešifrovat pomocí tajného klíče, který je obsažen v souboru:

$ mkdir -m 700 ~/.gnupg-temp
$ gpg --homedir .gnupg-temp --import key.sec
$ gpg --homedir .gnupg-temp -d an_ecrypted_file

Chcete-li vyčistit poté, zastavte agenta a odebrat adresář:

$ gpg-connect-agent --homedir .gnupg-temp KILLAGENT /bye
$ rm -r ~/.gnupg-temp

Tam použitý být možnost --secret-keyring, kolem něhož se dokumentace pro verze 2.1 má toto říkat:

To je zastaralá volba a ignorovány. Všechny tajné klíče jsou uloženy v adresáři soukromých klíčů-v1.d pod domovském adresáři GnuPG.

private-keys-v1.dAdresář (wthin --homedirnebo ~/.gnupg) jsou vlastněny a provozovány agentem.

Odpovězeno 04/10/2016 v 08:53
zdroj uživatelem

hlasů
0

Cílem OP Mohammed zdá se, že udržet svůj PUBLIC a SECRET klíč od sebe. Po tom všem, chceme zachovat tajný klíč s údaji, které bylo použito k zašifrování? Tak Mohammed je a 10,650+ jiní (v době, kdy píši tyto řádky) zajímá, jestli / jak je to možné. Ve skutečnosti je, a to je, jak to udělat:

Veřejně-čelí hostitel má pouze dva klíče: Oba jsou veřejné klíče

  1. Váš GPG Veřejný klíč slouží k šifrování dat

  2. Váš SSH veřejného klíče v .ssh / authorized_keys usnadnit neinteraktivní přihlášení.

Round-Vypínací zašifrovaného souboru pomocí separace mezi veřejným a tajný klíč:
Následující bash fragment, když je spouštěn na počítači s tajným klíčem stáhne zakódované soubor z hostitele DMZ pomocí scp, a stříkat GPG dešifrovat standardní výstup zpět do DMZ do souboru, takže lze číst / operován. Tento kód je testován a známý pracovat správně:

echo "$(gpg -d $(scp myuser@192.168.1.10:/home/myuser/test-gpg.txt.asc .;ls ./test-gpg.txt.asc))" | ssh myuser@192.168.1.10 'cat > /home/myuser/test-gpg.txt'

Všimněte si, že budete ještě vyzváni k zadání hesla, jakmile začne dešifrování . Ale jakmile heslo je dodáván, skript pokračuje a vstřikuje dešifrovaný gpg proudu do souboru na DMZ.

A nezapomeňte udělat rm test-gpg.txtz dešifrované souboru jednou operaci, která vyžadovala jeho obsah, aby byla čitelná byla dokončena.

Takže ano, velmi možné, aby se vaše tajný klíč na rozdíl od veřejně přístupného počítače, kde dochází k šifrování a svůj tajný klíč zastrčený v bezpečné vzdálenosti v hostitelském mimo tento DMZ. HTH- Terrence Houlahan

Odpovězeno 07/02/2019 v 15:58
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more