Logs und Protokolle

Wie du nachweist, dass die Protokolle deines Servers nicht nachträglich verändert wurden

Deine Logs sagen, was passiert ist, aber du kontrollierst sie. Wird jeder Abschnitt versiegelt, sobald er entsteht, kann später jeder prüfen, dass er noch so ist wie damals.

Privat. Nur der Fingerabdruck jedes Abschnitts verlässt deinen Server.

Deine Protokolle, dein Wort Sie sagen, was passiert ist, aber sie liegen in deinen Systemen und dein Team verwaltet sie. Für den, der sie anfordert, reicht das nicht.
Versiegelt, sobald sie entstehen Jeder Abschnitt wird beim Abschluss registriert, mit einem in öffentlichen Netzen verankerten Datum, das nicht von dir abhängt.
Nur der Fingerabdruck geht raus Dein Server berechnet den SHA-256-Fingerabdruck jedes Abschnitts und sendet ihn per API. Die Protokolle bleiben, wo sie sind.

Die Szene

„Wir brauchen die Zugriffsprotokolle vom 3. bis 10. März.“

Es ist Oktober, und eine Prüfung verlangt sie. Die Protokolle hast du: Dein Server hält fest, wer sich anmeldet, was passiert und was fehlschlägt, und du bewahrst sie monatelang auf. Aber sie sind deine. Dein System erzeugt sie, sie liegen auf deinen Festplatten und dein Team verwaltet sie. Wenn du sie übergibst, muss niemand glauben, dass es dieselben wie im März sind, und du kannst es nicht beweisen. Es sei denn, jeder Abschnitt wurde versiegelt, als er entstand, bevor jemand fragte.

Das Ritual: Dein Server übernimmt es, alle paar Minuten

  • Erstelle einen API-Schlüssel in deinem Konto. Mehr musst du nicht einrichten.
  • Alle paar Minuten schließt dein Server einen Abschnitt seiner Protokolle ab: die Zugriffe, Vorgänge und Fehler dieses Zeitraums.
  • Er berechnet den SHA-256-Fingerabdruck des Abschnitts und sendet ihn an die API von Sellat. Die Protokolle verlassen deinen Server nicht.
  • Sellat fasst die Fingerabdrücke in einem Merkle-Baum zusammen und verankert sie auf Polygon und, über OpenTimestamps, in Bitcoin. Mit dem kostenlosen Konto werden die Stapel alle 4 Stunden geschlossen.
  • Du bewahrst jeden Abschnitt zusammen mit seinem Nachweis auf, in deinem gewohnten Speicher.
  • Werden bestimmte Tage verlangt, übergibst du diese Abschnitte und ihre Nachweise. Der Empfänger prüft sie ohne Konto und ohne dir oder Sellat vertrauen zu müssen.

Was Sellat bei einer Prüfung nachweist

Sellat weist nach, dass jeder Protokollabschnitt an einem bestimmten Datum genau so existierte, wie du ihn übergibst: Ändert sich eine einzige Zeile, stimmt der Fingerabdruck nicht mehr. Das ist technische Evidenz, die jeder mit Standardwerkzeugen prüfen kann. Sellat sagt nicht, ob das, was der Server protokolliert hat, wahr ist, oder wer recht hat. Es sagt, dass diese Protokolle seit der Versiegelung unverändert sind. Und wenn jemand, von außen oder von innen, später alte Protokolle anfasst, fällt es auf.

Der komplette Ablauf

Von den heutigen Protokollen zur Prüfung in ein paar Monaten.

Ein konkreter Fall: Dein Server protokolliert, wer sich anmeldet, was passiert und was fehlschlägt. Monate später verlangt eine Prüfung die Protokolle bestimmter Tage. Dein Server versiegelt alles von selbst, alle paar Minuten.

  1. Alle paar Minuten

    Dein Server schließt einen Abschnitt seiner Protokolle ab

    Anmeldungen, Vorgänge und Fehler dieser Minuten. Der Abschnitt wird abgeschlossen und versiegelt.

  2. Sofort

    Nur der Fingerabdruck geht hinaus

    Der Server berechnet den Fingerabdruck des Abschnitts und sendet ihn per API. Die Protokolle verlassen deinen Server nicht. Auf Wunsch kommt der qualifizierte Zeitstempel (eIDAS) hinzu.

  3. Monate später

    Man verlangt die Protokolle

    Eine Prüfung, eine Inspektion oder ein Kunde mit einem Vorfall will sehen, was an bestimmten Tagen auf deinem Server passiert ist.

  4. Das Problem

    Die Protokolle gehören dir

    Sie zeigen, was passiert ist, aber du kontrollierst sie. Wie belegst du, dass sie seitdem niemand angefasst hat?

  5. Am selben Tag

    Du übergibst die Abschnitte und ihre Nachweise

    Jeder Abschnitt wurde versiegelt, als es passierte, nicht als man danach fragte. Wer ihn erhält, prüft, dass er sich nicht verändert hat, ohne dir oder Sellat vertrauen zu müssen.

Sellat sagt nicht, ob das stimmt, was der Server protokolliert hat, und nicht, wer recht hat. Es belegt, dass diese Protokolle an jenem Datum genau so existierten, wie du sie übergibst. Und wenn später jemand, von außen oder von innen, alte Protokolle anfasst, fällt es auf.

Zur API

Was du aufbewahrst und was du übergibst

Von jedem Abschnitt bewahrst du den Abschnitt selbst und seinen Nachweis auf. Die API liefert dir außerdem das Nachweispaket: den Nachweis, das Zertifikat, die öffentlichen Referenzen auf Polygon und Bitcoin und die Anleitung, um alles zu prüfen. Das übergibst du zusammen mit den Protokollen. Der Empfänger berechnet den Fingerabdruck des Abschnitts mit sha256sum und vergleicht ihn mit sellat-verify, dem quelloffenen Prüfwerkzeug von Sellat, mit dem Nachweis.

Ein Log auf deinem Server lässt sich bearbeiten. Bei einem versiegelten fällt jede Änderung auf.

Protokolle zu rotieren, zu komprimieren und zu archivieren ist normal, und wer Zugriff auf den Server hat, kann sie bearbeiten. Deshalb sind deine Logs gegenüber Dritten so viel wert wie dein Wort. Einen Fingerabdruck, der beim Abschluss des Abschnitts in öffentlichen Netzen verankert wurde, kontrolliert niemand: weder du noch dein Team noch Sellat.

Das Paket von innen

Das übergibst du, wenn man die Protokolle verlangt.

Für jeden versiegelten Abschnitt stellt Sellat ein ZIP zusammen, das sich mit Werkzeugen prüfen lässt, die nicht unsere sind. Es ist die echte Dateiliste: Sie stammt aus demselben Modul, das das Paket baut.

Akte öffnen Akte schließen
  • original/<archivo> Mit Verwahrung

    Der Protokollabschnitt, Byte für Byte

    Nur mit eingeschalteter Verwahrung: Per API wird nur der Fingerabdruck gesendet. Ohne Verwahrung behältst du das Protokoll selbst, und der Nachweis funktioniert mit deiner Kopie genauso.

  • certificado-<id>.pdf Immer

    Das lesbare Zertifikat

    Das PDF, das du einer Person zeigst oder einem Schriftsatz beilegst. Es dient der Information: Geprüft wird das Protokoll, nicht das PDF.

  • proof.json Sobald das Bündel verankert ist

    Der portable Nachweis

    Der Fingerabdruck des Abschnitts, sein Merkle-Pfad, die Wurzel des Batches und die öffentliche Transaktion, die ihn festhält. Mit diesem Teil lässt sich alles ohne Sellat prüfen.

  • sello-cualificado-<id>.tsr Mit qualifiziertem Zeitstempel

    Der qualifizierte Zeitstempel

    Die RFC-3161-Antwort der qualifizierten Zeitstempelstelle, genau wie ausgestellt. Diese Datei fixiert das Datum nach eIDAS.

  • autoridad-sellado.pem Mit qualifiziertem Zeitstempel

    Wer den Zeitstempel signiert hat

    Das Signaturzertifikat dieser Stelle, mit seinem SHA-256 in der README. Es liegt bei, damit die Prüfung offline funktioniert und niemand danach suchen muss.

  • anclaje-bitcoin.ots Sobald das Bündel verankert ist

    Die Verankerung in Bitcoin

    Der OpenTimestamps-Nachweis der Bündelwurzel. Er kann noch auf einen Block warten: die Datei ist gültig und wer sie erhält, kann sie selbst aktualisieren.

  • LEEME.txt / README.txt Immer

    Die Anleitung, in zwei Sprachen

    Was jede Datei ist, was sie beweist und was nicht, und die genauen Prüfbefehle. Auf Spanisch und Englisch, damit eine sachverständige Person oder eine Anwältin dich nichts fragen muss.

Den Zeitstempel signiert die FNMT-RCM, nicht Sellat.

Nicht Sellat bezeugt die Uhrzeit. Der qualifizierte Zeitstempel stammt von einer qualifizierten Zeitstempelstelle der FNMT-RCM, und ihr Signaturzertifikat liegt in deinem Paket. Wir sind die Instanz, die deinen Fingerabdruck mit diesem Zeitstempel verbindet und dir alles geordnet übergibt.

Geprüft wird ohne uns und ohne dein System.

Wer es erhält, prüft Datum und Unverändertheit des Protokolls mit Standardwerkzeugen auf dem eigenen Rechner. Das hängt weder von deiner Datenbank ab noch davon, dass es Sellat noch gibt.

Das Paket belegt, dass dieses Protokoll an diesem Datum existierte und nicht verändert wurde. Es belegt nicht, dass sein Inhalt stimmt oder dass der Server alles protokolliert hat.

Der Abschnitt wird versiegelt, wenn er entsteht. Nicht an dem Tag, an dem er verlangt wird.

Erstelle deinen API-Schlüssel in deinem Konto und versiegle heute den ersten Abschnitt. Der vollständige Aufruf steht in der Dokumentation.

Zur API

Häufige Fragen

Bevor du fragst.

Verlassen meine Protokolle meinen Server?

Nein. Dein System berechnet den SHA-256-Fingerabdruck jedes Abschnitts und sendet nur diesen Fingerabdruck. Die Protokolle bleiben auf deinem Server, und in den öffentlichen Netzen erscheint nur die Wurzel des Stapels, die nichts über den Inhalt verrät.

Wie oft sollte ich versiegeln?

Das entscheidest du: alle paar Minuten, jede Stunde oder jeden Tag. Je kürzer der Abschnitt, desto genauer das Datum jeder Zeile und desto weniger musst du übergeben, wenn bestimmte Tage verlangt werden.

Wie prüft der Empfänger die Protokolle?

Mit zwei Befehlen: sha256sum berechnet den Fingerabdruck des Abschnitts, und sellat-verify, das quelloffene Prüfwerkzeug von Sellat, vergleicht ihn mit dem Nachweis und den öffentlichen Referenzen. Ohne Konto und ohne dir oder Sellat vertrauen zu müssen.

Und der qualifizierte eIDAS-Zeitstempel?

Wenn du ihn im selben API-Aufruf anforderst, erhält der Fingerabdruck des Abschnitts zusätzlich den qualifizierten Zeitstempel, aus den Zeitstempeln deines Kontos. Er genießt in der gesamten Europäischen Union die gesetzliche Vermutung der Richtigkeit von Datum und Uhrzeit und der Unversehrtheit der Daten (Art. 41 Abs. 2 der Verordnung (EU) 910/2014).

Sagt Sellat, ob das, was mein Server protokolliert hat, wahr ist?

Nein. Sellat beurteilt weder den Inhalt noch, wer recht hat. Es belegt, dass diese Protokolle an diesem Datum genau so existierten, wie du sie übergibst, und dass sie seitdem unverändert sind.

Was kostet es?

Das kostenlose Konto enthält tägliche Nachweise per API, verankert in Stapeln alle 4 Stunden. Die Grenzen jedes Kontos stehen auf der Preisseite.

Integrität von Logs und Prüfprotokollen mit Zeitstempeln

Die Integrität von Logs gegenüber einer Prüfung, einer Inspektion oder einem Kunden nachzuweisen heißt nachzuweisen, dass sie seit dem Schreiben nicht verändert wurden. Die Protokolle erzeugt und speichert das System selbst, deshalb hängt ihr Wert als Beweis von etwas Externem ab: einem Datum, das nicht kontrolliert, wer sie verwahrt. Technisches Detail, falls du es brauchst: Dein System berechnet den SHA-256-Fingerabdruck jedes Abschnitts und sendet ihn an die API v2 von Sellat. Sellat fasst ihn in einem Merkle-Baum zusammen und verankert ihn auf Polygon und, über OpenTimestamps, in Bitcoin. Jeder Nachweis hat sein Nachweispaket und wird mit sha256sum und sellat-verify geprüft, ohne Konto und ohne Sellat vertrauen zu müssen. Die Protokolle verlassen deinen Server nicht.