Elektronická pošta a elektronický podpis

Elektronická pošta je nedostatečně zabezpečená a proto představuje nedůvěryhodný způsob komunikace. Technologie elektronického podpisu založeného na osobních certifikátech umožňuje tuto situaci řešit.

Proč podepisovat elektronickou poštu?

Stručně fungování elektronické pošty

email-diagram

Schéma fungování elektronické pošty

Slabiny elektronické pošty

Lidé X emailové adresy

  • Patří adresa alice@a.org skutečně Alici?
  • Napsala zprávu skutečně Alice?
  • Nezměnil Bob zprávu, kterou dostal od Alice?
  • Šifrování zpráv i jejich přenosu je volitelné:
    • Nezměnil zprávu od Alice některý ze serverů smtp.a.org, mx.b.org, pop3.b.org nebo imap.b.org?
    • Nezměnil zprávu někdo jiný během přenosu?

Jak funguje elektronický podpis?

Elektronický podpis

zaručený elektronický podpis poskytuje záruky:

  • integrita dokumentu – lze poznat, zda se dokument od okamžiku podpisu nezměnil a tak zjistit, zda je dokument autentický,
  • identifikace podepisujícího – sdělení identity,
  • autentizace podepisujícího – ověření identity,
  • nepopiratelnost – podepsaná osoba nemůže popřít, že podpis vytvořila ona.
  • uznávaný elektronický podpis – je uznáván pro komunikaci občana se státními orgány, neboť musí splňovat zákonem stanovené požadavky:
    • Využívá kvalifikovaný certifikát vystavený akreditovanou certifikační agenturou.

K čemu elektronický podpis neslouží

Elektronický podpis neposkytuje následující záruky:

  • důvěrnost – s obsahem dokumentu se nemůže seznámit někdo nepovolaný,
  • autorizaci – oprávnění k určitým úkonům,
  • ověření času vytvoření čas je převzat ze systémových hodin.

Asymetrická kryptografie

Asymetrická kryptografie – operuje se dvěma různými klíči (soukromým a veřejným) mezi, kterými je specifický vztah, který umožňuje ověřit, a zajišťuje, že při znalosti veřejného klíče nelze získat soukromý klíč.

  • soukromý klíč – slouží k vytváření podpisu a jednoznačné identifikaci podepisujícího, musí být bezpečně uchován jen u podepisujícího,
  • veřejný klíč – slouží k ověřování podpisu a určení, komu podpis patří, je potřeba šířit mezi příjemce podepsaných dokumentů.

Certifikáty

Osobní certifikáty – elektronicky podepsané potvrzení od důvěryhodné třetí strany dokládající, jaké osobě patří veřejný klíč:

  • kvalifikované certifikáty – požadavky na ně, jejich obsah, způsob přezkoumání identity vlastníka a ručení za tato zjištění jsou vymezeny v zákoně;
  • „komerční“ certifikáty – nemají zákonem vymezené požadavky,
  • certifikáty „s vlastním podpisem“ (tzv. „self-signed“) – vystavovatel certifikátu je totožný s držitelem certifikátu.

Důvěryhodnost – nakolik lze věřit údajům v certifikátu.

Omezení užití – podpis/šifrování zpráv/dokumentů.

Úložiště certifikátů:

  • pro důvěryhodné × nedůvěryhodné certifikáty;
  • systémové × aplikační úložiště;
  • úložiště obvykle obsahují „předschválené“ certifikáty.

Certifikační autority

Certifikační autorita – vydavatel certifikátů:

  • ověřuje identitu podepisujících, zda jim patří veřejný klíč a zda mají kontrolu nad příslušným soukromým klíčem,
  • spravuje seznam zneplatněných (revokovaných) certifikátů a ověřuje oprávněnost žádostí o zneplatnění certifikátu.

Druhy CA:

  • Kvalifikovaná CA – smí vydávat kvalifikované certifikáty a má zákonem stanovené požadavky na svůj chod.
  • Akreditovaná CA – stát prověřil, že splňuje zákonné požadavky.
  • „Komerční“ CA – vydává „komerční“ certifikáty.
  • Stromová organizační struktura: kořenová CA („self-signed“ certifikát) a podřízené CA.

PKI – infrastruktura veřejného klíče

Centralizovaný systém, kde certifikáty vydává certifikační autorita a důvěryhodnost certifikátů a distribuce v nich obsažených veřejných klíčů je řešena pomocí „stromu důvěry“:

  • jestliže důvěřuji kořenové CA (certifikátu kořenové CA),
  • pak důvěřuji všem podřízeným CA (certifikátům podřízených CA),
  • a tedy důvěřuji i všem jimi vystaveným osobním certifikátům,
  • a jejich prostřednictvím i všem jimi vytvořeným elektronickým podpisům.

Standardy X.509 (obsah a kódování) a PKCS (kotejnery):

  • PKCS#12 – certifikát, soukromý klíč a nadřazené certifikáty,
  • PKCS#7 – podpis zprávy a řetězec certifikátů.

Důvěryhodnost certifikátu:

  • certifikát je důvěryhodný,
  • certifikát je nedůvěryhodný,
  • není dost informací pro hodnocení důvěryhodnosti certifikátu.

PGP – dost dobré soukromí

Decentralizovaný systém, ve kterém si uživatelé vydávají certifikáty sami a důvěryhodnost certifikátů řeší pomocí „pavučiny důvěry“:

  • jestliže důvěřuji uživateli (jeho osobnímu certifikátu),
  • podepíši jeho certifikát svým soukromým klíčem (k mému certifikátu),
  • tak vzniká složitá síť vztahů a vazeb důvěry mezi lidmi.

Důvěryhodnost certifikátu:

  • certifikát je maximálně důvěryhodný,
  • certifikát je plně důvěryhodný,
  • certifikát je čáštečně důvěryhodný,
  • certifikát je nedůvěryhodný,
  • není dost informací pro hodnocení důvěryhodnosti certifikátu.

Vytváření a ověřování elektronického podpisu

Hašování a kolizní dokumenty

Hašování – vytváření otisku (haše) s pevně danou velikostí pomocí hašovací funkce z libovolně velkých dat:

  • i malá změna dokumentu se projeví značnou změnou haše,
  • nalezení dvou dokumentů se stejnou haší (kolizní dokumenty) je reálně velmi obtížné,
  • nalezení kolizního dokumentu k danému dokumentu je ještě obtížnější.

Řešení problému s kolizními dokumenty:

  • „Průběžné posilování“ kryptografických algoritmů a hašovacích funkcí využívaných k podepisování
  • Omezení platnosti certifikátů a tím omezení doby, po kterou je možné elektronický podpis ověřit

Proces podepisování

Elektronický podpis je číslo, které je výsledkem programem realizovaného výpočtu (asymetrická kryptografie), do nějž vstupuje:

  • haš podepisovaného dokumentu – podpis je závislý na dokumentu a umí detekovat jeho změnu,
  • soukromý klíč – podpis je individuální,
  • údaj o čase – pro ověření platnosti certifikátu při podepisování.

Připojení elektronického podpisu k dokumentu:

  • interní elektronický podpis – musí podporovat formát dat, včetně vícenásobných podpisů, podpis je vždy k dispozici,
  • externí elektronický podpis – lze podepsat jakákoliv data, složitější řešení vazby podpis–podepsaná data.

Proces ověřování podpisu

  • Platnost podpisu: platný × neplatný × platnost neznámá.
  • Nutné podmínky platnosti podpisu:
    • integrita dokumentu neporušena – jinak neplatný
    • osobní certifikát je platný (k okamžiku posuzování):
    • neuplynula doba řádné platnosti – jinak platnost neznámá
    • nebyl zneplatněn – jinak neplatný
    • všechny nadřazené certifikáty jsou platné:
      • neuplynula doba řádné platnosti – jinak platnost neznámá
      • nebyl zneplatněn – jinak neplatný

Proces ověřování podpisu – dílčí kroky

  1. Ověření integrity dokumentu:
    • zjistí se nový otisk z podepsaného dokumentu (hašování)
    • zjistí se původní otisk dokumentu výpočtem z elektronického podpisu a věřejného klíče (asymetrická kryptografie)
    • porovná se nový a původní otisk.
  2. Ověření zda nebyl certifikát zneplatněn
    • OSCP – okamžité ověření revokace konkrétního certifikátu,
    • CRL – seznam všech zneplatněných certifikátů, který může být aktualizován se zpožděním.

Elektronický podpis a elektronická pošta

Podepisuje se pouze tělo zprávy:

  • informace v hlavičkách (příjemce, odesílatel, předmět) nezaručené

Realizace podpisu zprávy:

  • S/MIME – podepisování pošty odesílatelem založené na PKI:
    • složená zpráva využívající MIME (multipart/signed),
    • podpis jako příloha: smime.p7s (Content-Type: application/pkcs7-signature).
  • PGP/MIME – podepisování pošty odesílatelem založené na PGP:
    • složená zpráva využívající MIME (multipart/signed),
    • podpis jako příloha: signature.asc (Content-Type: application/pgp-signature).
  • DKIM a ADSP – podepisování a ověřování pošty na serveru:
    • ověření, zda pošta pochází z dané domény,
    • politika, jak má příjemce nakládat s nepodepsanými zprávami.

Poštovní klient s podporou S/MIME či PGP (seznam viz Wikipedia).

Závěr

Zaručený elektronický podpis zvyšuje důvěryhodnost komunikace prostřednictvím elektronické pošty pomocí:

  • detekce porušení integrity zprávy,
  • identifikace a autentizace podepisující osoby.

Na VŠE lze snadno získat osobní certifikáty TCS použitelné pro:

  • podepisování zpráv a dokumentů,
  • šifrování zpráv a dokumentů.