Podepisování plus šifrování

U všech příkladů s podpisem uvedených výše (zde, zde, zde i zde) mohl kdokoliv číst obsah zprávy - vždy se řešilo pouze to, jestli zprávu poslal Cézar - podepisování. V praxi lze ovšem podpisové certifikáty použít nejen pro podepisování ale i pro šifrování zpráv (e-mailů). Uveďme tedy pro úplnost i nejkomplexnější aplikaci - šifrování podepsané zprávy.

Pokud Cézar odesílá Pontifiku Maximovi šifrovanou a podepsanou zprávu, zkombinuje tři šifrovací postupy uvedené výše:

  • asymetrické šifrování privátním klíčem odesilatele (Cézara) - pro podpis
  • asymetrické šifrování veřejným klíčem adresáta (Pontifika Maxima) k předání jednoúčelového symetrického klíče
  • symetrické šifrování textu zprávy jednoúčelovým/dočasným symetrickým klíčem

Mimochodem, uvedená trojkombinace je přesně takto používána při dnešním šifrování podepsaných e-mailů - protokol S-MIME. Kombinaci úvodní asymetrické šifry následované symetrickým šifrováním pak používají i další fundamentální protokoly dnešního internetu: SSL/TLS, resp. HTTPS.

Cézar podepisuje

Nejprve tedy Cézar zprávu podepíše svým privátním klíčem a připojí svůj podpisový certifikát. Dostane tentýž text, který posílal prokonzulům:

VENI VIDI VICI MCXLII 
CAESAR XXIII MCXLVII MCCCLXXXVII

... a šifruje

Poté si náhodně zvolí klíč pro symetrickou šifru. Sečte mraky na obloze a získá číslo 4. Zprávu tedy symetricky zašifruje klíčem 4 jednoduchou Caesarovou šifrou (představena hned zpočátku - posun dopředu o 4 místa v abecedě u písmen, přičítání 4 u čísel):

ZIRM ZMHM ZMGM MCXLVI 
GEIWEV XXVII MCLI MCCCXCI

Uvědomme si, že šifrování všech písmen potenciálně dlouhé zprávy symetrickou Caesarovou šifrou (tedy opakované přičítání) je daleko snazší než šifrování všech písmen veřejným klíčem Pontifika Maxima (tedy opakované umocňování a dělení se zbytkem), i když šifrovat celou zprávu asymetrickou šifrou by bylo možné. Jednoduchost a rychlost symetrické šifry je však právě ten důvod, proč ji používají uvedené protokoly S-MIME, SSL/TLS a HTTPS.

Nakonec Cézar zašifruje dočasný symetrický klíč 4 veřejným asymetrickým klíčem Pontifika Maxima {69;2091}, takže nikdo jiný než Pontifex Maximus nebude schopen symetrický klíč získat:

469 mod 2091 = 769 (DCCLXIX)

Zašifrovaný symetrický klíč DCCLXIX pošle Pontifikovi jako první číslo-slovo celé zprávy, neboť to je jedinečný klíč k rozšifrování celého textu.

Posel doručuje a nerozumí

Cézar tedy posílá Pontifikovi tuto podepsanou a zašifrovanou a tedy nyní zcela nesrozumitelnou zprávu:

DCCLXIX ZIRM ZMHM ZMGM MCXLVI 
GEIWEV XXVII MCLI MCCCXCI

(čti: 769 ZIRM ZMHM ZMGM...)

Ani poslíček, ani senátoři a prokonzulové, ani nikdo jiný nemohou zprávu dešifrovat. Navzdory tomu, že všichni vědí, jakým postupem je zpráva zašifrovaná, ačkoliv všichni znají i Pontifikův i Cézarův veřejný klíč. Neznají však náhodně zvolený klíč symetrické Caesarovy šifry (ony nahodilé 4 mraky na obloze nad Cézarem) a nemohou se k tomuto symetrickému klíči dostat, protože nemají Pontifikův privátní asymetrický klíč.

Pontifex Maximus dešifruje

Rekapitulujme obsah zprávy:

  • DCCLXIX (769) - dočasný klíč (4) symetrické Caesarovy šifry zašifrovaný (asymetrickým) veřejným klíčem Pontifika Maxima
  • ZIRM ZMHM ZMGM - VENI VIDI VICI zašifrováno symetrickou Ceasarovou šifrou s dočasným klíčem 4
  • MCXLVI - Cézarův podpis (1142) zašifrovaný navíc symetricky s klíčem 4 (na 1146)
  • GEIWEV XXVII MCLI MCCCXCI - Cézarův podpisový certifikát zašifrovaný též symetricky s klíčem 4 (zrovna Pontifikovi posílá Cézar svůj certifikát tak trochu zbytečně - kdo mu certifikát vystavil? - ale u jiných adresátů je nutný)

Pontifex Maximus použije svůj privátní klíč {29;2091} k dešifrování prvního slovo-čísla DCCLXIX (769), ve kterém je skryt šifrovací/dešifrovací klíč symetrické Caesarovy šifry:

76929 mod 2091 = 4

Poté Pontifex Maximus dešifruje zbytek textu posunem o 4 písmena dozadu (resp. mínus 4 u čísel):

ZIRM ZMHM ZMGM MCXLVI 
GEIWEV XXVII MCLI MCCCXCI
=>
VENI VIDI VICI MCXLII CAESAR XXIII MCXLVII MCCCLXXXVII

... a ověřuje

Získává tedy text, který v příkladu výše obdrželi prokonzulové, a stejně jako oni i Pontifex Maximus u tohoto textu úspěšně ověří pravost Cézarova podpisu (MCXLII) dle přiloženého certifikátu (CAESAR XXIII MCXLVII MCCCLXXXVII).

Ze zašifrovaného textu:

DCCLXIX ZIRM ZMHM ZMGM QGBPMM 
GEIWEV BBMMM QGBPZMM QGGGPBBBZMM

tedy Pontifex Maximus úspěšně vyextrahoval samotné sdělení:

VENI VIDI VICI

a navíc má jistotu, že zprávu právě jemu (a nikomu jinému) poslal Cézar (a nikdo jiný).

Kam dále?

Nyní už víte vše, tak si to jen shrňme.

© David Navara, nuabi, s.r.o. ~ rev. 10.02.2020 12:07 ~ Kopírovat jen s uvedením zdroje: www.elektronicky-podpis.info.

NAVRCHOLU.cz


Využijte služby INOXI: Zřízení elektronického podpisu v pohodlí Vaší kanceláře bez nutnosti návštěvy pošty. Nebo bez dopravy vzdálená asistence a instalace po celé ČR. Obojí včetně kompletní instalace a zaškolení.