stevehackman
-
Gesamte Inhalte
1 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Blogs
Shop
Kalender
Downloads
Galerie
Statusmeldungen von stevehackman
-
Hey, ich stehe vor selbigen Problem. Allerdings mit einer etwas anderen methode.
Einen GET Request zu senden wie den Kurs abzufragen funktioniert. Nur leider bei Post Parameter stoße ich auf Probleme. Dort erhalte ich selbige Fehlermeldung. Ich denke auch das irgendwas bei mir noch fehlt.
Zum testen der Paramter habe ich das folgende Beispiel genau nachberechnet. sowohl der codierte MD5 Post parameter sowie auch die Signatur stimmen mit dem Beispiel überein. In der Logdatei auf Bitcoin.de kann ich sehen das der Request zwar ankommt, der Postparameter jedoch nicht mit übergeben wird. Das ist wohl das derzeitige Problem bei mir. Fehlt mit bei der Übergabe vielleicht noch hein Header?
POST-Parameter: { 'type' : 'buy', 'max_amount' : 5.3, 'price' : 255.50 } api_key: 'MY_API_KEY' // Entspricht dem eigenen API-Key nonce: 1234567 // Das für den aktuellen Request verwendete Nonce api_secret: 'MY_API_SECRET' // Entspricht dem eigenen API-Secret http_method: 'POST' uri: 'https://api.bitcoin.de/v1/orders'
Schritt 1: Aufsteigendes Sortieren der POST-Parameter anhand ihres Namens¹
{ 'max_amount' : 5.3, 'price' : 255.50 'type' : 'buy', }
Schritt 2: Einen validen URL-encoded Query-String aus den POST-Parametern generieren¹
url_encoded_query_string = 'max_amount=5.3&price=255.5&type=buy'
Schritt 3: md5-Hash über den in Schritt 2 erstellten Query-String der POST-Parameter bilden
post_parameter_md5_hashed_url_encoded_query_string = md5(url_encoded_query_string) // Es wird der MD5-Hash in hexadezimaler Form benötigt => '5f4aece1d75c7adfc5ef346216e9bb11'
Schritt 4: Konkatinieren der HMAC-Eingabedaten
hmac_data = http_method+'#'+uri+'#'+api_key+'#'+nonce+'#'+post_parameter_md5_hashed_url_encoded_query_string => 'POST#https://api.bitcoin.de/v1/orders#MY_API_KEY#1234567#5f4aece1d75c7adfc5ef346216e9bb11'
Schritt 5: Bilden des eigentlichen sha256-HMACs
hmac = HMAC('sha256', hmac_data, api_secret) => 'fd7c4c3af90524af1723bf89773904f87afdeaab2b87161799ee65f864aa9e96'
Die Übergabe erfolgt per HTTP5.1 Request. Kann mir da irgendwer ein bisschen weiterhelfen?