====== Vyjasnění pojmů ====== * Open PGP - standard popisující elektronické podepisování a šifrování. V současné době je popsán v [[http://tools.ietf.org/html/rfc4880|RFC 4880]] vydaným [[http://cs.wikipedia.org/wiki/Internet_Engineering_Task_Force|IEFC]]. * PGP - (Pretty Good Privacy) program poskytující implementaci elektronických podpisů a šifrování. Je postaven na RSA algoritmu asymetrického šifrování. Více informací najdete [[http://cs.wikipedia.org/wiki/Pretty_Good_Privacy|zde]]. * GnuPGP - (GNU Privacy Guard) alternativa k PGP. Více informací najdete [[http://cs.wikipedia.org/wiki/GNU_Privacy_Guard|zde]]. ====== Výroba kryptovaného adresáře ====== nainstalovat encryptfs sudo apt-get install ecryptfs-utils nastavit ho (první dotazované heslo je login heslo, druhá je kryptovací passphrase, měla by být silná. (Nechavám frázi generovat - ať tak nebo tak, **POZNAMENAT** pro účely recovery. Pokud frázi nemáte, nedostanete se k obsahu kryptovaného adresáře) Vytvoří (pokud neexistuje) adresář Private a zakryptuje ho. Vyžaduje to restart. ecryptfs-setup-private a pak přemigrovat citlivá data (např. thunderbird a firefox profily, seznamy hesel a tak 8-)) mv ~/.mozilla ~/Private/ ln -s ~/Private/.mozilla ~/ ====== Generování pgp klíčů ====== nainstalovat - pokud už není - GNU Privacy Guard. Je to dle mého modernější varianta OpenPGP. sudo apt-get install gnupg ===== výroba primárního klíče ===== gpg --cert-digest-algo=SHA256 --default-preference-list="h10 h8 h9 h11 s9 s8 s7 s3 z2 z3 z1 z0" --gen-key __K možnostem:__ * vybírat RSA klíče pro podpis i pro šifrování * pro běžné použití by měla stačit délka klíče 2048 * defaultně je nastavena doba expirace na nekonečno, klidně nechat. Klíč je možno při problémech zneplatnit * program se zeptá na skutečné jméno, komentář ke klíči a emailovou adresu. Tyto údaje budou po uploadu klíče do veřejné repository volně přístupné, takže tam nepište žádné sprosťárny ;-) Na konci byste měli skončit s hláškou podobnou této: gpg: key FA378DC3 marked as ultimately trusted public and secret key created and signed. FA378DC3 je key-ID, které budete používat jako referenci. doporučuji dostřelit do ~/.bashrc export GPGKEY=FA378DC3 nastaví to tento klíč jako default. Tímto jsme připraveni k používání klíčů pro podepisování. Pokud jste vygenerovali pouze klíč k podpisu (zvolili jste "RSA (sign only)") a potřebujete i šifrovat, je třeba vygenerovat subkey pro šifrování. ===== Generování šifrovacího klíče ===== gpg --cert-digest-algo=SHA256 --edit-key $GPGKEY vypíše zvolený klíč a skončíte v promptu Command> zadejte addkey Command> addkey dostanete tento výběr, zvolte 6 Please select what kind of key you want: (2) DSA (sign only) (4) Elgamal (encrypt only) (5) RSA (sign only) (6) RSA (encrypt only) poté se program zeptá na délku klíče - 2048 stačí a dobu platnosti, zadejte dle uvážení a **bingo!** klíč pro šifrování je na světě. Zobrazí se údaje o klíčích - všiměte si, že přibyla položka sub s usage E. Zadejte příkaz save a opusťte editor klíčů. Teď jste schopni šifrovat. ===== Generování ASCII formy klíče ===== některé servery akceptují klíče v ASCII kabatku (brnění - ASCII Armored). tento typ klíče vygenerujete takto: gpg --export -a > asciiKey.asc jde o ASCII reprezentaci hexadecimálního klíče v kódování Radix-64, což je Base64 kódování s drobnými úpravami. ===== Generování revocation klíče ===== V případě ztráty nebo odcizení primárního klíče je třeba mít možnost klíč zneplatnit. K tomu se používá tkzv. revocation key, který sdělí ostatním enititám na síti, že tento klíč už dále nepoužíváte. Je doporučováno vygenerovat tento klíč zároveň s vlastním klíčem a uschovat ho na bezpečném místě. **!! Kdo má přístup k vašemu revocation key, může vám kdykoliv zneplatnit váš klíč !!** gpg --output revoke.asc --gen-revoke ====== Upload klíče na key server ====== veřejný klíč je potřeba dát k dispozici ostatním, aby na jeho základě mohli ověřovat vaši autenticitu. To uděláte buď takto: gpg --send-keys --keyserver http://pgp.mit.edu/ nebo na http://pgp.mit.edu/ nakopírujte ASCII formu klíče a stiskněte Submit a key. Stačí uploadovat na jeden key server, servery si klíče mezi sebou vymění. Na keyserverech také samozřejmě můžete sehnat veřejné klíče ostatních. Některé další servery: http://www.gpg.cz http://subkeys.pgp.net ====== Backup a restore klíčů ====== seznam public klíčů lze získat pomocí gpg --list-keys seznam private klíčů gpg --list-secret-keys backup obou klíčů provedete gpg -ao nazev-public.key --export key_id gpg -ao nazev-private.key --export-secret-keys key_id a obnovení nebo novou instalaci pomocí gpg --import nazev-public.key gpg --import nazev-private.key