Bitcoin Forum
April 26, 2024, 06:52:03 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: MtGox  (Read 1455 times)
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 09:27:50 AM
 #1

Hallo,

ich benötige einmal Hilfe mit der MtGox api.

Ich möchte z.B. mit einem Programm folgende URL auslesen:
https://mtgox.com/api/0/getFunds.php

Dort sollte die Anzahl meiner BTCs angezeigt werden laut beschreibung.

Ich habe auch schon ein API-Key erstellt. Doch wie setze ich diesen API-Key ein? Ich muss dies über wget realisieren.

Jemand eine Idee?

Danke
oxi
1714114323
Hero Member
*
Offline Offline

Posts: 1714114323

View Profile Personal Message (Offline)

Ignore
1714114323
Reply with quote  #2

1714114323
Report to moderator
1714114323
Hero Member
*
Offline Offline

Posts: 1714114323

View Profile Personal Message (Offline)

Ignore
1714114323
Reply with quote  #2

1714114323
Report to moderator
1714114323
Hero Member
*
Offline Offline

Posts: 1714114323

View Profile Personal Message (Offline)

Ignore
1714114323
Reply with quote  #2

1714114323
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714114323
Hero Member
*
Offline Offline

Posts: 1714114323

View Profile Personal Message (Offline)

Ignore
1714114323
Reply with quote  #2

1714114323
Report to moderator
1714114323
Hero Member
*
Offline Offline

Posts: 1714114323

View Profile Personal Message (Offline)

Ignore
1714114323
Reply with quote  #2

1714114323
Report to moderator
Sukrim
Legendary
*
Offline Offline

Activity: 2618
Merit: 1006


View Profile
August 04, 2011, 09:33:23 AM
 #2

Steht doch eh auf https://mtgox.com/support/tradeAPI:

Quote
The following require you to be identified via an API key. Once you have the API key you need to add a "nonce" parameter to the post data (which must be an ever-increasing interger, for example with PHP in 64bits: (int)(microtime(true)*1000000)) and two HTTP headers: Rest-Key (your key) nad Rest-Sign (a signature generated by doing a sha512-hmac on the POST data with the secret as key, encoded in base64).

Du brauchst also einen "nonce" Parameter in deinem POST und 2 zusätzliche HTTP header, einmal den Key und einmal einen Hash aus POSTdaten + Key.

edit: Noch mehr Doku gibt's auf https://en.bitcoin.it/wiki/MtGox/API

https://www.coinlend.org <-- automated lending at various exchanges.
https://www.bitfinex.com <-- Trade BTC for other currencies and vice versa.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 09:36:42 AM
 #3

magst du mir eventuell ein beispiel geben?

Das würde mir total weiterhelfen...stehe gerade irgendwie auf dem Schlauch Sad
Sukrim
Legendary
*
Offline Offline

Activity: 2618
Merit: 1006


View Profile
August 04, 2011, 09:37:44 AM
 #4

Am Wiki steht eine Referenzimplementation in PHP - welche Sprache brauchst du?

https://www.coinlend.org <-- automated lending at various exchanges.
https://www.bitfinex.com <-- Trade BTC for other currencies and vice versa.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 09:45:04 AM
 #5

ich brauche das ganze per wget aus der Programmersprache Gambas heraus.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 12:31:30 PM
 #6

mir würde schon ein beispiel für wget im prozessraum reichen.

Ich hoffe mir kann einer helfen Smiley
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:06:14 PM
 #7

mir würde schon ein beispiel für wget im prozessraum reichen.

Ich hoffe mir kann einer helfen Smiley

Der wget-Aufruf würde wie folgt funktionieren.

Code:
wget --no-check-certificate -O - -q --header='Rest-Key: <API-KEY>' --header='Rest-Sign: <REST-SIGN>' --post-data='nonce=<NONCE>' https://mtgox.com/api/0/getFunds.php

<NONCE> und <REST-SIGN> musst du halt bei dir im Skript erstellen/ermitteln.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:13:26 PM
 #8

also warscheinlich eine dumme frage, da es jedoch immernochnicht klappt bitte ich nochmals um hilfe.

wie erstelle ich denn solch ein script per console?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:23:51 PM
 #9

Du meinst das Skript zum ermitteln von Nounce und Signatur? Die solltest du in deinem Gambas-Code ermitteln. Also einfach die ersten paar Zeilen des PHP-Sample-Skript in Gambas umschreiben. Oder was meinst du?
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:28:33 PM
 #10

genau das mit dem encoden habe ich ja verstanden das ich den secret key encoden muss. doch mit dem nonce verstehe ich irgendwie garnicht. ist das ein parameter der von 1 an immer höher gezählt werden muss?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:31:37 PM
 #11

ist das ein parameter der von 1 an immer höher gezählt werden muss?

z.B. Muss halt eine Zahl sein, die sich mit jedem Request erhöht. Deshalb bietet es sich an einfach einen aktuellen Timestamp zu nehmen, da du dir dann ja keinen Kopf um den letzten Nonce machen musst.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:32:58 PM
 #12

ok.

nun noch die letzte frage:

gibt es ein linux consolen tool, mit dem ich den secret code decodieren kann?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:45:16 PM
 #13

Verstehe zwar nicht wozu du den decoden willst, aber base64 ist das was du suchst.

Code:
 echo <SECRET> | base64 -d
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:45:56 PM
 #14

ich dachte das muss man oder muss man den encoden?

oder was muss ich mit dem secred code machen?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:47:48 PM
 #15

ich dachte das muss man oder muss man den encoden?

Stimmt, hast recht Wink
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:49:01 PM
 #16

ist es richtig das da so cryptische zahlen in der console bei rauskommen?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 01:50:33 PM
 #17

Yep. Deswegen ist das Ding ja base64-encoded, damit der Key einfacher weiterzugeben ist.
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 04, 2011, 01:53:01 PM
 #18

mh da steht immernoch error: must be login.

danke schonmal für deine hilfe!

momentan sieht das in gambas so aus:

STRtest ist ein String

Shell ("echo <SecretCode> | base64 -d") To STRtest
 Shell ("wget --no-check-certificate -O - -q --header='Rest-Key: <key>' --header='Rest-Sign:" & STRtest & "' --post-data='nonce=<zahl>' https://mtgox.com/api/0/getFunds.php") To STRapi

passt doch so oder?
somni451
Member
**
Offline Offline

Activity: 64
Merit: 10



View Profile
August 04, 2011, 02:03:04 PM
 #19

Nop. STRtest hält ja nur den Secret-Key, muss aber eine Signatur der POST-Params halten (also von nounce).

Siehe:
Code:
base64_encode(hash_hmac('sha512', $post_data, base64_decode($secret), true))
oxi (OP)
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
August 05, 2011, 11:19:50 AM
 #20

nun habe ichs endlich Smiley

habe letzt endlich das beispiel php script abgespeichert und lese den output einfach mit gambas ein. ist die schnellste und einfachste methode.

Danke für eure Hilfe.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!