Blockchain-API Bitcoin-Transaktionsliste zu einer Brieftasche

Ich wollte ein kleines Skript schreiben, um alle eingehenden Transaktionen zu einer Brieftasche zu analysieren. Die Brieftasche, die ich mir anschaue, stammt von einem OpenSource-Projekt, für das ich arbeite, um einen Überblick über die Beträge zu erhalten, die dem Projekt in einem bestimmten Zeitraum gegeben wurden. Ich verwende die Blockchain Data API und versuche, die Informationen aus diesem Aufruf zu analysieren (einschließlich der Wallet-Adresse). Aber ich kann anscheinend nicht die Menge an Bitcoins abrufen, die auf die Brieftasche übertragen wurden. Manchmal sind Beträge von bis zu 266 BTC aufgelistet, obwohl die eigentliche Transaktion nur ein paar Satoshis waren.

Die Frage ist also: Wenn ich einen JSON-Transaktionsblock wie diesen habe:

   "ver":1,
   "inputs":[
      {
         "sequence":4294967295,
         "prev_out":{
            "spent":true,
            "tx_index":273950706,
            "type":0,
            "addr":"12tPhkHLjmkDfqTfvbagbnkYDU5UTu2pMp",
            "value":461323,
            "n":1,
            "script":"76a91414b04a7b66d06dd399bdb689df209ed688e9bcaa88ac"
         },
         "script":"483045022100f38ffd67d53b4c5a6f6a2543ca6217863be5b4f3a43e885a2520dbb768ba5df702203d9782af024ee9e213fb59cee1c788c70e66d66addb553b74610a1fed3df10390121026b138ff61ffeaf459c4916889d2c53894fc029c9729886714fe23ebd8a15bb32"
      }
   ],
   "block_height":480392,
   "relayed_by":"52.59.6.61",
   "out":[
      {
         "spent":false,
         "tx_index":274914673,
         "type":0,
         "addr":"1M3GipkG2YyHPDMPewqTpup83jitXvBg9N",
         "value":295902,
         "n":0,
         "script":"76a914dbd0788d294dd15704d232053790c555d1cb337888ac"
      },
      {
         "spent":false,
         "tx_index":274914673,
         "type":0,
         "addr":"18h2yt8cJSYwGSWV5nUodTgPZj9Vi5aCJS",
         "value":124987,
         "n":1,
         "script":"76a914545b2c20e7d8ded3853a2336ebedf7752cf823dd88ac"
      }
   ],
   "lock_time":0,
   "result":0,
   "size":226,
   "time":1502650024,
   "tx_index":274914673,
   "vin_sz":1,
   "hash":"02a7bf19417db6d975d48e27199cd65dcc415c5bf81ed447f945b2a4f3dc1d24",
   "vout_sz":2
},

Wie viele Satoshis wurden aus dieser Brieftasche hinzugefügt (oder eingelöst)? Wie soll ich die Werte im Json interpretieren?

@ZakriaKhan Du hast nur einen Link zu diesem Thread gepostet

Antworten (1)

Transaktion hat Ein- und Ausgänge. "value"ist Satoshi zählen:

  "inputs":[
  {
...
         "prev_out":{
...
            "value":461323,
...
         },
...
      }
   ],
...
   "out":[
      {
...
         "value":295902,
...
      },
      {
...
         "value":124987,
...
      }
   ],
...

Um die Gebühr zu berechnen, sollten Sie die Differenz zwischen allen Ein- und Ausgängen berechnen.

Das geht leider nicht.
Nehmen Sie diese Transaktion als Beispiel (hier das JSON) . Der Unterschied zwischen Ein- und Ausgang beträgt 27760 Satoshi. Aber der wahre Wert war 2270804 Satoshi.
Um zu zählen, wie viele Bitcoins in Ihre Brieftasche gegangen sind. Du musst dir nur die out Objects ansehen und vor allem nur die, die deinen Wallet-Hash als Adresse haben. Das sind die erhaltenen Bitcoins. Jetzt muss ich nur noch herausfinden, wie ich zählen kann, was die Brieftasche verlassen hat.
Ich verstehe jetzt nicht, was du willst. Der Unterschied zwischen rein und raus ist eine Gebühr. Das ist mir aufgefallen. Ihre Zahl lautet: Eingänge minus Gebühr. Was bedeutet das? Warum ist das ein echter Wert? Ich habe keine Ahnung. Sie haben "Ihren Brieftaschen-Hash" bemerkt. Ich weiß nicht, welche Adresse Ihre ist, die Frage betraf Satoshi-Berechnungen von Json. Ich habe Ihnen eine erschöpfende Antwort gegeben, weil dies die einzigen Satoshi-Werte sind, die innerhalb der Transaktion vorhanden sind. Sie können nicht herausfinden, indem Sie nur auf die Transaktion schauen, welche Adressen Ihnen gehören und welche nicht.
Auch Ihre Zahl ist die Summe der Ausgänge. Bedeutet dies, dass 2 Ausgangsadressen Ihnen gehören?