← Zpět na návody

Jak ověřit důkaz (online nebo plně offline)

Dvě metody: ověření Proof ID ve veřejném verifieru, nebo ověření Evidence ZIPu — online přetažením do uploadu, nebo plně offline pomocí standardních open-source nástrojů.

Ověření odpovídá na jednu přesnou otázku: Byl tento důkaz od svého vzniku změněn — a je jeho časová kotva stále kryptograficky platná?

Návod Ověření Proof ID Evidence ZIP Offline ověřitelný cca 6 min čtení
Rychlý přehled

Ověřit lze dvěma způsoby: pomocí Proof ID (online) nebo pomocí Evidence ZIPu (online přetažením do verifieru, nebo plně offline pomocí python3 + openssl + ots). Výsledky jsou deterministické: Match nebo Modified, s detailním rozpadem podle vrstev — co prošlo, co selhalo.

Co znamená ověření

Ověření je záměrně jednoduché a deterministické: kontroluje, zda je důkaz byte- identický s původně zachyceným záznamem a zda jsou kryptografické časové kotvy stále platné. Neposuzuje pravdivost ani kdo má pravdu — ověřuje integritu.

Pod kapotou je každý GPA proof ukotven ve čtyřech nezávislých integritních vrstvách — file hashe, append-only hash chain, Bitcoin OpenTimestamps kotva a eIDAS kvalifikované časové razítko. Ověření je všechny zkontroluje. Manipulace s kteroukoli z nich — i přeformátování JSON whitespace — kontrolu shodí.

Metoda 1 — Ověření Proof ID (online)

Proof ID je trvalý identifikátor zachyceného záznamu. Kdokoli, kdo má Proof ID (nebo odkaz na proof), ho může online ověřit přes veřejný verifier — bez účtu, bez instalace, bez setupu.

  1. Otevřete stránku verifieru.
  2. Vložte Proof ID, nebo přímo otevřete odkaz na proof.
  3. Prohlédněte si výsledek — zachycené artefakty plus stav integrity všech čtyř vrstev.
Co uvidíte

Verifier vykreslí zachycené artefakty vedle jejich integritního stavu:

  • zachycený screenshot, extrahovaný text a source/finální URL
  • čas zachycení a otisky obsahu (SHA-256)
  • stav Bitcoin anchoru (zakotvený blok + transakce, pokud potvrzeno)
  • stav eIDAS kvalifikovaného razítka (jméno TSA, čas, platnost podpisu)
Otevřené ověření

Použijte veřejný verifier ke kontrole Proof ID, nebo nahrajte Evidence ZIP pro plné multi-layer ověření.

Metoda 2 — Ověření Evidence ZIPu

Ověření ZIPu je navržené pro sdílení a dlouhodobou archivaci. Lze ho provést dvěma způsoby: online přes verifier (drop-in upload, okamžitý report) nebo plně offline pomocí bilingvního README uvnitř ZIPu a standardních open-source nástrojů.

Online — drop-in upload

Pokud máte internet a chcete jen rychlou odpověď, verifier vyřídí celý proces za vás:

  1. Otevřete stránku verifieru.
  2. Přetáhněte Evidence ZIP do upload zóny (není třeba ho rozbalovat).
  3. Dostanete per-layer report — integrita souborů, hash chain, eIDAS razítko, Bitcoin anchor — každá označená PASS nebo FAIL.

Offline — bez GPA, bez internetu, bez účtu

Všechny externí závislosti, které ověření potřebuje, jsou přibalené uvnitř ZIPu samotného: manifest, záznamy hash chainu, Bitcoin OpenTimestamps receipt, plný certifikační řetězec kvalifikované TSA a zmrazený snapshot EU Trusted List. Bilingvní (anglicko-český) README.md uvnitř ZIPu vás provede čtyřmi verifikačními kroky s copy-paste příkazy — jeden krok na každou integritní vrstvu:

  1. Krok 1 — Integrita souborů — Skript v python3 přečte manifest.json, přepočítá SHA-256 každého souboru v balíčku a porovná. PROŠEL = nic nebylo přidáno, odebráno ani změněno.
  2. Krok 2 — eIDAS kvalifikované časové razítko — openssl ts -verify zkontroluje RFC 3161 token proti orazítkovanému payloadu pomocí přibaleného certifikačního řetězce TSA. (Pro prostředí bez openssl je v README zahrnutá čistě Pythonová alternativa.) PROŠEL = data v daný okamžik existovala a podpis pochází od kvalifikované TSA zaznamenané v EU Trusted List.
  3. Krok 3 — Bitcoin OpenTimestamps anchor — Klient ots ověří receipt proti Bitcoin blockchainu (nebo ho nahrajete na opentimestamps.org, případně zkontrolujete transakci na veřejném block exploreru jako mempool.space). PROŠEL = hlava chainu byla zapsána do konkrétního Bitcoin bloku.
  4. Krok 4 — Hash chain — Skript v python3 projde chain/proof_chain.jsonl, přepočítá každý entry hash z prev_hash, typu události, proof ID a data hashe, a potvrdí návaznost na chain_head.json. PROŠEL = interní log událostí je neporušený.

Všechny 4 PROŠLY → balíček je kryptograficky neporušený. Krok s Bitcoinem je jediný, který potřebuje síť (nebo lze místo toho ověřit transaction ID na veřejném exploreru). Kroky 1, 2 a 4 fungují zcela offline.

Nástroje, které budete potřebovat

Tři open-source nástroje pokrývají celý offline postup:

  • python3 — funguje na Linuxu, macOS i Windows. Použité v krocích 1, 2 (alternativní cesta) a 4.
  • openssl — standardně součást Linux/macOS; na Windows přes Git Bash nebo WSL. Použité pro kanonické eIDAS ověření (krok 2).
  • ots (z pip install opentimestamps-client) — pro Bitcoin anchor (krok 3). Volitelné — můžete také ověřit nahráním receiptu na opentimestamps.org nebo kontrolou Bitcoin transakce na block exploreru.

Chcete přesně vědět, který soubor v ZIPu spotřebovává každý krok? Podívejte se na návod Evidence ZIP — každý soubor uvnitř.

Jak číst výsledky

Výsledky jsou deterministické. Match znamená, že důkaz je byte po bytu shodný s původním záznamem a všechny integritní vrstvy procházejí. Modified znamená, že alespoň jedna vrstva selhala — důkazu nelze důvěřovat jako originálu.

Když uvidíte Modified, per-layer report vám řekne přesně která vrstva selhala — to obvykle stačí k doložení, že balíček není původní exportovaný důkaz.

Časté vzorce selhání a co znamenají
  • SHA-256 jednoho souboru se liší od manifestu → ten soubor byl změněn (např. změna pixelu screenshotu, výměna textu nebo přeformátování JSON souboru)
  • nesoulad entry hashe v chainu → někdo se pokusil vložit, odebrat nebo upravit událost v historii proofu
  • neplatný eIDAS podpis nebo nesoulad imprintu → orazítkovaný payload byl změněn, nebo byl TSR vyměněn
  • ověření Bitcoin anchoru selže → OpenTimestamps receipt už nezavazuje k téže hlavě chainu (nebo byl receipt sám změněn)

Co ověření NEdělá

  • Neposuzuje pravdivost — pouze to, zda je zachycený obsah neporušený a zda jsou časové kotvy platné.
  • Nenahrazuje právní zastoupení.
  • Nerozhoduje o přípustnosti — o tom rozhodují příslušné orgány a jurisdikce.
  • Neopraví Modified výsledek. Jakmile je ZIP změněn, projde ověřením pouze původní (nezměněný) ZIP.

Ověření odpovídá pouze: „Je tento důkaz původní a nezměněný a je jeho časová kotva kryptograficky platná?“

Další návod

Pokračujte na: Evidence ZIP — každý soubor uvnitř, ověřitelný offline.

Nejde o právní poradenství. Přípustnost důkazu závisí na jurisdikci a konkrétních okolnostech.