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 (
.
) verbindenHMAC 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.