====== Časové značky - Informace pro uživatele ======
===== K čemu jsou časové značky určené =====
Účelem je přiřadit nezpochybnitelnou časovou informaci k určitému objektu. Ta většinou slouží jako doklad, že dokument existoval v daném okamžiku v minulosti. O časové razítko k souboru může zažádat uživatel (je možné generovat časová razítka pro PDF dokumenty v Adobe Acrobat Readeru po jeho nakonfigurování) nebo server (využití při podepisování logů).
===== Technické parametry služby =====
Razítka vydává autorita časových razítek neboli TSA (Time-Stamp Authority). Sdružení CESNET provozuje dva servery (primární a sekundární) se službou časových razítek. Jejich správa je zajištěna v rámci CESNET PKI.
Službu lze použít pro časové značky se starým formátem atributů (ESSCertID, viz [[https://tools.ietf.org/html/rfc3161|rfc3161]]) i novým formátem atributů (ESSCertIDv2, viz [[https://tools.ietf.org/html/rfc5816|rfc5816]]). Starý formát podporuje pouze SHA1 hash, ale je zatím nejvíce rozšířen. Nový formát je podporován v OpenSSL až od verze 1.1.1. Pokud to jen trochu lze, **doporučujeme využít nového formátu ESSCertIDv2**.
Servery časových razítek jsou dostupné na adresách:
* http://tsa.cesnet.cz:3161/tsa - Starý formát atributů ESSCertID, nezabezpečené připojení.
* https://tsa.cesnet.cz:3162/tsa - Starý formát atributů ESSCertID, zabezpečené připojení (HTTPS).
* http://tsa.cesnet.cz:5816/tsa - Nový formát atributů ESSCertIDv2, nezabezpečené připojení.
* https://tsa.cesnet.cz:5817/tsa - Nový formát atributů ESSCertIDv2, zabezpečené připojení (HTTPS).
==== Postup získání a ověření časového razítka ====
//Následující postup je určen pouze pro OS UNIXového typu. V tomto postupu připravíme soubor s daty, vygenerujeme pro něj časovou značku a ověříme, že je tato značka validní.//
Nejprve připravte datový soubor:
echo 'kuna nese nanuk' > data.txt
Máme soubor s názvem ''data.txt'', ke kterému chceme získat časové razítko. Nejprve musíme pomocí OpenSSL vygenerovat TSA žádost:
openssl ts -query -data data.txt -no_nonce -cert -out data.tsq
Žádost je uložena v souboru ''data.tsq''. Nyní stačí žádost odeslat na server časových razítek:
cat data.tsq | curl -s -S -H 'Content-Type: application/timestamp-query' --data-binary @- http://tsa.cesnet.cz:3161/tsa -o data.tsr
Razítko je nyní uloženo v souboru ''data.tsr''. Samotný obsah razítka v lidsky čitelné podobě získáte pomocí příkazu
openssl ts -reply -in data.tsr -text
Nyní můžete ověřit, že se souborem nikdo nemanipuloval. Pro ověření podpisu je nutné nejprve stáhnout všechny certifikáty CA až po kořen a umístit je do jednoho souboru:
curl -s -S https://crt.cesnet-ca.cz/CESNET_CA_Root.pem -o CESNET_CA_Root.pem
curl -s -S https://crt.cesnet-ca.cz/PersonalSigning2.pem -o PersonalSigning2.pem
cat CESNET_CA_Root.pem PersonalSigning2.pem > TrustedCertificates.pem
V souboru ''TrustedCertificates.pem'' je po tomto kroku seznam certifikátů CA. Nyní můžete podpis ověřit:
openssl ts -verify -data ./data.txt -in ./data.tsr -CAfile ./TrustedCertificates.pem
Pokud vše proběhlo správně, měli byste vidět něco jako
Verification: OK
Nyní můžete zkusit, co se stane, pokud zmodifikujete datový soubor ''data.txt''. Změňte obsah tohoto souboru:
echo 'jelenovi pivo nelej' > data.txt
a znovu spusťte příkaz
openssl ts -verify -data ./data.txt -in ./data.tsr -CAfile ./TrustedCertificates.pem
Ověření by mělo selhat s chybovou hláškou podobné této:
Verification: FAILED
140345687674584:error:2F064067:time stamp routines:TS_CHECK_IMPRINTS:message imprint mismatch:ts_rsp_verify.c:672:
===== Podmínky pro poskytování služby =====
V současné době je služba určena pro výzkumné a vzdělávací instituce a další registrované uživatele.
===== Cena =====
Službu poskytuje sdružení CESNET bezplatně.
===== Kontakt =====
Veškeré náměty a připomínky posílejte na adresu [[support@cesnet.cz]].