Vyšlo na Lupě, 21.10.2016
Vytištěno z adresy: http://www.earchiv.cz/b19/b1021001.php3

Archi.gov.cz: konečně jasné slovo k digitální kontinuitě

Ministerstvo vnitra spustilo nový web o architektuře eGovernmentu. Vyjadřuje se na něm i k tomu, co a jak dělat s elektronickými dokumenty, aby si udržely svou průkaznost i po delší dobu.

Je to skoro přesně rok, co vláda svým usnesením č. 629 ze 3. října 2018 schválila program „Digitální Česko“, včetně jeho tří koncepčních dokumentů (Informační koncepce ČR, Česko v digitální Evropě a Digitální ekonomika a společnost). Součástí předmětného usnesení byla i řada konkrétních zadání, a mezi nimi také úkol:

zajistit vydání a uveřejnění na internetových stránkách Ministerstva vnitra dokumentů k Informační koncepci ČR do konce září 2019, a to Metody řízení ICT veřejné správy ČR, Slovník pojmů eGovernmentu, Národní architektonický rámec, Národní architektonický plán

I stalo se, a tak přesně 3. října 2019 ministerstvo vnitra oznámilo zveřejnění příslušných dokumentů, dále konkretizujících celou informační koncepci našeho státu. Samozřejmě ale ke zveřejnění došlo na webových stránkách, a nikoli na „internetových stránkách“, jak nesprávně požaduje usnesení vlády. Osobně oceňuji, že vnitro sáhlo po doméně gov.cz a příslušné „architektonické“ informace umístilo na adresu archi.gov.cz.

 
Domovská stránka archi.gov.cz
 

Co na archi.gov.cz najdete?

Pokud se na archi.gov.cz prokliknete, najdete zde všechny dokumenty, které požaduje vládní usnesení. Tedy Metody řízení ICT veřejné správy ČR, Slovník pojmů eGovernmentu, Národní architektonický rámec a Národní architektonický plán. Kromě toho zde najdete i samotnou zastřešující Informační koncepci ČR, a navíc ještě Osnovu vzorové informační koncepce OVS a stručný Přehled klíčových zákonů týkajících se eGovernmentu.

Vše je navíc dostupné i ke stažení ve formě souborů, coby „Navazujících dokumentů Informační koncepce ČR“, pro offline čtení.

Na novém webu na archi.gov.cz naopak nenajdete ostatní dva dokumenty z Digitálního Česka, tedy Česko v digitální Evropě a Digitální ekonomika a společnost. Protože ty se již přímo netýkají eGovernmentu.

Něco je zjednodušené až moc

Samotný obsah, který na archi.gov.cz najdete, je docela různorodý – od velmi zjednodušených, až pouze heslovitých tezí, až po podrobnější rozbory a výklady. Také zdrojů je více. Ale ne vždy jsou informace správné.

Dovolím si jako příklad dvě ukázky: první je ze slovníku eGovernmentu a ukazuje heslo „časové razítko“. Zvýrazněná část je převzatá z Wikipedie, přičemž zdroj je korektně uveden, vpravo.

 
Definice časového razítka
 

Problém je v tom, že už na Wikipedii je toto heslo špatně – časové razítko se nemusí přidávat přesně v okamžiku vzniku podpisu, ale i později. Proto nemůže prokazovat okamžik vzniku, ale pouze „okamžik, kdy razítkem opatřená data už existovala“. Což není to samé.

Přitom další část hesla „Jsou to data v elektronické podobě, ….“, doslova převzatá z nařízení eIDAS, už je správně, stejně jako další popis ve sloupečku napravo.

Nebo jiná pasáž, týkající se používání datových schránek, kterou vidíte na následujícím obrázku:

 
Minimalistická pasáž o datových schránkách
 

Je to hodně minimalistická pasáž, ale zvýrazněná část je zjednodušená už přes únosnou míru: rozhodně není pravdou, že „veškeré úkony činěné skrze datovou schránku směrem do úřadu od klienta VS se pokládají za elektronicky podepsané …“. To je narážka na tzv. fikci podpisu (zakotvenou v §18 odst. 2 zákona č. 300/2008 Sb.), která je sama o sobě problematická (když říká, že podání odesílané datovou schránkou není nutné podepisovat) – ale přeci jen má svá omezení. Zejména to, že vyžaduje použití vlastní datové schránky (ve smyslu držitele).

Rozhodně tedy nejde, abych ze své datové schránky poslal nepodepsané podání za někoho jiného. Například za poslance XY, že se vzdává svého mandátu. Nebo za nějakou banku, že chce vstoupit do insolvence – a příjemce to bral jako řádně podepsané, nepožadoval nic dalšího (ani další autentizaci neboli ověření identity, ani autorizaci neboli oprávnění ke konkrétnímu úkonu) a rovnou podle obsahu jednal.

Konečně něco i k digitální kontinuitě

Naopak poměrně detailně zpracovaná je v rámci Národního architektonického plánu problematika digitální kontinuity. A to jak co do vymezení podstaty celého problému, který se za tímto klíčovým slovem skrývá, tak i co do nástinu možných řešení problému digitální kontinuity. Což si také dovolím ocenit, protože to je po dlouhé době (od „dobře utajeného“ zavedení podpory pro digitální kontinuitu v datových schránkách v roce 2012) konečně nějaké jasné slovo k této časované bombě celé současné digitalizace, a nikoli jenom českého eGovernmentu.  

Jen pro upřesnění, pro čtenáře, kteří neví, co si pod tímto problémem reálně představit – jde například o situaci na následujícím obrázku:

 
Příklad dokumentu, u kterého se nepodařilo ověřit platnost podpisu
 

Máte nějaký starší elektronický dokument, který potřebujete někomu předložit (nejspíše proto, abyste uplatnili nějaká svá práva). Může jít třeba o nějaké správní rozhodnutí, které jste dostali do své datové schránky již v elektronické podobě. Nebo o něco, co jste si nechali autorizovaně konvertovat – na tom nezáleží. Důležité je, že jde o dokument, pro který je předepsána písemná forma (což zahrnuje i podpis jednající osoby). A že příjemce, kterému takovýto dokument předkládáte, je povinen si nejprve ověřit jeho autenticitu a pravost.

To se dělá tak, že se ověří (technická) platnost elektronického podpisu na dokumentu (případně značky či pečetě). A pokud je podpis platný, je třeba ještě zjistit, o jaký druh podpisu se jedná – protože pouze u uznávaných (a dnes i kvalifikovaných) elektronických podpisů je možné přímo z jejich (technické) platnosti dovozovat i jejich (právní) pravost a z ní pak i autenticitu a pravost celého dokumentu jako takového.

Jenže, a to je právě ten problém: platnost elektronického podpisu na dokumentu z předchozího obrázku, který pochází z roku 2012, dnes již není možné ověřit. Pokus o jeho ověření v Adobe Readeru skončil „pokrčením ramen“ (konstatováním, že stav platnosti podpisu je neznámý).

Praktický důsledek je ten, že takovýto dokument má stejné účinky, jako kdyby nebyl podepsaný. A pokud by byl předložen někde, kde je požadován řádně podepsaný dokument, neměl by být příjemcem akceptován.

Příkladem může být pokus o autorizovanou konverzi takového dokumentu – tu by Czech POINT odmítl právě kvůli absenci platného (uznávaného elektronického) podpisu.

 
Elektronický dokument (PDF), jehož podpis není možné ověřit jako platný, se nedá konvertovat
 

Na Czech POINTu bychom tedy s takovýmto dokumentem neuspěli. Ze stejného důvodu, tedy kvůli nemožnosti ověřit podpis jako platný, bychom s obdobným dokumentem neuspěli ani na podatelnách úřadů či soudů.

 
Příklad výsledku (neúspěšného) ověření platnosti podpisu na podatelně soudu
 

Ale v rámci soudního řízení bychom případně mohli uspět s nějakým jiným důkazem toho, že jde o autentický a pravý dokument. Možností je více – může to být nějaká svědecká výpověď nebo nějaká digitální stopa, transakční protokol apod. Ale musíte takovéto „další důkazy“ mít a musí být dostatečné pro spolehlivé prokázání toho, co už ze samotného dokumentu prokázat nelze.

Co je příčinou problémů?

Zpět ale k Národnímu architektonickému plánu: ten v této své části relativně podrobně vysvětluje, co je problém digitální kontinuity a proč vzniká.

 
Definice digitální kontinuity na archi.gov.cz
 

Prvotní příčinou je objektivní fyzikální realita: kryptografické algoritmy, používané jak při podepisování, tak i při šifrování či pouhém zajišťování neměnnosti (integrity), časem slábnou a není možné se na ně dále spoléhat. Proto je v elektronických podpisech zabudována jakási časová pojistka, která chrání před důsledky onoho oslabování – právě tím, že po určité době znemožní ono spoléhání se. Konkrétně tím, že znemožní ověření platnosti podpisu:

… možnost ověřit (technickou) platnost elektronických podpisů a pečetí, stejně jako časových razítek, se s postupem času ztrácí. Jde o základní vlastnost, jakousi časovou pojistku, charakteristickou pro všechny zaručené (a vyšší) druhy elektronických podpisů, pečetí a razítek. Jejím účelem je chránit již vytvořené elektronické dokumenty před zastaráváním a oslabováním kryptografických postupů a algoritmů, použitých u jejich podpisů (ale i pečetí a časových razítek).

To je ostatně i případ výše zobrazeného příkladu z roku 2012: díky časovému razítku (které se opírá o certifikát s řádnou dobou platnosti do 21. 12. 2016), bylo možné ověřit platnost podpisu na tomto dokumentu právě do 21. 12. 2016.

 
Do kdy bylo možné ověřit platnost podpisu na dokumentu?
 

Pak zaúčinkovala ona časová pojistka a způsobila, že později už ověření není možné – pokus o ověření skončil oním „pokrčením ramen“ (konstatováním, že platnost podpisu je neznámá), jak ukazují předchozí obrázky (přičemž Czech POINT popisuje výsledek nesprávně jako neplatnost, i když ve skutečnosti jde o neznámý stav platnosti).

Mimochodem, bez časového razítka by možnost ověřit platnost podpisu skončila ještě mnohem dříve (s koncem řádné doby platnosti podpisového certifikátu).  

Co je ale důvodem tak drastického opatření v podobě oné časové pojistky, která po určité době znemožní ověření platnosti? To Národní architektonický plán popisuje takto:

vzhledem k oslabení kryptografických algoritmů, použitých u původně podepsaného dokumentu, by již bylo možné reálně najít (vypočítat) jiný dokument, který je tzv. kolizní vůči původně podepsanému dokumentu. Tedy takový dokument, který má jiný obsah, ale stejný elektronický podpis. Pak by bylo možné přenést elektronický podpis z původně podepsaného dokumentu na onen později vytvořený kolizní dokument, a v obou případech by byl takovýto podpis ověřen jako (technicky) platný – a nebylo by tak již možné spolehlivě prokázat, který dokument je pravý (který byl původně podepsán).

Zdůrazněme si, že jde o problém, který se týká kvalifikovaných, uznávaných i zaručených elektronických podpisů – protože všechny jsou založeny na kryptografických algoritmech a technikách (které časem zastarávají v právě popsaném smyslu).

Naopak se tento problém netýká tzv. prostých elektronických podpisů, protože ty žádnou kryptografii nevyužívají – ani ji nepotřebují, protože na ně nejsou kladeny žádné požadavky (kromě toho, že musí jít o „něco elektronického“, resp. být „z nul a jedniček“), a stejně tak nemají za úkol cokoli zajišťovat, chránit, garantovat apod.

Prostým elektronickým podpisem tak může být opravdu cokoli v elektronické podobě, například nějaký obrázek (třeba smajlík), kus textu (například něčí napsané jméno, e-mailová patička) apod., co v lepším případě může posloužit jako určitá indikace něčeho (co může, ale také nemusí odpovídat skutečnosti). Víc bychom po prostých podpisech chtít neměli.

Kolizní dokumenty jsou realitou

Abychom si ukázali, že zastarávání kryptografických algoritmů není žádným abstraktním jevem bez konkrétních důsledků na běžnou praxi, ukažme si vše na konkrétním příkladu zastarávání a oslabování tzv. hashovacích funkcí.

Jen pro připomenutí: hashovací funkce slouží k tomu, aby se v rámci podepisování ze zdrojového dokumentu nejprve vytvořil tzv. otisk (anglicky: hash) a teprve na ten se pak aplikují další (podpisové) kryptografické algoritmy. Což znamená, že když dva různé dokumenty mají stejný otisk (hash), mají i stejný elektronický podpis – a právě tím se stávají vzájemně kolizními (každý z nich je kolizním dokumentem vůči tomu druhému). Elektronický podpis, vzniklý podepsáním jednoho dokumentu s využitím příslušné hashovací funkce, by pak šel přenést i na druhý dokument a nedalo by se již rozhodnout, který z nich byl původně podepsán.

Jak je ale možné, že se na (kvalifikované, uznávané i zaručené) elektronické podpisy vůbec můžeme alespoň po nějakou dobu spoléhat, když víme o právě popsaném nebezpečí?

Odpovědí je skutečnost, že hledání (spíše: výpočet) kolizních dokumentů je tak složité, že dnešním počítačům by trvalo neúnosně dlouhou dobu (nějaké statisíce až miliony let). A tak i „zlá strana“ dobře ví, že nemá cenu se o to ani pokoušet. Jenže to platí jen pro aktuálně dostupné počítače, ve vztahu k aktuálně používané hashovací funkci.

Výkonnost počítačů ale neustále roste, a co by dřívějším počítačům trvalo neúnosně dlouho, to ty novější mohou zvládnout již za únosně krátkou dobu. Právě v tomto smyslu „zastarávají a oslabují“ kryptografické algoritmy, včetně hashovacích funkcí, a musí být nahrazovány novějšími a „silnějšími“, které dále zvyšují složitost hledání kolizních dokumentů. A právě proto je v elektronických podpisech zabudována ona výše popisovaná časová pojistka, která nás chrání před důsledky zastarávání a oslabování – a současně nás nutí přecházet na novější a „silnější“ kryptografické algoritmy, včetně hashovacích funkcí.

Ještě před rokem 2010 se používala hashovací funkce SHA1 a byla považována za bezpečnou. Ovšem již v roce 2008, na doporučení odborné komunity kryptologů, vydalo naše MV ČR (jako gesční orgán v oblasti elektronických podpisů) doporučení k přechodu na novější hashovací funkce SHA2 (ve skutečnosti jde o celou skupinu hashovacích funkcí, zahrnující např. SHA256, SHA384 a SHA512). A to k přelomu mezi lety 2009 a 2010. Zdůrazněme si, že pro certifikační autority to byl příkaz, zatímco pro ostatní to bylo jen důrazně míněné doporučení.

Ministerstvo vnitra je oprávněno tuto změnu vyhlásit pouze pro oblast elektronického podpisu, avšak i pro jiné oblasti využití důrazně doporučuje, aby odpovědné osoby zvážily rizika spojená s dalším používáním hashovací funkce SHA1.

Navzdory tomuto varování je hashovací funkce SHA1 při elektronickém podepisování mnohde používána dodnes, viz příklad na následujícím obrázku.

 
Příklad podpisu, který využívá ještě hashovací funkci SHA1
 

Nicméně již v roce 2017 se objevily první kolizní dokumenty dle SHA1. Tedy takové, které mají stejný otisk, vytvořený podle této funkce. Popisoval jsem to podrobněji v tomto svém článku zde na Lupě již v únoru 2017, kde jsem upozorňoval, že hashovací funkce SHA1 již není bezpečná. Ukazoval jsem to na příkladu dvou PDF dokumentů, jejichž obsah je prakticky stejný – až na to, že na jednom je zvýrazněná číslice 1 a na druhém číslo 1000. Jak ukazuje následující obrázek, oba dokumenty mají stejný otisk podle SHA1, a jsou tedy vzájemně kolizní vzhledem k této hashovací funkci.

 
Příklad dvou PDF dokumentů, které jsou vzájemně kolizní vzhledem k hashovací funkci SHA1
 

Praktický důsledek je pak ten, že elektronický podpis obou dokumentů, vytvořený pomocí SHA1, je stejný – resp. podpis jednoho z dokumentů „pasuje“ na druhý dokument (je vyhodnocen jako platný podpis jednoho i druhého dokumentu), viz další obrázek. Takže už nelze rozhodnout, který dokument byl původně podepsán a který nikoli. Tedy, pro přesnost: nelze to rozhodnout ze samotných dokumentů a jejich podpisů. To samozřejmě nevylučuje nějaký „externí“ důkaz, například svědeckou výpověď, jiný věrohodný záznam apod.

 
Příklad toho, jak jeden (externí) podpis
 

Ostatně, můžete si to sami vyzkoušet. Již v původním článku z roku 2017 jsem uváděl odkaz ke stažení balíčku s oběma vzájemně kolizními PDF dokumenty i s jejich „společným“ (externím) elektronickým podpisem.

V dalším pokračování tohoto článku se již budeme zabývat tím, jak udržovat digitální kontinuitu elektronických dokumentů: ukážeme si a rozebereme, co k tomu říká nový web archiv.gov.cz, i jak se jeho rady dají realizovat v praxi.