API ProofSnap

Zabezpečení API ProofSnap a data uložená v EU

Stav k říjnu 2026: API ProofSnap zachycuje webové stránky na serverech v EU (AWS Frankfurt), každý balíček důkazů ukládá zašifrovaný algoritmem AES-256 a druhou kopii ostrých balíčků uchovává v Irsku. Balíček je zapečetěn hashi SHA-256 a podpisem RSA-4096. Uchovává se 10 let s řízeným přístupem.

Aktualizováno

Co se při záznamu děje s vašimi daty

Jeden záznam pořízený přes API ProofSnap nebo z dashboardu projde pěti kroky:

  1. URL odešlete přes HTTPS, buď voláním API se svým klíčem, nebo z dashboardu.
  2. Stránku načte prohlížeč na serverech ProofSnap ve Frankfurtu. Připojuje se jen na veřejné adresy. V ostrém režimu se URL odešle také do Internet Archive, pokud to nevypnete.
  3. Každý soubor dostane hash SHA-256 a manifest se podepíše. Kalendářům OpenTimestamps (a pokud si vyžádáte kvalifikované časové razítko, také společnosti Disig a.s.) se odesílá jen hash manifestu.
  4. Zapečetěný balíček se uloží zašifrovaný ve Frankfurtu a ostré balíčky mají druhou kopii v Irsku.
  5. Balíček si stáhnete, nebo vám přijde podepsaný webhook, jakmile bude připraven.

Kde API běží

API
Amazon Web Services v EU, Frankfurt (eu-central-1).
Údaje o účtu a záznamech
Google Cloud Firestore v EU, Frankfurt (europe-west3).
Přihlášení
Firebase Authentication, globální služba společnosti Google.
Balíčky důkazů
Amazon S3 v EU, Frankfurt (eu-central-1), s druhou kopií v Irsku (eu-west-1) u každého balíčku vytvořeného v ostrém režimu.

Co se zpracovává mimo EU

Balíčky důkazů a údaje o záznamech zůstávají ve Frankfurtu a v Irsku. Služby mimo EU mohou zpracovávat jen tyto omezené údaje:

Zachycení na serveru

Stránka se načte a zachytí na serverech ProofSnap, ne na vašem počítači. Pošlete URL a dostanete zapečetěný balíček důkazů. Prohlížeč, který záznam pořizuje, se připojuje jen na veřejné adresy: soukromé adresy, loopbackové adresy a adresy metadatových služeb cloudu odmítá, a to i po přesměrování.

Ve výchozím nastavení se URL záznamu pořízeného v ostrém režimu odešle také do Internet Archive (web.archive.org), aby mohl vzniknout nezávislý veřejný snímek. URL, které vypadají jako soukromé, například odkazy pro přihlášení, obnovení hesla a sdílení, nebo které obsahují token, se nikdy neodesílají. URL s parametry dotazu (query string) se odešle, jen když volbu záznamu external_archive nastavíte na true. Nastavením na false archivaci úplně vypnete. Výsledek se zaznamená do balíčku.

Jak je každý balíček zapečetěn

Hashe
Každý soubor s důkazy v balíčku dostane hash SHA-256, který je uveden v souboru manifest.json.
Podpis
Soubor manifest.json se podepíše klíčem RSA-4096 vygenerovaným jen pro tento balíček. Soukromý klíč se po podpisu zahodí a veřejný klíč je součástí balíčku.
Ukotvení v bitcoinu
Hash manifestu se odešle do kalendářů OpenTimestamps k ukotvení v blockchainu bitcoinu. Po potvrzení ukotvení se úplný důkaz uloží spolu s balíčkem. Pokud důkaz nelze doplnit, zaznamená se to v balíčku.
Kvalifikované časové razítko
Pokud si ho vyžádáte (jen s ostrými klíči, účtuje se za každé razítko), získá se kvalifikované elektronické časové razítko (RFC 3161) od společnosti Disig a.s., kvalifikovaného poskytovatele služeb vytvářejících důvěru uvedeného na důvěryhodném seznamu EU. Pokud razítko nelze doplnit, zaznamená se to v balíčku.
Ověření offline
Každý balíček obsahuje ověřovací skripty (verify.sh pro macOS a Linux, verify.ps1 pro Windows), které ho zkontrolují offline, bez závislosti na službě ProofSnap.

Registr vydání

ProofSnap zaznamenává hash každého manifestu, který vydá. Kdokoli může hash vyhledat pomocí GET /v1/ledger/{hash}; shoda potvrzuje, že ProofSnap vydal přesně tento balíček.

Druhá kopie

Každý balíček důkazů vytvořený v ostrém režimu se zkopíruje do samostatného bucketu Amazon S3 v jiném regionu EU (Irsko). Stav kopie u každého záznamu vrací endpoint GET /v1/captures/{id}. Kopie se maže spolu s originálem.

Doba uchování

Důkazy se uchovávají 10 let od data záznamu. U stránky zachycované automaticky podle rozvrhu běží lhůta od okamžiku, kdy bylo naposledy zjištěno, že zachycená verze je stále aktuální:

Po skončení předplatného máte 30 dní na stažení všech dat. U plánu „Archive only“ zůstanou důkazy dostupné ke stažení a k ověření i poté, co přestanete pořizovat záznamy.

Mazání

Balíček, který smažete v dashboardu nebo přes API, se nejprve přesune do koše, odkud ho můžete do 30 dní obnovit. Poté se všechny uložené verze odstraní z obou kopií. Při trvalém smazání se balíček odstraní okamžitě. Po uplynutí doby uchování nebo po skončení 30denní lhůty, kterou má účet na stažení dat, se všechny uložené verze odstraní stejným způsobem. Záznam s právní blokací nelze smazat, dokud blokace platí. Uchovává se informace o tom, kdo balíček smazal a kdy, nikoli jeho obsah.

Řízení přístupu

Klíče API
Ukládají se jen jako hashe SHA-256. Celý klíč se zobrazí jen jednou, při vytvoření. Zneplatněný klíč přestane fungovat do 60 sekund. U plánu Website Archive jsou klíče API jen pro čtení: umožňují vypsat, stáhnout a ověřit záznamy a spravovat odběry webhooků. U tohoto plánu se záznamy a automatické záznamy zakládají v dashboardu.
Přihlášení do dashboardu
Firebase Authentication. Než budete moci vytvářet klíče, pořizovat záznamy nebo koupit plán, musíte potvrdit svou e-mailovou adresu.
Historie přístupů
Když záznam stáhne, ověří nebo k němu jinak přistoupí někdo jiný než jeho autor, například vlastník firemního účtu nebo člen spisu, zapíše se tento přístup do historie záznamu.
Limity požadavků
Záznamy, certifikace a další zpoplatněné požadavky mají limit četnosti společný pro celý účet a všechny jeho klíče.

Šifrování

Při přenosu
Veškerá komunikace API, dashboardu a webhooků probíhá přes HTTPS (TLS).
Uložená data
Balíčky důkazů jsou v obou bucketech šifrovány algoritmem AES-256 (šifrování Amazon S3 na straně serveru). Oba buckety blokují veškerý veřejný přístup.

Webhooky

Podpis
Každé doručení webhooku se podepisuje podle specifikace Standard Webhooks pomocí HMAC-SHA256. Webhooky na webhook_url nastavenou u požadavku nebo u automatického záznamu se podepisují tajným kódem webhooku toho klíče API, kterým byla URL nastavena. Tento tajný kód lze rotovat s 24hodinovým překryvem. Odběr webhooku na úrovni účtu má vlastní tajný kód, který se zobrazí jen jednou, při vytvoření odběru.
Cíle doručení
Webhooky míří jen na veřejné endpointy HTTPS. Adresa se před každým doručením znovu přeloží a zkontroluje, spojení se pak naváže jen se zkontrolovanou adresou, takže soukromé adresy, loopbackové adresy a adresy metadatových služeb cloudu jsou odmítnuty i po změně DNS. Přesměrování se ignorují.
Opakované pokusy
Pokud u doručení vyprší časový limit, nepodaří se navázat spojení nebo přijde chybová odpověď (kromě 410 Gone), doručení se opakuje až 5krát v průběhu zhruba 35 hodin (po 5 min, 30 min, 2 h, 8 h a 24 h) se stejným webhook-id, aby příjemce mohl duplicity zahodit. Každý pokus čeká na odpověď nejvýše 10 sekund.
Stahování
Opakovaně odeslané webhooky a webhooky z odběru neobsahují 24hodinový odkaz ke stažení. Nový odkaz si příjemce vyžádá voláním GET /v1/captures/{id}.
Odběry webhooků
Odběr webhooku na úrovni účtu se vypne, když jeho endpoint odpoví 410 Gone, po 5 dnech bez jediného úspěšného doručení, nebo, pokud byl vytvořen klíčem API, když je tento klíč zneplatněn. Události se uchovávají 30 dní a lze je načíst pomocí GET /v1/events.

Služby třetích stran

Platby
Platby zpracovává Stripe. ProofSnap čísla platebních karet neukládá.
E-maily k účtu
E-maily k účtu, například k potvrzení e-mailové adresy a obnovení hesla, odesílá MailerSend.
Časová razítka
Kalendáře OpenTimestamps a u kvalifikovaného časového razítka také Disig a.s. dostávají jen hash manifestu, nikdy samotné důkazy.
Vyhledávání údajů o webu
Kvůli zdokumentování zachyceného webu se jeho název hostitele překládá přes Google Public DNS a Cloudflare DNS a registrace domény se vyhledává ve veřejných službách RDAP a WHOIS.

Dotazy

Máte-li jakýkoli dotaz, chcete-li nahlásit bezpečnostní problém nebo potřebujete-li smlouvu o zpracování osobních údajů (DPA), napište nám na support@getproofsnap.com.

Začít zdarma s 50 testovacími záznamy