Gavin Andresen (OP)
Legendary
Offline
Activity: 1652
Merit: 2301
Chief Scientist
|
|
June 25, 2012, 12:35:30 AM |
|
My work on the 'raw transaction' API has me thinking hard about the gettransaction/getblock RPC calls. I want it to be easy for the information returned by those calls to be used by the new createrawtx/etc API calls. So: in version 0.6.3 and earlier, gettransaction would only return information about transactions in your wallet, and would not return all of the information about the transaction. A month or two ago Pieter and Luke wrote code to modify gettransaction/getblock to return information about any transaction in the blockchain and a new 'decompositions' Object argument was added to those RPC calls that would let you specify 5 different ways to get information about transaction inputs and outputs (no/hash/hex/asm/obj). So you might do: gettransaction 0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098 '{"script":hex}' I think 5 different ways of getting (or not getting if you specify 'no') the information is 4 too many, so I'm modifying the code as follows: - getblock doesn't change from version 0.6; it returns a list of transaction id's in a "tx" Array.
- gettransaction gets an extra boolean argument that defaults to 0 (false). If non-zero is passed, then it is verbose and outputs information about the transaction inputs and outputs in all the different formats (same as what decomposition "obj" does).
- for compatibility with the 'raw transaction' API calls, gettransaction always return the full serialized-hex-encoded transaction data as a new "rawtx" field.
The thinking is either RPC users will want minimal information quickly, or will want full information and won't care much if they get extra information. If you want full information as quickly as possible, then you should write code to decode the "rawtx" array yourself. This does mean getting full information for every transaction in a block means more than one RPC call, but Jeff has a pull request for JSON-2.0 "batch" calls, so getting full information about every transaction in a block will be just two RPC round-trips (one getblock, then one batch with a bunch of gettransaction calls in it). And to be clear: these changes are meant to be 100% backwards-compatible with getblock/gettransaction in version 0.6.3 and earlier. We're talking about extra arguments and extra information in the returned JSON objects.
Example output for a complicated multisignature testnet transaction: Short, in-wallet transaction: $ ./bitcoind -testnet gettransaction 4ec492788efb3c9e4e23972f095bd575217288c9f6b8237922145aeff8dae8d5 { "rawtx" : "0100000001c6660657eb258f9e58d246d767f5aaa15980d4d26ee496e7e24fabf72f2cc3440000000048473044022026b2e3d408a7848ad18b35042163c0efb358c456c6006a0cd13c077ec213aeab02202115a38de465e0c927f858cbb83fca45bddb0e469524667e39fd0c54ab5007d701ffffffff0100f2052a0100000017a914b6cb85e6fa58b2bff3da23074eb0f1a0ddb23e1f8700000000", "amount" : -50.00000000, "fee" : 0.00000000, "confirmations" : 2, "blockhash" : "0000000003abdd41db27190bb4f19e36497f647d1ea586ef543c44f7ccd40015", "blockindex" : 1, "txid" : "4ec492788efb3c9e4e23972f095bd575217288c9f6b8237922145aeff8dae8d5", "time" : 1339001503, "details" : [ { "account" : "", "address" : "2N9uknE7Zy9M3cPxWvkHu9HQiArL3pnbcUF", "category" : "send", "amount" : -50.00000000, "fee" : 0.00000000 } ] }
Verbose: $ ./bitcoind -testnet gettransaction 4ec492788efb3c9e4e23972f095bd575217288c9f6b8237922145aeff8dae8d5 1 { "rawtx" : "0100000001c6660657eb258f9e58d246d767f5aaa15980d4d26ee496e7e24fabf72f2cc3440000000048473044022026b2e3d408a7848ad18b35042163c0efb358c456c6006a0cd13c077ec213aeab02202115a38de465e0c927f858cbb83fca45bddb0e469524667e39fd0c54ab5007d701ffffffff0100f2052a0100000017a914b6cb85e6fa58b2bff3da23074eb0f1a0ddb23e1f8700000000", "version" : 1, "locktime" : 0, "vin" : [ { "prevout" : { "hash" : "44c32c2ff7ab4fe2e796e46ed2d48059a1aaf567d746d2589e8f25eb570666c6", "n" : 0 }, "scriptSig" : { "asm" : "3044022026b2e3d408a7848ad18b35042163c0efb358c456c6006a0cd13c077ec213aeab02202115a38de465e0c927f858cbb83fca45bddb0e469524667e39fd0c54ab5007d701", "hex" : "473044022026b2e3d408a7848ad18b35042163c0efb358c456c6006a0cd13c077ec213aeab02202115a38de465e0c927f858cbb83fca45bddb0e469524667e39fd0c54ab5007d701", "type" : "pubkey", "addresses" : [ "n4DUWe93vkdfAiSVDaMP3okaU7upK2wtrr" ] }, "sequence" : 4294967295 } ], "vout" : [ { "value" : 50.00000000, "scriptPubKey" : { "asm" : "OP_HASH160 b6cb85e6fa58b2bff3da23074eb0f1a0ddb23e1f OP_EQUAL", "hex" : "a914b6cb85e6fa58b2bff3da23074eb0f1a0ddb23e1f87", "reqSigs" : 1, "type" : "scripthash", "addresses" : [ "2N9uknE7Zy9M3cPxWvkHu9HQiArL3pnbcUF" ] } } ], "amount" : -50.00000000, "fee" : 0.00000000, "confirmations" : 2, "blockhash" : "0000000003abdd41db27190bb4f19e36497f647d1ea586ef543c44f7ccd40015", "blockindex" : 1, "txid" : "4ec492788efb3c9e4e23972f095bd575217288c9f6b8237922145aeff8dae8d5", "time" : 1339001503, "details" : [ { "account" : "", "address" : "2N9uknE7Zy9M3cPxWvkHu9HQiArL3pnbcUF", "category" : "send", "amount" : -50.00000000, "fee" : 0.00000000 } ] }
The only feature that bothers me is reporting 'addresses/type' for transaction inputs. It bothers me for two reasons: 1) It is expensive to fetch that data, because it means finding the previous transaction in the blockchain and fetching it from disk. It violates the principle that "a feature shouldn't cost you anything if you're not using it." 2) If "we" implement spent-input pruning (Pieter has some fantastic early results) that data might not exist. I think it would be better to remove the 'addresses/type' information from gettransaction output, so gettransaction never has to lookup previous transactions. If you care about the previous transaction, then you would have to call gettransaction again, using vin.prevout.hash to look them up (and, again, using the JSON-2.0 'batch' feature to lookup all the prior transactions in one RPC roundtrip). If/when transaction pruning happens then the semantics are clear: that gettransaction would return an error if the prior transaction was pruned.
|
How often do you get the chance to work on a potentially world-changing project?
|
|
|
Luke-Jr
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
June 25, 2012, 04:37:13 PM |
|
An example... getblock as it is now in pre-0.7, with decompositions: (1 command, that returns the information requested) $ bitcoind getblock 000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16 '{"tx":"obj", "script":"asm"}' { "hash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "size" : 1473, "height" : 186154, "version" : 1, "merkleroot" : "47de80c28529a69bddefb90ea15388f10e2647482560bb50857e7b586d45a8c3", "time" : 1340614357, "nonce" : 728350342, "bits" : "1a09b78a", "difficulty" : 1726566.55919348, "tx" : [ { "txid" : "11af9ba807942f7db6274f40442651c7b58b02b0a942867847b2b8a3932df7b1", "version" : 1, "locktime" : 0, "size" : 142, "vin" : [ { "coinbase" : "048ab7091a027702062f503253482f", "sequence" : 4294967295 } ], "vout" : [ { "value" : 50.00000000, "scriptPubKey" : "04b034ecbcbe86f327d2edd25ce1fce3f4463710c00ae00d1a25198bab882be95c72d3468dc6931f756b03d99a3b7f3a07543834370ad023b37cb1127c6266d91a OP_CHECKSIG" } ], "confirmations" : 0 }, { "txid" : "9fb85b2c9085284a6c39407025cbec31b4c88b1075f3d98840395bc4e389616d", "version" : 1, "locktime" : 0, "size" : 259, "vin" : [ { "prevout" : { "hash" : "1f16f657fb093f4618c1ad6504130d08fa71bb1964d0be5574f44011124f7b64", "n" : 1 }, "scriptSig" : "3046022100dea86a40b8ffcfa446e05886e18c7ea8bca371118da48d4adfde846b87af43190221009652d86f7013afd35311fe8d080c9e592758716c08e971c39283ca08746db78501 04a1ce79a9fec1018129bb79c19dc90dcb4657e8cf725c635909ea402143b64e84fb06bf0b2c96ca6f0db9ac8ae480399f7724a9b288faf52c16d1535f13b90fe6", "sequence" : 4294967295 } ], "vout" : [ { "value" : 1066.13121507, "scriptPubKey" : "OP_DUP OP_HASH160 e51a349be7044a8d84c6e8370ff56ff6860f3597 OP_EQUALVERIFY OP_CHECKSIG" }, { "value" : 1242.21306062, "scriptPubKey" : "OP_DUP OP_HASH160 51fb66b01bcdbcdc67049fa97a8da21a2fa912e0 OP_EQUALVERIFY OP_CHECKSIG" } ], "confirmations" : 0 }, { "txid" : "060cbd899b2c1fac0cdbcf580a3f90aae131b16d516f049baf1d13c66e410892", "version" : 1, "locktime" : 0, "size" : 226, "vin" : [ { "prevout" : { "hash" : "f2b6efbef50c026efc19dac73ed787b0ccc1697c8640e96637ab861e85afca60", "n" : 0 }, "scriptSig" : "3045022100a0be436cb85b899740792206a17658ef96e6d786e53448cab8b11f9e51be96a6022063ab6d9337fa71b9d5a75e3ebe0a33c151ad6cdca70f9170c1b0297d655c5b3301 022cb39adb02162270b89b08975256293182bcaa84622d18a30c3bd72751d4ddd5", "sequence" : 4294967295 } ], "vout" : [ { "value" : 1.40018289, "scriptPubKey" : "OP_DUP OP_HASH160 d6211f74851b1cc1d181d0fe591445a18f49c818 OP_EQUALVERIFY OP_CHECKSIG" }, { "value" : 1.00000000, "scriptPubKey" : "OP_DUP OP_HASH160 713c581950bbfb0545f1418bbfe825911e8efa5c OP_EQUALVERIFY OP_CHECKSIG" } ], "confirmations" : 0 }, { "txid" : "2da6e2a83abe9e870a3a4762d8159e523a3068cce26c5670afdcd2c63486a1ac", "version" : 1, "locktime" : 0, "size" : 765, "vin" : [ { "prevout" : { "hash" : "9aa47d859bda3eba62fd366461adda78f6df3293dd7b1681361f54531220b378", "n" : 2 }, "scriptSig" : "3046022100f10d0f6fc6ce90ae97a04627a659791b1caed48aae8d70b82c73c5c730758576022100aba76d54166189b50e678faac63a4265d6d2daf48889a23a1fc285e042fb9c8901 04addfdfd09989768bc93678fd4eca1bf8d485e98690b7584a7559ab30a63ac16fd33e8e7db59f72c21b402a78bacbde205d642e60037d8b660a57341a60c4e646", "sequence" : 4294967295 }, { "prevout" : { "hash" : "125ea4a6f9e86333de7566af28e6a5558a2c66e5c41b197560bd9a8e6c56866b", "n" : 0 }, "scriptSig" : "3045022100c9e3d69de5bcbb9252b2b637e6846eaef971959653c887e7bb13f6528f1587f2022059d47b80f98460c0a02a9f7a7977202533fe3566a1cbecc599b122af02a8b8ac01 04a875f1a901e23be1435350f1a94820f84f590e297c0a34e393b873ac5b3182d071ca43890a54c750ad2fd6288416a319e70e48f2c2d2fe828666cfc98689ce0e", "sequence" : 4294967295 }, { "prevout" : { "hash" : "e2b9a62cd1ad312f510510bf071ae0079b6b858db8b43e86809b7269d8ad1ff7", "n" : 1 }, "scriptSig" : "3045022100a198dea14374a5d0584cfedeb8f6a457556b9bdd0488c433b179ad328a007c7102200a3179f1b8a95ae4e02183c25fb3234f1efe0db9129806d38579b2845e77a11801 047b19a9c3e6b0a92e9bdeeb294ebea709dd1d9b5e2ccb7e1fb03ca6bfa43b78dd0a6d72ddd9e64130513d63dc1ea5609906a15f1d3044f50ee6415b2e4eaf59e4", "sequence" : 4294967295 }, { "prevout" : { "hash" : "b6548149a182fd10330b9f69024bdd55ce521ce367e9125d1bd8c91a8c5539da", "n" : 0 }, "scriptSig" : "30450220670628b426d996131f064bb861554e31bd3afcdc581ae9824af1610dcc079080022100d240e2f445670f8e2be82f5fc74dfbc98312f0adb5f2ec163449588bdd8e9f8401 045c7e935730d0a7e45615e4a5df7c50b8bdde7fad7c978c569563b5451a756710d7dc0f1a248bd233467f17dd28e27484a91c0af4123c131b87d959dd37850692", "sequence" : 4294967295 } ], "vout" : [ { "value" : 0.19950871, "scriptPubKey" : "OP_DUP OP_HASH160 c6b92e0b69d3a7aa53a28e2bc5a6de3f32fbff5a OP_EQUALVERIFY OP_CHECKSIG" } ], "confirmations" : 0 } ], "previousblockhash" : "00000000000006d68b5d22acef2a43b38dc692782d7c12c0ae43259b9eb46078", "nextblockhash" : "000000000000023b6a46f950ef1ccd08519c2e26208d1af157c6e7fa541bd043" } With this functionality removed and adjusted as Gavin is proposing, you now need 1+N calls (N = number of transactions in the block) before you have the data, and those N calls all do a lot more disk I/O since they return more information than you necessarily need: $ bitcoind getblock 000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16 { "hash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "size" : 1473, "height" : 186154, "version" : 1, "merkleroot" : "47de80c28529a69bddefb90ea15388f10e2647482560bb50857e7b586d45a8c3", "time" : 1340614357, "nonce" : 728350342, "bits" : "1a09b78a", "difficulty" : 1726566.55919348, "tx" : [ "11af9ba807942f7db6274f40442651c7b58b02b0a942867847b2b8a3932df7b1", "9fb85b2c9085284a6c39407025cbec31b4c88b1075f3d98840395bc4e389616d", "060cbd899b2c1fac0cdbcf580a3f90aae131b16d516f049baf1d13c66e410892", "2da6e2a83abe9e870a3a4762d8159e523a3068cce26c5670afdcd2c63486a1ac" ], "previousblockhash" : "00000000000006d68b5d22acef2a43b38dc692782d7c12c0ae43259b9eb46078", "nextblockhash" : "000000000000023b6a46f950ef1ccd08519c2e26208d1af157c6e7fa541bd043" } Now for each transaction... $ bitcoind gettransaction 11af9ba807942f7db6274f40442651c7b58b02b0a942867847b2b8a3932df7b1 1 { "txid" : "11af9ba807942f7db6274f40442651c7b58b02b0a942867847b2b8a3932df7b1", "version" : 1, "locktime" : 0, "size" : 142, "vin" : [ { "coinbase" : "048ab7091a027702062f503253482f", "sequence" : 4294967295 } ], "vout" : [ { "value" : 50.00000000, "scriptPubKey" : { "asm" : "04b034ecbcbe86f327d2edd25ce1fce3f4463710c00ae00d1a25198bab882be95c72d3468dc6931f756b03d99a3b7f3a07543834370ad023b37cb1127c6266d91a OP_CHECKSIG", "hex" : "4104b034ecbcbe86f327d2edd25ce1fce3f4463710c00ae00d1a25198bab882be95c72d3468dc6931f756b03d99a3b7f3a07543834370ad023b37cb1127c6266d91aac", "reqSigs" : 1, "type" : "pubkey", "addresses" : [ "1NPPwnUg9jweJEYS9q6haxixuzuYTk78Am" ] } } ], "blockhash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "time" : 1340614357 } $ bitcoind gettransaction 9fb85b2c9085284a6c39407025cbec31b4c88b1075f3d98840395bc4e389616d 1 { "txid" : "9fb85b2c9085284a6c39407025cbec31b4c88b1075f3d98840395bc4e389616d", "version" : 1, "locktime" : 0, "size" : 259, "vin" : [ { "prevout" : { "hash" : "1f16f657fb093f4618c1ad6504130d08fa71bb1964d0be5574f44011124f7b64", "n" : 1 }, "scriptSig" : { "asm" : "3046022100dea86a40b8ffcfa446e05886e18c7ea8bca371118da48d4adfde846b87af43190221009652d86f7013afd35311fe8d080c9e592758716c08e971c39283ca08746db78501 04a1ce79a9fec1018129bb79c19dc90dcb4657e8cf725c635909ea402143b64e84fb06bf0b2c96ca6f0db9ac8ae480399f7724a9b288faf52c16d1535f13b90fe6", "hex" : "493046022100dea86a40b8ffcfa446e05886e18c7ea8bca371118da48d4adfde846b87af43190221009652d86f7013afd35311fe8d080c9e592758716c08e971c39283ca08746db785014104a1ce79a9fec1018129bb79c19dc90dcb4657e8cf725c635909ea402143b64e84fb06bf0b2c96ca6f0db9ac8ae480399f7724a9b288faf52c16d1535f13b90fe6", "type" : "pubkeyhash", "addresses" : [ "1b8C6zVAsmKT28Zefkn4kLvj9Suw9q4bm" ] }, "sequence" : 4294967295 } ], "vout" : [ { "value" : 1066.13121507, "scriptPubKey" : { "asm" : "OP_DUP OP_HASH160 e51a349be7044a8d84c6e8370ff56ff6860f3597 OP_EQUALVERIFY OP_CHECKSIG", "hex" : "76a914e51a349be7044a8d84c6e8370ff56ff6860f359788ac", "reqSigs" : 1, "type" : "pubkeyhash", "addresses" : [ "1MtP8ijPPJZrjZ5TamYvD5Jk3ZEoxkXwKc" ] } }, { "value" : 1242.21306062, "scriptPubKey" : { "asm" : "OP_DUP OP_HASH160 51fb66b01bcdbcdc67049fa97a8da21a2fa912e0 OP_EQUALVERIFY OP_CHECKSIG", "hex" : "76a91451fb66b01bcdbcdc67049fa97a8da21a2fa912e088ac", "reqSigs" : 1, "type" : "pubkeyhash", "addresses" : [ "18UUuCHm23GTw6Vkiu1MuuFRDFXWXHiPNh" ] } } ], "blockhash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "time" : 1340614357 } $ bitcoind gettransaction 060cbd899b2c1fac0cdbcf580a3f90aae131b16d516f049baf1d13c66e410892 1 { "txid" : "060cbd899b2c1fac0cdbcf580a3f90aae131b16d516f049baf1d13c66e410892", "version" : 1, "locktime" : 0, "size" : 226, "vin" : [ { "prevout" : { "hash" : "f2b6efbef50c026efc19dac73ed787b0ccc1697c8640e96637ab861e85afca60", "n" : 0 }, "scriptSig" : { "asm" : "3045022100a0be436cb85b899740792206a17658ef96e6d786e53448cab8b11f9e51be96a6022063ab6d9337fa71b9d5a75e3ebe0a33c151ad6cdca70f9170c1b0297d655c5b3301 022cb39adb02162270b89b08975256293182bcaa84622d18a30c3bd72751d4ddd5", "hex" : "483045022100a0be436cb85b899740792206a17658ef96e6d786e53448cab8b11f9e51be96a6022063ab6d9337fa71b9d5a75e3ebe0a33c151ad6cdca70f9170c1b0297d655c5b330121022cb39adb02162270b89b08975256293182bcaa84622d18a30c3bd72751d4ddd5", "type" : "pubkeyhash", "addresses" : [ "12azr4VhoodQC1PHvsKzS74Meq5S8gEn6j" ] }, "sequence" : 4294967295 } ], "vout" : [ { "value" : 1.40018289, "scriptPubKey" : { "asm" : "OP_DUP OP_HASH160 d6211f74851b1cc1d181d0fe591445a18f49c818 OP_EQUALVERIFY OP_CHECKSIG", "hex" : "76a914d6211f74851b1cc1d181d0fe591445a18f49c81888ac", "reqSigs" : 1, "type" : "pubkeyhash", "addresses" : [ "1LXDHUDL6f84TqQfbxzeNXtsWmmWN8W2o2" ] } }, { "value" : 1.00000000, "scriptPubKey" : { "asm" : "OP_DUP OP_HASH160 713c581950bbfb0545f1418bbfe825911e8efa5c OP_EQUALVERIFY OP_CHECKSIG", "hex" : "76a914713c581950bbfb0545f1418bbfe825911e8efa5c88ac", "reqSigs" : 1, "type" : "pubkeyhash", "addresses" : [ "1BKjeTja7iL3ArMKyQM6tSpLXqjtcKc4a1" ] } } ], "blockhash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "time" : 1340614357 } $ bitcoind gettransaction 2da6e2a83abe9e870a3a4762d8159e523a3068cce26c5670afdcd2c63486a1ac 1 { "txid" : "2da6e2a83abe9e870a3a4762d8159e523a3068cce26c5670afdcd2c63486a1ac", "version" : 1, "locktime" : 0, "size" : 765, "vin" : [ { "prevout" : { "hash" : "9aa47d859bda3eba62fd366461adda78f6df3293dd7b1681361f54531220b378", "n" : 2 }, "scriptSig" : { "asm" : "3046022100f10d0f6fc6ce90ae97a04627a659791b1caed48aae8d70b82c73c5c730758576022100aba76d54166189b50e678faac63a4265d6d2daf48889a23a1fc285e042fb9c8901 04addfdfd09989768bc93678fd4eca1bf8d485e98690b7584a7559ab30a63ac16fd33e8e7db59f72c21b402a78bacbde205d642e60037d8b660a57341a60c4e646", "hex" : "493046022100f10d0f6fc6ce90ae97a04627a659791b1caed48aae8d70b82c73c5c730758576022100aba76d54166189b50e678faac63a4265d6d2daf48889a23a1fc285e042fb9c89014104addfdfd09989768bc93678fd4eca1bf8d485e98690b7584a7559ab30a63ac16fd33e8e7db59f72c21b402a78bacbde205d642e60037d8b660a57341a60c4e646", "type" : "pubkeyhash", "addresses" : [ "1LZvjABG38RPcuCc2z3zGP7xpemXyTqroo" ] }, "sequence" : 4294967295 }, { "prevout" : { "hash" : "125ea4a6f9e86333de7566af28e6a5558a2c66e5c41b197560bd9a8e6c56866b", "n" : 0 }, "scriptSig" : { "asm" : "3045022100c9e3d69de5bcbb9252b2b637e6846eaef971959653c887e7bb13f6528f1587f2022059d47b80f98460c0a02a9f7a7977202533fe3566a1cbecc599b122af02a8b8ac01 04a875f1a901e23be1435350f1a94820f84f590e297c0a34e393b873ac5b3182d071ca43890a54c750ad2fd6288416a319e70e48f2c2d2fe828666cfc98689ce0e", "hex" : "483045022100c9e3d69de5bcbb9252b2b637e6846eaef971959653c887e7bb13f6528f1587f2022059d47b80f98460c0a02a9f7a7977202533fe3566a1cbecc599b122af02a8b8ac014104a875f1a901e23be1435350f1a94820f84f590e297c0a34e393b873ac5b3182d071ca43890a54c750ad2fd6288416a319e70e48f2c2d2fe828666cfc98689ce0e", "type" : "pubkeyhash", "addresses" : [ "1QHeEZ5akUif9nuTj1MpRXrvEYHnbcR3Gy" ] }, "sequence" : 4294967295 }, { "prevout" : { "hash" : "e2b9a62cd1ad312f510510bf071ae0079b6b858db8b43e86809b7269d8ad1ff7", "n" : 1 }, "scriptSig" : { "asm" : "3045022100a198dea14374a5d0584cfedeb8f6a457556b9bdd0488c433b179ad328a007c7102200a3179f1b8a95ae4e02183c25fb3234f1efe0db9129806d38579b2845e77a11801 047b19a9c3e6b0a92e9bdeeb294ebea709dd1d9b5e2ccb7e1fb03ca6bfa43b78dd0a6d72ddd9e64130513d63dc1ea5609906a15f1d3044f50ee6415b2e4eaf59e4", "hex" : "483045022100a198dea14374a5d0584cfedeb8f6a457556b9bdd0488c433b179ad328a007c7102200a3179f1b8a95ae4e02183c25fb3234f1efe0db9129806d38579b2845e77a1180141047b19a9c3e6b0a92e9bdeeb294ebea709dd1d9b5e2ccb7e1fb03ca6bfa43b78dd0a6d72ddd9e64130513d63dc1ea5609906a15f1d3044f50ee6415b2e4eaf59e4", "type" : "pubkeyhash", "addresses" : [ "1NKFnJFA65FA5KyiptKsPyQVabPvGpnvNk" ] }, "sequence" : 4294967295 }, { "prevout" : { "hash" : "b6548149a182fd10330b9f69024bdd55ce521ce367e9125d1bd8c91a8c5539da", "n" : 0 }, "scriptSig" : { "asm" : "30450220670628b426d996131f064bb861554e31bd3afcdc581ae9824af1610dcc079080022100d240e2f445670f8e2be82f5fc74dfbc98312f0adb5f2ec163449588bdd8e9f8401 045c7e935730d0a7e45615e4a5df7c50b8bdde7fad7c978c569563b5451a756710d7dc0f1a248bd233467f17dd28e27484a91c0af4123c131b87d959dd37850692", "hex" : "4830450220670628b426d996131f064bb861554e31bd3afcdc581ae9824af1610dcc079080022100d240e2f445670f8e2be82f5fc74dfbc98312f0adb5f2ec163449588bdd8e9f840141045c7e935730d0a7e45615e4a5df7c50b8bdde7fad7c978c569563b5451a756710d7dc0f1a248bd233467f17dd28e27484a91c0af4123c131b87d959dd37850692", "type" : "pubkeyhash", "addresses" : [ "1ELrvtvpwPEwGcsEQLuv6At6GCDwoXYdEz" ] }, "sequence" : 4294967295 } ], "vout" : [ { "value" : 0.19950871, "scriptPubKey" : { "asm" : "OP_DUP OP_HASH160 c6b92e0b69d3a7aa53a28e2bc5a6de3f32fbff5a OP_EQUALVERIFY OP_CHECKSIG", "hex" : "76a914c6b92e0b69d3a7aa53a28e2bc5a6de3f32fbff5a88ac", "reqSigs" : 1, "type" : "pubkeyhash", "addresses" : [ "1K7kdWH4t2oetwtPEAzm7zFBnbUSjTWfd8" ] } } ], "blockhash" : "000000000000010c5ba86d05c6f43df46921d453d23fdafe85229f6a7d840e16", "confirmations" : 43, "time" : 1340614357 }
|
|
|
|