Dokumente · Sicherheit
JCS
JSON Canonicalization Scheme, RFC 8785
01 · Grundlagen
Worum es geht.
JCS erzeugt aus JSON eine deterministische Byte-Darstellung. Das ist notwendig, weil JSON selbst mehrere gleichwertige Schreibweisen erlaubt: andere Eigenschaftsreihenfolge, Whitespace oder Zahlendarstellung können semantisch identisch sein, aber unterschiedliche Signaturwerte erzeugen.
Kernregeln.
RFC 8785 baut auf I-JSON und ECMAScript-Serialisierung auf. Whitespace wird entfernt, Objekt-Eigenschaften werden deterministisch sortiert, Strings und Zahlen werden in einer festgelegten Form serialisiert und das Ergebnis wird als UTF-8 verarbeitet. Anwendungen müssen weiterhin sicherstellen, dass keine mehrdeutigen oder nicht unterstützten JSON-Konstrukte akzeptiert werden.
02 · Einordnung
Bezug zu Tanocrix.
Für Tanocrix ist JCS der Schritt vor der Signatur. Erst wird ein Industrial Action oder Audit Event kanonisch serialisiert, dann wird genau diese Bytefolge signiert. Dadurch kann ein Prüfer später erkennen, ob Inhalt, Reihenfolge der Datenfelder oder versteckte Transformationen das geprüfte Objekt verändert haben.