V pondělí jsem zde na Lupě psal o tom, jak se nedávno zásadně změnila pravidla autorizovaných konverzí na CzechPointech. Konkrétně o tom, jak dostupnost obálky (datové zprávy) ovlivňuje možnosti konverze jednotlivých příloh. Dnes bych na to rád navázal podrobnějším popisem druhé velké změny, která se týká „vícenásobných podpisů“.
Proč více podpisů?
Na úvod si řekněme, proč u elektronických dokumentů nemusíme vždy vystačit jen s jedním podpisem, a proč jich někdy potřebujeme více.
Jedním z důvodů je tzv. fikce elektronického podpisu (§18 odst. 2 zákona č. 300/2008 Sb.): ta na jedné straně říká, že podání činěná skrze datové schránky nemusíte podepisovat – ale na druhou stranu má výjimku, která říká, že to neplatí tam, kde jedná společně více osob. Což je případ právnických osob (např. s.r.o.), za které jedná více jednatelů společně a nikoli každý z nich samostatně. Tito jednatelé pak musí svá podání, činěná skrze datovou schránku, opatřit tolika elektronickými podpisy, kolik je současně jednajících osob.
Jenže mohou nastat i jiné situace. Například když jeden úředník vyprodukuje nějaký elektronický dokument a také se pod něj řádně elektronicky podepíše – a pak jej ještě schválí jeho nadřízený, který na stejný dokument také přidá svůj elektronický podpis. Dosud nepříliš dořešenou variantou tohoto scénáře je možnost vyznačit druhým podpisem nabytí právní moci samotného dokumentu (s jedním původním podpisem).
Počítat ale musíme i s další důležitou variantou, která bude stále častější. Tedy: pokud se používání elektronických podpisů v ČR vůbec udrží, a nebude zcela nahrazeno přenosem skrze datové schránky (viz úvahy na konci předchozího článku). U elektronických podpisů je totiž záměrně omezována doba, po kterou je možné ověřit jejich platnost – pokud se neučiní vhodná opatření pro prodloužení této doby.
Tato opatření mají obvykle podobu aplikace časových razítek: jedno lze přidat přímo do samotného podpisu, jako tzv. podpisové razítko. Ale i toto časové razítko má omezenou dobu, po kterou lze jeho platnost ověřit – a ještě dříve než tato doba uplyne, je třeba přidat další časové razítko. To už ale nemůže být přidáno k samotnému podpisu, jako „podpisové“ časové razítko (protože jedno takové už tam je), ale musí být přidáno k celému dokumentu, jako „samostatné“ razítko. Častěji a přesněji je označováno jako tzv. dokumentové časové razítko či archivní razítko.
No a i na takováto „samostatná“ časová razítka musí být pamatováno při autorizovaných konverzích, stejně jako na druhý a další elektronický podpis na jednom a téže dokumentu ve formátu PDF. Dosud tomu tak nebylo a CzechPointy nekonvertovaly dokumenty, opatřené více podpisy či podpisem a samostatným razítkem. Nově to ale již dokáží.
S čím je problém?
Připustit konverzi dokumentů s více podpisy ale znamená, že nejprve musí být vyřešena dosti zásadní otázka: jaká kombinace podpisů má být postačující pro to, aby autorizovaná konverze na žádost byla možná?
Od zákona v tomto ohledu pomoc neočekávejme, protože ten nerozlišuje počet podpisů a pouze říká, že „dokument musí být podepsán“. Přesněji: že konverze se neprovede, pokud elektronický dokument není opatřen uznávaným elektronickým podpisem (či značkou) toho, kdo dokument vydal nebo vytvořil.
Jak tedy postupovat v případě, kdy je dokument opatřen dvěma nebo dokonce více elektronickými podpisy? Musí být platné a uznávané všechny z nich? Nebo stačí, aby platný a uznávaný byl jen jeden z nich, konkrétně ten „nejmladší“ (ve smyslu doby svého vzniku), resp. ten, který je „nejvíce vnější“ (ve smyslu vnořování interních podpisů, z nichž každý „překrývá“ i ty předchozí)?
Podle dostupných informací byla nakonec zvolena tato druhá varianta. Tedy že všechny podpisy nemusí být uznávané – ale uznávanými a platnými musí být jeden či několik „nejmladších“, ve výše uvedeném smyslu, a to v souvislé řadě. Jenže co ty ostatní, které jsou „před nimi“?
Zde, podle mých empirických zjištění na CzechPointech, kdy jsem si nechával konvertovat různé testovací dokumenty, platí následující pravidlo: „nejstarší“ podpisy nemusí nutně být uznávané, ale také musí být ověřeny jako platné.
Snad je to lépe patrné z následujícího obrázku:
Problém s formátem
Další problém, na který jsem při testování různých konverzí narazil, se týkal správného rozpoznání formátu PDF dokumentů a jejich elektronických podpisů.
Když jsem poprvé přišel na CzechPoint s několika příklady PDF dokumentů s více podpisy, neuspěl jsem se žádostí o konverzi ani u jednoho. Když jsem pak zkoumal, čím to může být, dospěl jsem k závěru, že je to důsledek dodatečného přidávání revokačních informací (fakticky: CRL seznamů) do již podepsaných PDF dokumentů. To se dělá kvůli zachování možnosti ověření i později, když už potřebné revokační informace nejsou k dispozici (ale příjemce dokumentu, který si potřebuje ověřit platnost podpisu, je najde přímo vložené do dokumentu). Správně by se tam tyto informace neměly vkládat v okamžiku vzniku podpisu, ale až dodatečně, nejdříve za 24 hodin (aby se do těchto informací mohly promítnout i eventuální změny, ke kterým došlo těsně před vznikem podpisu).
Jenže, jak jsem si následně empiricky ověřil, jak CzechPointy, tak třeba i služba SecuStamp (kterou přímo provozuje Software602 a zřejmě používá stejný „engine“ jako CzechPointy) hodnotí takto dodatečně přidané revokační informace jako porušení integrity – a kvůli tomu CzechPointy odmítají konverzi provést. Naproti tomu programům společnosti Adobe (Acrobat a Reader) toto dodatečné vkládání revokačních informací (které samy zprostředkovávají) nijak nevadí a nevnímají jej jako porušení integrity podepsaného dokumentu.
Ukázat si to můžeme na následujícím příkladu dokumentu se třemi uznávanými elektronickými podpisy, který si můžete stáhnout odsud ve dvou verzích. CzechPoint ale zkonvertuje pouze první verzi (viz konverzní doložka), s revokačními informacemi vloženými automaticky již při vzniku podpisu, zatímco druhou variantu (s dodatečně přidanými revokačními informacemi) odmítne – právě s poukazem na porušenou integritu. Stejně tak i služba SecuStamp, která hlásí u druhé verze porušenou integritu, viz následující obrázek:
Naproti tomu pro programy Adobe Acrobat a Reader jsou obě verze řádně a platně podepsány:
Příklad dokumentu, jehož konverze byla odmítnuta
Pojďme nyní již k různě kombinovaným příkladům, na kterých bude názorněji vidět celé pravidlo o konverzi dokumentů s více podpisy.
Začněme u neúspěšných pokusů o konverzi: když jsem přišel na CzechPoint s tímto PDF dokumentem se dvěma podpisy, neuspěl jsem.
Oba elektronické podpisy na tomto dokumentu jsou uznávané: první vznikl 11.1.2011 a je bez časového razítka – což znamená, že jeho platnost dnes již není možné pozitivně ověřit. Kvůli tomu byla jeho autorizovaná konverze (na žádost) odmítnuta. A to i přesto, že druhý podpis (s časovým razítkem k 28.3.2011) se stále dá ověřit jako platný.
Připomeňme si ale důležitou skutečnost, v návaznosti na předchozí článek: to, že konverze není u tohoto dokumentu možná, platí pouze v případě, kdy na CzechPoint přijdete pouze s tímto PDF dokumentem. Pokud jej „protáhnete“ skrze datové schránky – tedy pokud jej přenesete mezi libovolnými dvěma datovými schránkami, třeba i v Poštovní datové zprávě – pak vám jej CzechPointy rády zkonvertují. Jak už jsem psal minule, nepřijde mi to správné. Protože tím, že se určitý dokument nejprve přenese ze schránky A do schránky B, se sám nijak nezmění. Jde stále o tentýž dokument. Ale najednou už autorizovaně konvertovat jde.
Příklady dokumentů, jejichž konverze byla provedena
Jiným příkladem může být tento PDF dokument, s jedním zaručeným a jedním uznávaným elektronickým podpisem. Se žádostí o jeho konverzi jsem už uspěl (viz konverzní doložka).
Na tomto dokumentu se již uplatnilo ono pravidlo o tom, že ne všechny podpisy musí být uznávané a platné – ale „na začátku“ (resp. „před“ uznávanými podpisy) může být i určitý počet takových podpisů, které nejsou uznávané. Jen musí být možné ověřit jejich platnosti. Zde jde o jeden zaručený podpis, konkrétně založený na komerčním certifikátu (od I.CA), jehož platnost se ještě dá ověřit. Druhý podpis je již uznávaný – a díky němu byla konverze samotného PDF dokumentu možná.
Na konverzní doložce tohoto příkladu si povšimněte jedné zajímavé skutečnosti: je na ní uveden pouze jeden podpis, a to ten druhý, uznávaný. O prvním (pouze zaručeném) podpisu není na konverzní doložce ani slovo. Což mi nepřijde zcela správné – existence dalších platných podpisů, byť jen zaručených, může být významnou informací, která se takto při autorizované konverzi ztrácí.
Jiným zajímavým příkladem, jehož konverze byla provedena, je tento PDF dokument, opatřený jedním certifikačním podpisem a dvěma (schvalujícími) uznávanými podpisy. Tentokráte ale CzechPoint nepoznal rozdíl mezi certifikačním a schvalujícím podpisem a vyhodnotil ho jako běžný (tj. „schvalující“ podpis) – a výsledný dokument se třemi podpisy zkonvertoval, viz doložka.
Viditelné podpisy nejsou vidět
Za zmínku určitě stojí také jedna věc, která je přinejmenším sporná a autoři nových pravidel pro autorizované konverze museli při jejím řešení vybírat nejmenší zlo.
Jde o problematiku viditelných, resp. vizualizovaných podpisů, které se určitým způsobem (viditelně) promítají do těla samotného dokumentu. Mohou obsahovat určitý text, obvykle přebíraný z podpisového certifikátu, ale mohou zahrnovat obecně jakýkoli obrázek, například s fotkou uživatele. Příklad vidíte na následujícím obrázku, který ukazuje PDF dokument se dvěma různými viditelnými podpisy (ke stažení zde).
Problém je ale v tom, že onen obrázek, který může být součástí viditelného podpisu, může být skutečně jakýkoli. Tedy například i takový, který znázorňuje nějaký text, graficky i logicky navazující na text samotného dokumentu – a třeba i zásadně měnící jeho vyznění. Například pod nějakým dlužním úpisem by mohl být něčí viditelný podpis, obsahující obrázek s textem, který říká, že vše bylo řádně a včas splaceno.
Jak ale zabránit možnosti takovéhoto zneužití? Například tím, že se viditelná podoba elektronického podpisu dá až do doložky, a ne do samotného dokumentu? Nebo se viditelné podpisy jednoduše zakáží? Nebo se povolí – ale nebudou se zobrazovat?
Nakonec se prosadila poslední možnost: i když v samotném PDF dokumentu jsou nějaké viditelné podpisy, v konvertované verzi vidět nejsou. Viz následující obrázek, na kterém vidíte výsledek konverze zde popisovaného dokumentu se dvěma viditelnými podpisy. Viditelné podpisy na něm nejsou, a jejich viditelný charakter není v konverzní doložce ani zmíněn.
No, z pohledu bezpečnosti, resp. hrozby zneužití, je to asi nejbezpečnější řešení. Na druhou stranu si dovedu představit, že některým lidem se nemusí líbit, když na konvertovaném dokumentu neuvidí obrázek, na který jsou zvyklí a s jehož existencí počítají.
Stejně tak si nejsem jist, zda je pak správné v konverzní doložce tvrdit, že se autorizovaná kopie shoduje s originálem. Minimálně nějaké upozornění na to, že viditelné podpisy byly z těla dokumentu odebrány, by si (podle mého názoru) konverzní doložka zasloužila.
Samostatná časová razítka – zatím moc ne
Jak již zaznělo výše, nová pravidla konverzí na CzechPointech pamatují i na samostatná (tzv. dokumentová) časová razítka. Realita je ale zatím poněkud „nedozrálá“. Zkoušel jsem si nechat konvertovat dva PDF dokumenty s takovýmito samostatnými razítky, a v obou případech to moc nedopadlo.
V prvním případě se jednalo o dokument, opatřený pouze časovým razítkem a „protažený“ datovou schránkou. CzechPoint jej zkonvertoval, ovšem jako dokument bez platného podpisu (či samostatného razítka).
Ve druhém případě (tohoto PDF dokumentu) sice CzechPoint správně poznal, že kromě jednoho uznávaného podpisu je na dokumentu „ještě něco“, co kvalifikoval jako „podpis (značku)“ – ale podle konverzní doložky to „nebylo ověřeno“.
Těžko říci, co přesně to má znamenat: zda se CzechPoint ani nepokoušel platnost tohoto samostatného razítka ověřit. Nebo zda se o to pokoušel, ale nepovedlo se mu to. Nebo se mu to povedlo, ale dospěl ke zjištění, že razítko je neplatné? Kdoví. Podle Adobe Readeru ale toto časové razítko platné je.