∟Data Properties of Bitcoin Transaction

This section describes data properties of a Bitcoin transaction.

A Bitcoin transaction has the following data properties expressed in JSON format:

  "txid" : "id",        (string) The transaction id (same as provided)
  "hash" : "id",        (string) The transaction hash (differs from txid 
                                 for witness transactions)
  "size" : n,           (numeric) The serialized transaction size
  "vsize" : n,          (numeric) The virtual transaction size (differs 
                                  from size for witness transactions)
  "version" : n,        (numeric) The version
  "locktime" : ttt,     (numeric) The lock time
  "vin" : [             (array of json objects)
     {
       "txid": "id",    (string) The transaction id
       "vout": n,       (numeric)
       "scriptSig": {   (json object) The script
         "asm": "asm",  (string) asm
         "hex": "hex"   (string) hex
       },
       "sequence": n    (numeric) The script sequence number
       "txinwitness": ["hex", ...] (array of string) hex-encoded witness 
                                  data (if any)
     }
     ,...
  ],
  "vout" : [            (array of json objects)
     {
       "value" : x.xxx,     (numeric) The value in BTC
       "n" : n,             (numeric) index
       "scriptPubKey" : {   (json object)
         "asm" : "asm",     (string) the asm
         "hex" : "hex",     (string) the hex
         "reqSigs" : n,     (numeric) The required sigs
         "type" : "pubkeyhash",  (string) The type, eg 'pubkeyhash'
         "addresses" : [    (json array of string)
           "address"        (string) bitcoin address
           ,...
         ]
       }
     }
     ,...
  ],
  "blockhash" : "hash",   (string) the block hash
  "confirmations" : n,    (numeric) The confirmations
  "time" : ttt,           (numeric) The transaction time in seconds since 
                                    (Jan 1 1970 GMT)
  "blocktime" : ttt       (numeric) The block time in seconds since (Jan 1 
                                    1970 GMT)
}

Let's take a look at the transaction from Bitcoin Test Network:

C:\>\local\bitcoin-0.15.1\bin\bitcoin-cli.exe -testnet getrawtransaction 
   e22d5998a43e3e1d81784e6e92988d1c4eae77cd0e439542337e48a786c75e69 true

{
  "txid": 
     "e22d5998a43e3e1d81784e6e92988d1c4eae77cd0e439542337e48a786c75e69",
  "hash": 
     "e22d5998a43e3e1d81784e6e92988d1c4eae77cd0e439542337e48a786c75e69",
  "version": 2,
  "size": 225,
  "vsize": 225,
  "locktime": 1281294,
  "vin": [
    {
      "txid": 
        "6f6e35c52b7a00c4b496a7191296c29fe98248e869471c92c87c47885dc54baa",
      "vout": 0,
      "scriptSig": {
        "asm": 
"304402202ab88452cd720f3e42731a5fd1345e5f2c6888a3d0a0568abf315c46e6b038cf02
20394e02c12aecd9bb2356b4b09980476a4cb347b9e96088f39c995d6d0302fd76[ALL] 
0387ab1fa2aedc1dfe5fd8fba9275455b392db1e3b7bad3a8d611fb3cdb789f84d",
        "hex": 
"47304402202ab88452cd720f3e42731a5fd1345e5f2c6888a3d0a0568abf315c46e6b0..."
      },
      "sequence": 4294967294
    }
  ],
  "vout": [
    {
      "value": 847.54623264,
      "n": 0,
      "scriptPubKey": {
        "asm": 
"OP_DUP OP_HASH160 c14be92816c5ccfa8c742acba43ee5382ce22eac 
OP_EQUALVERIFY OP_CHECKSIG",
        "hex": "76a914c14be92816c5ccfa8c742acba43ee5382ce22eac88ac",
        "reqSigs": 1,
        "type": "pubkeyhash",
        "addresses": [
          "my91eT3mdFdo9gfe85wu2Ex35sNRS3uVwJ"
        ]
      }
    },
    {
      "value": 7.03666753,
      "n": 1,
      "scriptPubKey": {
        "asm": 
"OP_DUP OP_HASH160 5e25fd265324c70a1a8bbbeb969614d39f6f6647 
OP_EQUALVERIFY OP_CHECKSIG",
        "hex": "76a9145e25fd265324c70a1a8bbbeb969614d39f6f664788ac",
        "reqSigs": 1,
        "type": "pubkeyhash",
        "addresses": [
          "mp6mKbgWE25PyyX63zJ8SRibrKugHMkJDE"
        ]
      }
    }
  ],
  "hex": "0200000001aa4bc55d88477cc8921c4769e84882e99fc2961219a796b4c4...",
  "blockhash": 
    "0000000000000db32dee811e7a0c1caefc60fbbbf5db88464877f4c97988ea14",
  "confirmations": 2271,
  "time": 1518381726,
  "blocktime": 1518381726
}

Table of Contents

 About This Book

 Introduction of Bitcoin

 Bitcoin Blockchain

 Bitcoin Wallet

 Bitcoin Core

 Bitcoin Transaction

 Bitcoin-Qt - Bitcoin Core GUI

 Bitcoin Mining

 Bitcoin Consensus Rules

 Bitcoin Block Data Structure

►Bitcoin Transaction Data Structure

►Data Properties of Bitcoin Transaction

 Data Structure of Bitcoin Raw Transaction Format

 Decode Bitcoin Raw Transaction Format

 Data Structure of Coinbase Transaction

 Calculate Transaction ID

 Bitcoin Blockchain APIs

 Copay - Bitcoin Wallet

 Archived Tutorials

 References

 Full Version in PDF/EPUB