Web-Entwicklung

Zeitstempel

Ein Zeitstempel ist der von einem System nach seiner eigenen Uhr festgehaltene Zeitpunkt eines Ereignisses, etwa einer Annahme, einer Freigabe oder eines Uploads, und damit der Bestandteil eines Nachweises, der die Frage „wann" beantwortet.

Der Zeitstempel ist neben der bestätigten Person und der Version eines Inhalts eine der drei Angaben, aus denen der Nachweis einer [[online-angebotsannahme|Online-Angebotsannahme]] besteht, und er steuert Fristen wie die [[angebotsgueltigkeit|Angebotsgültigkeit]].

In einfachen Worten

Jedes Ereignis in einer Anwendung lässt sich mit einem Zeitpunkt versehen. Entscheidend ist, wessen Uhr diesen Zeitpunkt liefert. Die Uhr des Nutzers, also die seines Rechners oder Telefons, kann falsch gestellt oder absichtlich verändert sein. Ein belastbarer Zeitstempel kommt deshalb vom Server, der das Ereignis entgegennimmt, und wird in einer eindeutigen Form gespeichert: mit Datum, Uhrzeit bis zur Sekunde und Zeitzone, meist als koordinierte Weltzeit, damit Einträge aus verschiedenen Ländern vergleichbar bleiben. Der Zeitstempel allein belegt nur, dass zu diesem Zeitpunkt etwas geschah; zum Nachweis wird er erst zusammen mit den Angaben, wer gehandelt hat und worauf sich die Handlung bezog. Bei einer Angebotsannahme sind das die bestätigte E-Mail-Adresse und die Versionsnummer des Angebots. Für Fälle, in denen der Zeitpunkt selbst strittig werden kann, gibt es qualifizierte Zeitstempel von Vertrauensdiensteanbietern, die den Zeitpunkt durch eine E-Signatur des Anbieters bestätigen. In einem Audit-Log trägt jeder Eintrag einen Zeitstempel.

Wozu brauche ich das?

Zeitstempel braucht jeder Vorgang, bei dem später die Reihenfolge oder die Einhaltung einer Frist zählt: Annahme eines Angebots vor Ablauf der Angebotsgültigkeit, Eingang einer Bewerbung vor Bewerbungsschluss, Freigabe eines Dokuments vor der Veröffentlichung, Upload eines Nachweises innerhalb einer Nachreichfrist. Ohne serverseitigen Zeitstempel steht Aussage gegen Aussage.

Beispiel aus der Praxis

Ein Kunde nimmt ein Angebot per Online-Angebotsannahme am letzten Tag der Gültigkeit kurz vor Mitternacht an. Der Zeitstempel des Servers lautet 23:52 Uhr am Tag des Fristablaufs, gespeichert mit Zeitzone. Der Vertrieb liest das Protokoll am nächsten Morgen und sieht, dass die Annahme rechtzeitig war, obwohl die Benachrichtigung erst nach Mitternacht eintraf. Hätte das System die Uhr des Kunden verwendet, wäre ein Zeitpunkt vor Ablauf nicht belegbar gewesen.

Wirtschaftlicher Nutzen

Ein sauber gespeicherter Zeitstempel beendet Diskussionen über Fristen und Reihenfolgen, bevor sie entstehen. Er kostet in der Umsetzung nichts, wenn er von Anfang an serverseitig und mit Zeitzone gespeichert wird, und ist nachträglich kaum zu ergänzen, weil die Information dann fehlt. Er gehört in jedes Protokoll und in jede Versionshistorie.

Typische Fehler

  • Den Zeitpunkt von der Uhr des Nutzers übernehmen statt vom Server.
  • Zeit ohne Zeitzone speichern, sodass Einträge bei Sommerzeitwechsel oder aus anderen Ländern nicht vergleichbar sind.
  • Nur das Datum ohne Uhrzeit festhalten, obwohl Fristen am Tagesende enden.
  • Den Zeitstempel ohne Bezug zu Person und Inhalt speichern, sodass er als Nachweis nichts trägt.

Worauf achten?

  • Zeitstempel immer serverseitig erzeugen, in koordinierter Weltzeit speichern und in der Anzeige in die Ortszeit umrechnen.
  • Zu jedem Zeitstempel festhalten, wer gehandelt hat und auf welche Version sich die Handlung bezog.
  • Die Serveruhr über einen Zeitdienst synchron halten.
  • Für strittige Zeitpunkte einen qualifizierten Zeitstempel eines Vertrauensdiensteanbieters erwägen.

Häufig gestellte Fragen

Was ist ein Zeitstempel?

Der von einem System festgehaltene Zeitpunkt eines Ereignisses, mit Datum, Uhrzeit und Zeitzone. Zusammen mit der handelnden Person und dem betroffenen Inhalt bildet er den Nachweis für Fristen und Reihenfolgen.

Warum darf der Zeitstempel nicht von der Uhr des Nutzers kommen?

Weil diese Uhr falsch gestellt oder absichtlich verändert sein kann. Nur der Zeitpunkt, den der Server beim Eingang des Ereignisses festhält, ist unabhängig vom Nutzer und damit belastbar.

Was ist ein qualifizierter Zeitstempel?

Ein Zeitstempel, den ein beaufsichtigter Vertrauensdiensteanbieter ausstellt und mit seiner Signatur bestätigt. Er wird dort eingesetzt, wo der Zeitpunkt selbst strittig werden kann, etwa bei Fristen mit hohem Streitwert.