Skip to main content

Timestamping Interface

The timestamping service is available via an HTTP interface.

Request: HTTP POST

Add the timestamping request as binary data as body to an HTTP POST request, including ‘application/timestamp-query’ as content-type header parameter. A sample request is shown in listing

Request: HTTP GET

Add the base64 or base64url encoded timestamping request as part of the URL path. Important is the correct content-type of ‘application/timestamp-query’, otherwise, the request is not recognized as a timestamping request.

Request: HTTP GET

Add the timestamping request as a query parameter with one of the keys ‘timestamp’, ‘ts’ or ‘query’.

Authentication

The timestamping service requires authentication, this can be done via HTTP Basic Authentication. Therefore add a HTTP header ‘Authorization’ to the request, as shown below

POST / HTTP/1.1
Content-Type: application/timestamp-query
Host: ...
Content-Length: 59
Authorization: Basic dGVzdEhzbVJTQTp0ZXN0


<binary request data>

For a detailed explanation on HTTP Basic Authentication refer to the documentation of your HTTP client library or other online documentation e.g. this Wikipedia article .

If the client does not support the manipulation of the HTTP header, try to set the username and password as part of the URL as shown below:

GET https://{username}:{password}@{domain}/{path}/ HTTP/1.1
Content-Type: application/timestamp-query
Host: ...

Session-id and request tracking

To track problems and errors in the requests or the timestamping system the following HTTP Headers are supported:

  • X-Request-ID
  • X-Correlation-ID

If one of these HTTP Headers is included in the timestamping request, the corresponding value is used as session-id for the log messages. This allows the tracking of the request.

Request parameter

MessageImprint algorithm

The timestamping service supports the following messageImprint algorithm, see chapter 2.4.1 for a description of ‘messageImprint’ - ‘hashAlgortihm’.

  • SHA-224 (OID: 2.16.840.1.101.3.4.2.4)
  • SHA-256 (OID: 2.16.840.1.101.3.4.2.1)
  • SHA-384 (OID: 2.16.840.1.101.3.4.2.2)
  • SHA-512 (OID: 2.16.840.1.101.3.4.2.3)
  • SHA3-224 (OID: 2.16.840.1.101.3.4.2.7)
  • SHA3-256 (OID: 2.16.840.1.101.3.4.2.8)
  • SHA3-384 (OID: 2.16.840.1.101.3.4.2.9)
  • SHA3-512 (OID: 2.16.840.1.101.3.4.2.10)
  • RIPEMD-160 (OID: 1.3.36.3.2.1)
  • RIPEMD-256 (OID: 1.3.36.3.2.3)