====== GnuPG ======
===== Vytvoření =====
* dle [[http://www.abclinuxu.cz/clanky/bezpecnost/podepisovani-a-sifrovani-s-gnupg|abclinux]] je vhodné:
* vytvořit primární klíč typu DSA - který slouži na správu certifikátů
* dále podklíče:
* pro podpis DSA
* pro šifrování Elgamal
* je vhodné použít DSA o délce alespoň 2048
* nejprve si vytvoříme náš "certifikát" s primárním klíčem
djbuldog@Pharaon:~$ gpg --gen-key
* vybereme tedy (3)
Prosím, vyberte druh klíče, který chcete:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (pouze pro podpis)
(4) RSA (pouze pro podpis)
* doplníme si jméno, přijmení, mail, komentář. Jméno a příjmení jsem dal radši bez diakritiky, někde mi to způsobovalo problémy.
* nyní je hotový certifikát s primárním klíčem. doplním k němu 2 sekundární klíče pro podpis a šifrování
===== Přidání sekundárních klíčů =====
gpg --edit xbarienc@fi.muni.cz
* zadáme příkaz addkey, vybereme DSA, nastavíme mu platnost na 2roky
* zadáme příkaz addkey, vybereme ElGamal, nastavíme mu platnost na 2roky
* výsledek:
pub 2048D/3202B60A vytvořen: 2010-04-18 platnost skončí: nikdy použití: SC
důvěra: absolutní platnost: absolutní
sub 2048D/095231D6 vytvořen: 2010-04-18 platnost skončí: 2012-04-17 použití: S
sub 2048g/FA64DB20 vytvořen: 2010-04-18 platnost skončí: 2012-04-17 použití: E
[ absolutní ] (1). Jan Bariencik
===== Export klíčů =====
* je možné provést v binární i ASCII podobě (parametr --armor)
* doporučuje se exportnout primární klíč, uložit bokem a smazat ho z databáze pro případ, že by byla napadena. Více informací na [[http://www.abclinuxu.cz/clanky/bezpecnost/podepisovani-a-sifrovani-s-gnupg|abclinux]]. Sekundární klíče se totiž snáze nahrazují a nemusíme pokaždé znovu vytvářet certifikát.
* export veřejných klíčů ... pro druhou stranu :)
gpg --armor --export xbarienc@fi.muni.cz
* export tajných klíčů
gpg --export-secret-keys > gpg.primary
gpg --export-secret-subkeys > gpg.secundary
===== Mazání klíčů =====
gpg --delete-secret-key xbarienc@fi.muni.cz
gpg --delete-key xbarienc@fi.muni.cz
===== Používání =====
* pro používání by se měl veřejný klíč někde vystavit a zveřejnit na keyring serverech.. třeba na pgp.cz
djbuldog@Pharaon:~$ gpg -k
/home/djbuldog/.gnupg/pubring.gpg
---------------------------------
pub 2048D/3202B60A 2010-04-18
uid Jan Bariencik
sub 2048D/095231D6 2010-04-18 [platnost skončí: 2012-04-17]
sub 2048g/FA64DB20 2010-04-18 [platnost skončí: 2012-04-17]
djbuldog@Pharaon:~$ gpg --keyserver pks.gpg.cz --send-keys 095231D6 FA64DB20
gpg: posílám klíč 3202B60A na hkp server pks.gpg.cz
gpg: posílám klíč 3202B60A na hkp server pks.gpg.cz
==== Mail ====
* Mail lze šifrovat/podepisovat 2 způsoby
* PGP inline
* jednoduchý.
* text mailu se zašifruje a výsledek vloží.
* šifruje to ale pouze plain text. Pokud je mail v HTML formátování, tak se většinou rozbije formátování.
* Přílohy se nešifrují, ale lze to zrealizovat normálně zašifrováním do .gpg souboru před přiložením.
* PGP/MIME
* vezme celou zprávu a zašifruje ji.
* Nejprve je podle mě potřeba vygenerovat text mailu (multipart body), ten zašifrovat přes GPG, vytvořit GPG "hlavičku" do mailu a přidat za ní výsledek GPG.
* Nevýhoda je, že klienti jej nemusí podporovat a nezobrazí pak nic. Nebo tam může být nějaká chyba v implementaci.
===== Programy =====
==== Seahorse ====
* správa hesel a klíčů ... parádní utilitka
==== Evolution ====
* nastavení jednoduše přes nastavení účtu - zabezpečení - ID certifikátu
* ale mám problém s tím, že GPG vyžaduje použít alespoň SHA256, ale evolution pořád chce jen SHA1 hash
* prej není doposud vyřešeno (od roku 2005), řešení je buď ten trick script nebo jakýsi patch :) https://bugzilla.gnome.org/show_bug.cgi?id=304415
==== Thunderbird ====
* v linuxu se mu říká icedöve, navíc je potřeba nainstalovat enigmail
===== Odkazy =====
* priklady na praci s GPG http://www.spywarewarrior.com/uiuc/gpg/gpg-com-4.htm#4-2b