Inhalt dieses Artikels
- Vorbemerkungen
- plenigo-Signatur prüfen
1. Vorbemerkungen
2. plenigo-Signatur prüfen
t=1729583536,s=fdcd0a0ccd0b4db629d35a33c3aada5cf669a28f91adb38abcc9ffcdb1663d38 |
Zusammenfassung:
plenigo-signature: t=<zeitstempel>,s=<signatur>
-
t = Unix-Zeitstempel (Sekunden seit dem 01.01.1970)
-
s = HMAC-SHA256-Signatur (hexadezimal codiert)
So wird die Signatur erstellt
Frisbii Media berechnet die Signatur in folgenden Schritten:
-
Aktuellen Zeitstempel als Zeichenkette holen
-
Zeitstempel und Rohdaten des Bodys mit einem Punkt (
.
) verbinden -
HMAC mit SHA256 erzeugen, unter Verwendung des Callback-Secrets von Frisbii Media
-
Header setzen:
plenigo-signature: t=zeitstempel,s=signatur
Um bei versionierungsspezifischer Logik zu helfen, enthält jede Callback-Anfrage auch den HTTP-Header:
X-Plenigo-Api-Version
Header verifizieren
- "t" = Zeitstempel
- "s" = eine Signatur oder mehrere Signaturen
- der Zeitstempel als String
- das Zeichen "." (Punkt)
- der eigentliche JSON-Payload (d. h. der Anfrageinhalt) als String
⚠️ Sicherheitshinweise
-
Verwende zum Schutz vor Timing-Angriffen unbedingt eine zeitkonstante Vergleichsfunktion, um die erwartete Signatur mit den empfangenen zu vergleichen.
-
Immer
hmac.Equal(...)
für den Vergleich verwenden. -
Callbacks mit einem Zeitstempel, der zu weit in der Vergangenheit oder Zukunft liegt (z. B. mehr als 5 Minuten), ablehnen.
-
Das Callback-Secret niemals öffentlich teilen.