![]() |
Calculate HMAC-SHA1 signature
Hi,
ich hänge gerade daran, dass ich versuche ein OAuth 1.0a gegen Garmin Connect zu implementieren. Schritt 1 ist dabei logischerweise, dass man eine HMAC-SHA1 signature generiert. Hier mal die Beispiel-Werte von der Twitter-Dokumentation. Ich habe dies neben meiner Implementierung nun auch mit den folgenden Online-Websiten getestet:Man sieht, dass die Base64-Signatur der Signatur in der Twitter-Dokumentation entspricht (und zwar vor Parameter-Encoding):
Code:
Genau das gleiche probiere ich danach mit den Garmin-Beispielen aus:
Twitter (https://developer.twitter.com/en/docs/authentication/oauth-1-0a/creating-a-signature):
String: POST&https%3A%2F%2Fapi.twitter.com%2F1.1%2Fstatuses%2Fupdate.json&include_entities%3Dtrue%26oauth_consumer_key%3Dxvz1evFS4wEEPTGEFPHBog%26oauth_nonce%3DkYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1318622958%26oauth_token%3D370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb%26oauth_version%3D1.0%26status%3DHello%2520Ladies%2520%252B%2520Gentlemen%252C%2520a%2520signed%2520OAuth%2520request%2521 Key: kAcSOqF21Fu85e7zjz7ZN2U4ZRhfV3WpwPAoE3Z7kBw&LswwdoUaIvS8ltyTt5jkRh4J50vUPVVHtR2YPi5kE Hex-Result: 842b5299887e88760212a056ac4ec2ee1626b549 Base64: hCtSmYh+iHYCEqBWrE7C7hYmtUk= Dokumentation: hCtSmYh+iHYCEqBWrE7C7hYmtUk= ParamEncoded: hCtSmYh%2BiHYCEqBWrE7C7hYmtUk%3D
Code:
Hier entspricht mein Ergebnis nicht dem Ergebnis in der Garmin-Dokumentation. Jetzt könnte theoretisch auch die Dokumentation falsch sein. Aber wenn ich es mit meinen echten Credentials gegen den Server mit curl ausprobiere, bekomme ich die Fehlermeldung “Inadequate OAuth consumer credentials.”, sprich auch hier habe ich den Hinweise, dass irgendetwas noch falsch ist.
Garmin (Garmin_Connect_OAuth_Specification.pdf):
String: POST&https%3A%2F%2Fconnectapi.garmin.com%2Foauth-service%2Foauth%2Frequest_token&oauth_consumer_key%3Dcb60d7f5-4173-7bcd-ae02-e5a52a6940ac%26oauth_nonce%3Dkbki9sCGRwU%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1484837456%26oauth_version%3D1.0 Key: 3LFNjTLbGk5QqWVoypl8S2wAYcSL586E285& Hex-result: 414067191161126871d0ad6ca81b5e8e536ef05a Base64: QUBnGRFhEmhx0K1sqBtejlNu8Fo%3D ParamEncoded: QUBnGRFhEmhx0K1sqBtejlNu8Fo= Dokumentation: %2BHlCpVX8Qgdw5Djfw0W30s7pfrY%3D -> ungleich Hat jemand eine Idee, warum bei Twitter die Signatur richtig rauskommt und bei Garmin nicht? Grüße, Philipp |
AW: Calculate HMAC-SHA1 signature
War ein Dokumentationsfehler bei Garmin, meine Signature stimmte.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz