Something else is not clear to me with the TimeStamp.
In the API documentation, regarding the problems with out-of-sync times, it is recommended to check the current time of the bridge.
The property dateUpdate deviates significantly from UTC +0 time for me as in the example below.
If the TimeStamp from the URL is compared to the dateUpdate value for equality, the result will never be correct.
A hashed token will only be valid with a sufficiently current timestamp and can not be reused, to prevent replay attacks. So making two calls with the exact same timestamp will only work with different random numbers.
To debug problems with non synchronous times you can check the current time on the bridge via bridge discovery
I would be interested to know who is successfully using the shared token and how this was implemented. Maybe the error is sitting in front of the screen.
ich hoffe das es OK ist, wenn ich Ihnen auf Deutsch schreibe.
Im Kapitel 3.2.1 Parameters finde ich die Darstellung verwirrend.
In der Tabelle werden 4 Parameter aufgelistet, die jedoch für zwei verschiedene Authentifizierungen sind.
Der erste und einzige Parameter Plain Token gehört zum http request bei Authentifizierung mit unverschlüsseltem Token. Die letzten drei Parameter gehören zum http request bei Authentifizierung mit Hash Wert.
Der Hash wird aus den Parametern Tiimestamp, Random number und Plain Token gebildet. Genau das ist der Punkt, der hinsichtlich der vier Parameter in der Tabelle schnell übersehen wird. Der kleine Hinweis in der Spalte Value mit:
sha256(“ts,mr,token”)
fällt nicht gut auf. Daher kann es schnell passieren, dass man die Reihenfolge für den Hash Wert mit sha256("token,ts,mr) angibt was zu einem http response 401 führt.
Für mich wäre es leichter gewesen, wenn die zwei Authentifizierungsarten getrennt dokumentiert wären und vielleicht auch für andere Anwender.