Docela rozumím matematice za RSA, Elgamal, AES, SHA, ale ne s tím, jak se věci používají v praxi. Jak se podklíče liší od hlavního klíče? Chápu jeho účel z různých webových stránek, ale jak je interně implementován? Jak je vázán na hlavní klíč? Je to terminologie OpenPGP?
Komentáře
- To mi hodně pomohlo: wiki.debian .org / Podklíče
Odpověď
Tento příspěvek od uživatele rjh z roku 2008 ve fóru enigmail na to dobře odpovídá:
Původně v PGP 2.6, počátkem 90. let, měli jste jen jeden pár klíčů a byl použit pro šifrování i pro podepisování. Schopnost mít další páry klíčů představovala některé technické výzvy. Nakonec bylo rozhodnuto, že další klíčové páry se budou nazývat „podklíče“, a to navzdory skutečnosti, že v nich „nic“ není. „Podobně to, co nazýváte svým„ klíčem „, vůbec není klíč – terminologie je pozdržení z doby, kdy klíč opravdu byl klíčem. V dnešní době je klíč opravdu sbírka klíčů spolu s některými metadaty pro identifikátory uživatelů, podpisy atd.
Například můj „klíč“ má čtyři klíčové páry: 5B8709EB , D0C6AAE4, 71E177DB a 8DB02BBB3.
To, co GnuPG nazývá vaším „veřejným klíčem“, je ve skutečnosti nejstarší podpisový klíč ve sbírce. Např. Protože 5B8709EB byl vytvořen jako první, GnuPG volá celou sadu klíčů a metadat jako „klíč 5B8709EB“.
Takže, „je možné mít klíč, který se používá pro šifrování a podepisování bez jakéhokoli podklíč vůbec? „Odpověď zde je ne, protože všechny klíčové páry na klíči jsou podklíče. I když existuje jen jeden z nich.
Odpověď
Podklíče
Pakety podklíčů jsou definovány v RFC 4880, OpenPGP, 5.5 Key Material Packet . Rozlišují se pouze jiným ID paketu a ke skutečnému použití vyžadují podpis vazby (viz níže).
Paket veřejného klíče (značka) 14) má přesně stejný formát jako paket veřejného klíče, ale označuje podklíč.
Použití podklíče
Podklíče OpenPGP jsou používá se pro různé účely:
- Možnost uložení primárního klíče offline nebo bezpečnějšího zařízení. Je-li poškozen stroj s podklíčem, můžete podklíč snadno odvolat, aniž byste museli rušit odvolání váš primární klíč (sdílení nového klíče, získání nových podpisů, …).
- Mít různé podklíče na různých počítačích, například podpisový podklíč na serveru sestavení. Znovu je odvolání jednotlivých klíčů snadné.
- Použití většího primárního klíče pro dlouhou životnost a kratší, ale rychlejší podklíče pro každodenní použití.
- Některé algoritmy nepodporují šifrování ani podepisování. Například primární klíč DSA vyžaduje pro šifrování další klíč Ption, obvykle spárovaný s ElGamal.
Vazby podpisů
Existují speciální podtypy podpisů, které váží podklíče na primární klíče (a naopak), uvedené v seznamu RFC 4880, OpenPGP, 5.2.1 Typy podpisů :
0x18: Vazba podklíče na podpis
Tento podpis je příkazem podpisového klíče nejvyšší úrovně, který označuje, že vlastní podklíč. Tento podpis se počítá přímo na primárním klíči a podklíči, nikoli na žádném ID uživatele nebo jiných paketech. Podpis, který váže podpisový podklíč MUSÍ mít v tomto vazebním podpisu dílčí balíček Embedded Signature, který obsahuje podpis 0x19 vytvořený podpisovým podklíčem na primárním klíči a podklíči.
0x19: Podpis vázání primárního klíče
Tento podpis je příkazem podpisového podklíče, což naznačuje, že je vlastněn primárním klíčem a podklíčem. Tento podpis se počítá stejným způsobem jako podpis 0x18: přímo na primárním klíči a podklíči, nikoli na žádném ID uživatele nebo jiných paketech.