bitcoin-ruby 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +2 -0
  3. data/.travis.yml +2 -2
  4. data/COPYING +1 -1
  5. data/Gemfile +5 -11
  6. data/README.rdoc +11 -5
  7. data/Rakefile +5 -0
  8. data/bin/bitcoin_node +11 -29
  9. data/bin/bitcoin_node_cli +81 -0
  10. data/bin/bitcoin_wallet +9 -6
  11. data/doc/NODE.rdoc +79 -26
  12. data/examples/bbe_verify_tx.rb +1 -1
  13. data/examples/index_nhash.rb +24 -0
  14. data/examples/reindex_p2sh_addrs.rb +44 -0
  15. data/lib/bitcoin.rb +135 -20
  16. data/lib/bitcoin/builder.rb +233 -63
  17. data/lib/bitcoin/key.rb +89 -16
  18. data/lib/bitcoin/litecoin.rb +13 -11
  19. data/lib/bitcoin/namecoin.rb +5 -4
  20. data/lib/bitcoin/network/command_client.rb +23 -13
  21. data/lib/bitcoin/network/command_handler.rb +336 -131
  22. data/lib/bitcoin/network/connection_handler.rb +14 -13
  23. data/lib/bitcoin/network/node.rb +61 -20
  24. data/lib/bitcoin/protocol.rb +5 -1
  25. data/lib/bitcoin/protocol/block.rb +15 -3
  26. data/lib/bitcoin/protocol/parser.rb +3 -3
  27. data/lib/bitcoin/protocol/tx.rb +82 -20
  28. data/lib/bitcoin/protocol/txin.rb +7 -0
  29. data/lib/bitcoin/protocol/txout.rb +12 -9
  30. data/lib/bitcoin/script.rb +329 -75
  31. data/lib/bitcoin/storage/dummy/dummy_store.rb +23 -4
  32. data/lib/bitcoin/storage/models.rb +6 -11
  33. data/lib/bitcoin/storage/sequel/migrations/005_change_tx_hash_to_bytea.rb +14 -0
  34. data/lib/bitcoin/storage/sequel/migrations/006_add_tx_nhash.rb +31 -0
  35. data/lib/bitcoin/storage/sequel/migrations/007_add_prev_out_index_index.rb +16 -0
  36. data/lib/bitcoin/storage/sequel/migrations/008_add_txin_p2sh_type.rb +31 -0
  37. data/lib/bitcoin/storage/sequel/migrations/009_add_addrs_type.rb +56 -0
  38. data/lib/bitcoin/storage/sequel/sequel_store.rb +168 -70
  39. data/lib/bitcoin/storage/storage.rb +161 -97
  40. data/lib/bitcoin/storage/utxo/migrations/002_utxo.rb +1 -1
  41. data/lib/bitcoin/storage/utxo/migrations/004_add_addrs_type.rb +14 -0
  42. data/lib/bitcoin/storage/utxo/utxo_store.rb +25 -12
  43. data/lib/bitcoin/validation.rb +87 -56
  44. data/lib/bitcoin/version.rb +1 -1
  45. data/spec/bitcoin/bitcoin_spec.rb +38 -0
  46. data/spec/bitcoin/builder_spec.rb +177 -0
  47. data/spec/bitcoin/fixtures/litecoin-tx-f5aa30f574e3b6f1a3d99c07a6356ba812aabb9661e1d5f71edff828cbd5c996.json +259 -0
  48. data/spec/bitcoin/fixtures/rawblock-testnet-265322.bin +0 -0
  49. data/spec/bitcoin/fixtures/tx-0295028ef826b2a188409cb905b631faebb9bb3cdf14510571c5f4bd8591338f.json +64 -0
  50. data/spec/bitcoin/fixtures/tx-03339a725007a279484fb6f5361f522dd1cf4d0923d30e6b973290dba4275f92.json +64 -0
  51. data/spec/bitcoin/fixtures/tx-0ce7e5238fbdb6c086cf1b384b21b827e91cc23f360417265874a5a0d86ce367.json +64 -0
  52. data/spec/bitcoin/fixtures/tx-0ef34c49f630aea17df0080728b0fc67bf5f87fbda936934a4b11b4a69d7821e.json +64 -0
  53. data/spec/bitcoin/fixtures/tx-1129d2a8bd5bb3a81e54dc96a90f1f6b2544575748caa17243470935c5dd91b7.json +28 -0
  54. data/spec/bitcoin/fixtures/tx-19aa42fee0fa57c45d3b16488198b27caaacc4ff5794510d0c17f173f05587ff.json +23 -0
  55. data/spec/bitcoin/fixtures/tx-1a4f3b9dc4494aeedeb39f30dd37e60541b2abe3ed4977992017cc0ad4f44956.json +64 -0
  56. data/spec/bitcoin/fixtures/tx-1f9191dcf2b1844ca28c6ef4b969e1d5fab70a5e3c56b7007949e55851cb0c4f.json +64 -0
  57. data/spec/bitcoin/fixtures/tx-22cd5fef23684d7b304e119bedffde6f54538d3d54a5bfa237e20dc2d9b4b5ad.json +64 -0
  58. data/spec/bitcoin/fixtures/tx-2958fb00b4fd6fe0353503b886eb9a193d502f4fd5fc042d5e03216ba918bbd6.json +64 -0
  59. data/spec/bitcoin/fixtures/tx-29f277145749ad6efbed3ae6ce301f8d33c585ec26b7c044ad93c2f866e9e942.json +64 -0
  60. data/spec/bitcoin/fixtures/tx-2c5e5376c20e9cc78d0fb771730e5d840cc2096eff0ef045b599fe92475ace1c.json +28 -0
  61. data/spec/bitcoin/fixtures/tx-2c63aa814701cef5dbd4bbaddab3fea9117028f2434dddcdab8339141e9b14d1.json +30 -0
  62. data/spec/bitcoin/fixtures/tx-326882a7f22b5191f1a0cc9962ca4b878cd969cf3b3a70887aece4d801a0ba5e.json +23 -0
  63. data/spec/bitcoin/fixtures/tx-345bed8785c3282a264ffb0dbee61cde54854f10e16f1b3e75b7f2d9f62946f2.json +64 -0
  64. data/spec/bitcoin/fixtures/tx-39ba7440b7103557560cc8ce258009936796485aaf8b478e66ab4cb97c66e31b.json +32 -0
  65. data/spec/bitcoin/fixtures/tx-3a04d57a833367f1655cc5ec3beb587888ef4977a86caa8c8ad4ba7cc717eae7.json +64 -0
  66. data/spec/bitcoin/fixtures/tx-4142ee4877eb116abf955a7ec6ef2dc38133b793df762b76d75e3d7d4d8badc9.json +38 -0
  67. data/spec/bitcoin/fixtures/tx-46224764c7870f95b58f155bce1e38d4da8e99d42dbb632d0dd7c07e092ee5aa.json +23 -0
  68. data/spec/bitcoin/fixtures/tx-5df1375ffe61ac35ca178ebb0cab9ea26dedbd0e96005dfcee7e379fa513232f.json +30 -0
  69. data/spec/bitcoin/fixtures/tx-62d9a565bd7b5344c5352e3e9e5f40fa4bbd467fa19c87357216ec8777ba1cce.json +64 -0
  70. data/spec/bitcoin/fixtures/tx-6327783a064d4e350c454ad5cd90201aedf65b1fc524e73709c52f0163739190.json +23 -0
  71. data/spec/bitcoin/fixtures/tx-6606c366a487bff9e412d0b6c09c14916319932db5954bf5d8719f43f828a3ba.json +27 -0
  72. data/spec/bitcoin/fixtures/tx-6aaf18b9f1283b939d8e5d40ff5f8a435229f4178372659cc3a0bce4e262bf78.json +28 -0
  73. data/spec/bitcoin/fixtures/tx-6b48bba6f6d2286d7ec0883c0fc3085955090813a4c94980466611c798b868cc.json +64 -0
  74. data/spec/bitcoin/fixtures/tx-70cfbc6690f9ab46712db44e3079ac227962b2771a9341d4233d898b521619ef.json +40 -0
  75. data/spec/bitcoin/fixtures/tx-7a1a9db42f065f75110fcdb1bc415549c8ef7670417ba1d35a67f1b8adc562c1.json +64 -0
  76. data/spec/bitcoin/fixtures/tx-9a768fc7d0c4bdc86e25154357ef7c0063ca21310e5740a2f12f90b7455184a7.json +64 -0
  77. data/spec/bitcoin/fixtures/tx-9cad8d523a0694f2509d092c39cebc8046adae62b4e4297102d568191d9478d8.json +64 -0
  78. data/spec/bitcoin/fixtures/tx-9e052eb694bd7e15906433f064dff0161a12fd325c1124537766377004023c6f.json +64 -0
  79. data/spec/bitcoin/fixtures/tx-a955032f4d6b0c9bfe8cad8f00a8933790b9c1dc28c82e0f48e75b35da0e4944.json +23 -0
  80. data/spec/bitcoin/fixtures/tx-aab7ef280abbb9cc6fbaf524d2645c3daf4fcca2b3f53370e618d9cedf65f1f8.json +23 -0
  81. data/spec/bitcoin/fixtures/tx-ab9805c6d57d7070d9a42c5176e47bb705023e6b67249fb6760880548298e742.json +27 -0
  82. data/spec/bitcoin/fixtures/tx-ad4bcf3241e5d2ad140564e20db3567d41594cf4c2012433fe46a2b70e0d87b8.json +64 -0
  83. data/spec/bitcoin/fixtures/tx-b5b598de91787439afd5938116654e0b16b7a0d0f82742ba37564219c5afcbf9.json +27 -0
  84. data/spec/bitcoin/fixtures/tx-b8fd633e7713a43d5ac87266adc78444669b987a56b3a65fb92d58c2c4b0e84d.json +28 -0
  85. data/spec/bitcoin/fixtures/tx-bbca0628c42cb8bf7c3f4b2ad688fa56da5308dd2a10255da89fb1f46e6e413d.json +36 -0
  86. data/spec/bitcoin/fixtures/tx-bc7fd132fcf817918334822ee6d9bd95c889099c96e07ca2c1eb2cc70db63224.json +23 -0
  87. data/spec/bitcoin/fixtures/tx-c192b74844e4837a34c4a5a97b438f1c111405b01b99e2d12b7c96d07fc74c04.json +28 -0
  88. data/spec/bitcoin/fixtures/tx-e335562f7e297aadeed88e5954bc4eeb8dc00b31d829eedb232e39d672b0c009.json +406 -0
  89. data/spec/bitcoin/fixtures/tx-eb3b82c0884e3efa6d8b0be55b4915eb20be124c9766245bcc7f34fdac32bccb.json +35 -0
  90. data/spec/bitcoin/fixtures/tx-fee1b9b85531c8fb6cd7831f83490c7f2aa768b6eefe29854ef5e89ce7b9ecb1.json +64 -0
  91. data/spec/bitcoin/fixtures/txscript-invalid-too-many-sigops-followed-by-invalid-pushdata.bin +1 -0
  92. data/spec/bitcoin/helpers/fake_blockchain.rb +183 -0
  93. data/spec/bitcoin/key_spec.rb +79 -8
  94. data/spec/bitcoin/namecoin_spec.rb +1 -1
  95. data/spec/bitcoin/node/command_api_spec.rb +373 -86
  96. data/spec/bitcoin/performance/storage_spec.rb +41 -0
  97. data/spec/bitcoin/protocol/addr_spec.rb +7 -5
  98. data/spec/bitcoin/protocol/aux_pow_spec.rb +1 -0
  99. data/spec/bitcoin/protocol/block_spec.rb +6 -0
  100. data/spec/bitcoin/protocol/tx_spec.rb +184 -1
  101. data/spec/bitcoin/protocol/txin_spec.rb +27 -0
  102. data/spec/bitcoin/protocol/txout_spec.rb +27 -0
  103. data/spec/bitcoin/script/opcodes_spec.rb +74 -3
  104. data/spec/bitcoin/script/script_spec.rb +271 -0
  105. data/spec/bitcoin/spec_helper.rb +34 -6
  106. data/spec/bitcoin/storage/models_spec.rb +104 -0
  107. data/spec/bitcoin/storage/reorg_spec.rb +42 -11
  108. data/spec/bitcoin/storage/storage_spec.rb +58 -15
  109. data/spec/bitcoin/storage/validation_spec.rb +44 -14
  110. data/spec/bitcoin/wallet/keygenerator_spec.rb +6 -3
  111. data/spec/bitcoin/wallet/keystore_spec.rb +3 -3
  112. data/spec/bitcoin/wallet/wallet_spec.rb +87 -89
  113. metadata +117 -11
@@ -0,0 +1,259 @@
1
+ {
2
+ "hash":"f5aa30f574e3b6f1a3d99c07a6356ba812aabb9661e1d5f71edff828cbd5c996",
3
+ "ver":1,
4
+ "vin_sz":1,
5
+ "vout_sz":60,
6
+ "lock_time":0,
7
+ "size":2229,
8
+ "in":[
9
+ {
10
+ "prev_out":{
11
+ "hash":"4c5d9aefe92859838a26a008055789efc62bf2cf0dfab2049f8c1b61bb61a485",
12
+ "n":10
13
+ },
14
+ "scriptSig":"304402205226e7c5ea00fb05d44918c95533c762f49e2b44846b50a4787c22ff72da7d14022054ea822c28041be8b4349c6d91a6f839992d7e1262910d24d7efc8192b60136301 041b7b0eb886113efb887da81aa99bd6dab74501829801bf4286120fbc9f87ee904ba027cdd852c49e14ba86e88bc2d382d51a44c2d31177017474c168a6c595b7"
15
+ }
16
+ ],
17
+ "out":[
18
+ {
19
+ "value":"0.00000001",
20
+ "scriptPubKey":"OP_DUP OP_HASH160 9c317d7946c494b77c26cd8520550838212b8285 OP_EQUALVERIFY OP_CHECKSIG"
21
+ },
22
+ {
23
+ "value":"0.00000001",
24
+ "scriptPubKey":"OP_DUP OP_HASH160 dc9b30a35c9285e3f2748b1dafb34542e6226726 OP_EQUALVERIFY OP_CHECKSIG"
25
+ },
26
+ {
27
+ "value":"0.00000001",
28
+ "scriptPubKey":"OP_DUP OP_HASH160 6ccc69636ae9b61cdb645fb6486a08d0bc39533e OP_EQUALVERIFY OP_CHECKSIG"
29
+ },
30
+ {
31
+ "value":"0.00000001",
32
+ "scriptPubKey":"OP_DUP OP_HASH160 3f088b5415d621d7ec69fd2e877e01429ebb8867 OP_EQUALVERIFY OP_CHECKSIG"
33
+ },
34
+ {
35
+ "value":"0.00000001",
36
+ "scriptPubKey":"OP_DUP OP_HASH160 80c9307560878061a09fde5ab2e8deecb99e04c6 OP_EQUALVERIFY OP_CHECKSIG"
37
+ },
38
+ {
39
+ "value":"0.00000001",
40
+ "scriptPubKey":"OP_DUP OP_HASH160 e26241f45f3a92ea34788307f150da9ce6c1da00 OP_EQUALVERIFY OP_CHECKSIG"
41
+ },
42
+ {
43
+ "value":"0.00000001",
44
+ "scriptPubKey":"OP_DUP OP_HASH160 995b4d20369d859ea5c4b53a9f5e7739ab0d3489 OP_EQUALVERIFY OP_CHECKSIG"
45
+ },
46
+ {
47
+ "value":"0.00000001",
48
+ "scriptPubKey":"OP_DUP OP_HASH160 b7d53b19bf5523f542f4a40e314d050977047d3b OP_EQUALVERIFY OP_CHECKSIG"
49
+ },
50
+ {
51
+ "value":"0.00000001",
52
+ "scriptPubKey":"OP_DUP OP_HASH160 22b871b7852c70c452e0b395b4a694ff957e2165 OP_EQUALVERIFY OP_CHECKSIG"
53
+ },
54
+ {
55
+ "value":"0.00000001",
56
+ "scriptPubKey":"OP_DUP OP_HASH160 c0bed86ef4813cee5d8eb5a82b18f9c369d65a49 OP_EQUALVERIFY OP_CHECKSIG"
57
+ },
58
+ {
59
+ "value":"0.00000001",
60
+ "scriptPubKey":"OP_DUP OP_HASH160 c8c562956753eb8542bef38a2c385738757aa1d2 OP_EQUALVERIFY OP_CHECKSIG"
61
+ },
62
+ {
63
+ "value":"0.00000001",
64
+ "scriptPubKey":"OP_DUP OP_HASH160 f2ecaab9ac2c55b9e82da5bb320f9cb64706410b OP_EQUALVERIFY OP_CHECKSIG"
65
+ },
66
+ {
67
+ "value":"0.00000001",
68
+ "scriptPubKey":"OP_DUP OP_HASH160 d39ed4b9f3f6a64624bf95dca1fe24fef4b9f4d5 OP_EQUALVERIFY OP_CHECKSIG"
69
+ },
70
+ {
71
+ "value":"0.00000001",
72
+ "scriptPubKey":"OP_DUP OP_HASH160 838fb8321d6232589dbcec642f75f0932757f366 OP_EQUALVERIFY OP_CHECKSIG"
73
+ },
74
+ {
75
+ "value":"0.00000001",
76
+ "scriptPubKey":"OP_DUP OP_HASH160 c77f1e37e0a1eb86a0bc0efc31a042e165da50ed OP_EQUALVERIFY OP_CHECKSIG"
77
+ },
78
+ {
79
+ "value":"0.00000001",
80
+ "scriptPubKey":"OP_DUP OP_HASH160 8bb44e6c2750b8ceeeb1950cd2c4cd84cda42d79 OP_EQUALVERIFY OP_CHECKSIG"
81
+ },
82
+ {
83
+ "value":"0.00000001",
84
+ "scriptPubKey":"OP_DUP OP_HASH160 301d169654943f0e55c501169d164fbb513a9d53 OP_EQUALVERIFY OP_CHECKSIG"
85
+ },
86
+ {
87
+ "value":"0.00000001",
88
+ "scriptPubKey":"OP_DUP OP_HASH160 c137552e895aa7c81e5791d2120281253869ccdc OP_EQUALVERIFY OP_CHECKSIG"
89
+ },
90
+ {
91
+ "value":"0.00000001",
92
+ "scriptPubKey":"OP_DUP OP_HASH160 4b69bee05c03c7de824786ee681a8831a4f09594 OP_EQUALVERIFY OP_CHECKSIG"
93
+ },
94
+ {
95
+ "value":"0.00000001",
96
+ "scriptPubKey":"OP_DUP OP_HASH160 e6a893bc30926d05c654278638ce6cb49096f862 OP_EQUALVERIFY OP_CHECKSIG"
97
+ },
98
+ {
99
+ "value":"0.00000001",
100
+ "scriptPubKey":"OP_DUP OP_HASH160 d74fdc8bab1e811cd7f25ff33da3e6ab892dd93c OP_EQUALVERIFY OP_CHECKSIG"
101
+ },
102
+ {
103
+ "value":"0.00000001",
104
+ "scriptPubKey":"OP_DUP OP_HASH160 c9506100c11fdb0cc877c02d2dde7f7f1546bcee OP_EQUALVERIFY OP_CHECKSIG"
105
+ },
106
+ {
107
+ "value":"0.00000001",
108
+ "scriptPubKey":"OP_DUP OP_HASH160 725aa8837c880be93f068595a0d7f268bcd31474 OP_EQUALVERIFY OP_CHECKSIG"
109
+ },
110
+ {
111
+ "value":"0.00000001",
112
+ "scriptPubKey":"OP_DUP OP_HASH160 34059c6c9e6bad320c6b77a08cee22f0778cbdf8 OP_EQUALVERIFY OP_CHECKSIG"
113
+ },
114
+ {
115
+ "value":"0.00000001",
116
+ "scriptPubKey":"OP_DUP OP_HASH160 b12fd53e62323483dfc129770f0310e86e6417a1 OP_EQUALVERIFY OP_CHECKSIG"
117
+ },
118
+ {
119
+ "value":"0.00000001",
120
+ "scriptPubKey":"OP_DUP OP_HASH160 f627d1f37fc0e487cfd49aa8757b5c1ffccf9cf9 OP_EQUALVERIFY OP_CHECKSIG"
121
+ },
122
+ {
123
+ "value":"0.00000001",
124
+ "scriptPubKey":"OP_DUP OP_HASH160 7499b341fe54e5ac195ca1920292d4c80bd88e61 OP_EQUALVERIFY OP_CHECKSIG"
125
+ },
126
+ {
127
+ "value":"0.00000001",
128
+ "scriptPubKey":"OP_DUP OP_HASH160 3c0141727479bbf70c9fa2636d13ee7c72d17353 OP_EQUALVERIFY OP_CHECKSIG"
129
+ },
130
+ {
131
+ "value":"0.00000001",
132
+ "scriptPubKey":"OP_DUP OP_HASH160 b7e9312094b36ccd826cb555ef9c73125b6d7977 OP_EQUALVERIFY OP_CHECKSIG"
133
+ },
134
+ {
135
+ "value":"0.00000001",
136
+ "scriptPubKey":"OP_DUP OP_HASH160 17395912429bd6a32e8c3ec53d94d50199ff2aa0 OP_EQUALVERIFY OP_CHECKSIG"
137
+ },
138
+ {
139
+ "value":"0.00000001",
140
+ "scriptPubKey":"OP_DUP OP_HASH160 01617b83d2795845762b1b4231a728108ca73c9f OP_EQUALVERIFY OP_CHECKSIG"
141
+ },
142
+ {
143
+ "value":"0.00000001",
144
+ "scriptPubKey":"OP_DUP OP_HASH160 e1010cf848081dfd9b0941eb9c0f2c4c95180517 OP_EQUALVERIFY OP_CHECKSIG"
145
+ },
146
+ {
147
+ "value":"0.00000001",
148
+ "scriptPubKey":"OP_DUP OP_HASH160 39bfffed082c718c4c80f7c670b2704d4eddd2b5 OP_EQUALVERIFY OP_CHECKSIG"
149
+ },
150
+ {
151
+ "value":"0.00000001",
152
+ "scriptPubKey":"OP_DUP OP_HASH160 f5cf90929114ae6a29256c6ad44c9e1899ee0e6c OP_EQUALVERIFY OP_CHECKSIG"
153
+ },
154
+ {
155
+ "value":"0.00000001",
156
+ "scriptPubKey":"OP_DUP OP_HASH160 cb9248b0b8328790b0cdcbc8f035fbc52296f713 OP_EQUALVERIFY OP_CHECKSIG"
157
+ },
158
+ {
159
+ "value":"0.00000001",
160
+ "scriptPubKey":"OP_DUP OP_HASH160 93816a6dccad04cded39576abe969ba6cb00e8b3 OP_EQUALVERIFY OP_CHECKSIG"
161
+ },
162
+ {
163
+ "value":"0.00000001",
164
+ "scriptPubKey":"OP_DUP OP_HASH160 2c1fdea6e0f2fd5b6fa5491a100ec0e9dbf7eb26 OP_EQUALVERIFY OP_CHECKSIG"
165
+ },
166
+ {
167
+ "value":"0.00000001",
168
+ "scriptPubKey":"OP_DUP OP_HASH160 0f4a7ed7eed7bfc5ba39caee3382a48d72f48e17 OP_EQUALVERIFY OP_CHECKSIG"
169
+ },
170
+ {
171
+ "value":"0.00000001",
172
+ "scriptPubKey":"OP_DUP OP_HASH160 cb918b554cea141e8e7e1bf9fdb7f6fac6767651 OP_EQUALVERIFY OP_CHECKSIG"
173
+ },
174
+ {
175
+ "value":"0.00000001",
176
+ "scriptPubKey":"OP_DUP OP_HASH160 57757f76b2737d8dc33db75c2eeee7fd0763fbdb OP_EQUALVERIFY OP_CHECKSIG"
177
+ },
178
+ {
179
+ "value":"0.00000001",
180
+ "scriptPubKey":"OP_DUP OP_HASH160 17123160e4f6b5e5cc2763381964b010e48a0722 OP_EQUALVERIFY OP_CHECKSIG"
181
+ },
182
+ {
183
+ "value":"0.00000001",
184
+ "scriptPubKey":"OP_DUP OP_HASH160 4eda95169fb37e1950400350bcab01792d15e8e5 OP_EQUALVERIFY OP_CHECKSIG"
185
+ },
186
+ {
187
+ "value":"0.00000001",
188
+ "scriptPubKey":"OP_DUP OP_HASH160 410343c9d6b3db019ce9ff1b0bfc140b8db2055a OP_EQUALVERIFY OP_CHECKSIG"
189
+ },
190
+ {
191
+ "value":"0.00000001",
192
+ "scriptPubKey":"OP_DUP OP_HASH160 864014bd97fbec5400ea582f3489c1fa1a2ca959 OP_EQUALVERIFY OP_CHECKSIG"
193
+ },
194
+ {
195
+ "value":"0.00000001",
196
+ "scriptPubKey":"OP_DUP OP_HASH160 297c3ad7928e16c25f6b9d58f6a9d0c92db25037 OP_EQUALVERIFY OP_CHECKSIG"
197
+ },
198
+ {
199
+ "value":"0.00000001",
200
+ "scriptPubKey":"OP_DUP OP_HASH160 97419d3fc3ea2bf1f3d0478b52b754f5b7587955 OP_EQUALVERIFY OP_CHECKSIG"
201
+ },
202
+ {
203
+ "value":"0.00000001",
204
+ "scriptPubKey":"OP_DUP OP_HASH160 3106a797094c4e82b3b384703e319a98086a8d1e OP_EQUALVERIFY OP_CHECKSIG"
205
+ },
206
+ {
207
+ "value":"0.00000001",
208
+ "scriptPubKey":"OP_DUP OP_HASH160 99ee67a922b84eb78d29e8d9518624c842ad4efd OP_EQUALVERIFY OP_CHECKSIG"
209
+ },
210
+ {
211
+ "value":"0.00000001",
212
+ "scriptPubKey":"OP_DUP OP_HASH160 c35c507a82290462fab36103295d40c65c9e9453 OP_EQUALVERIFY OP_CHECKSIG"
213
+ },
214
+ {
215
+ "value":"0.00000001",
216
+ "scriptPubKey":"OP_DUP OP_HASH160 9c4527d9c353c839ef220a4d3bb892165595d082 OP_EQUALVERIFY OP_CHECKSIG"
217
+ },
218
+ {
219
+ "value":"0.00000001",
220
+ "scriptPubKey":"OP_DUP OP_HASH160 690ac5733bba51b6298a0183173bf22da26ba3bc OP_EQUALVERIFY OP_CHECKSIG"
221
+ },
222
+ {
223
+ "value":"0.00000001",
224
+ "scriptPubKey":"OP_DUP OP_HASH160 c3bb38d41f3637b374ba00cc79349a9029b1b436 OP_EQUALVERIFY OP_CHECKSIG"
225
+ },
226
+ {
227
+ "value":"0.00000001",
228
+ "scriptPubKey":"OP_DUP OP_HASH160 39379245b5870825112fc43910aa519d3e182f5d OP_EQUALVERIFY OP_CHECKSIG"
229
+ },
230
+ {
231
+ "value":"0.00000001",
232
+ "scriptPubKey":"OP_DUP OP_HASH160 3f026520abac39c0fb49bda19bfbabe7db1b9506 OP_EQUALVERIFY OP_CHECKSIG"
233
+ },
234
+ {
235
+ "value":"2.58294303",
236
+ "scriptPubKey":"OP_DUP OP_HASH160 25df43d9390195427d7d08bcadb01cff92e5feae OP_EQUALVERIFY OP_CHECKSIG"
237
+ },
238
+ {
239
+ "value":"0.00000001",
240
+ "scriptPubKey":"OP_DUP OP_HASH160 2281358df82a3ba3a023ae9967d762a2f3ddb745 OP_EQUALVERIFY OP_CHECKSIG"
241
+ },
242
+ {
243
+ "value":"0.00000001",
244
+ "scriptPubKey":"OP_DUP OP_HASH160 04a2135d2d447ce55d03f5a3f9e27c954ec2e7e6 OP_EQUALVERIFY OP_CHECKSIG"
245
+ },
246
+ {
247
+ "value":"0.00000001",
248
+ "scriptPubKey":"OP_DUP OP_HASH160 908173a3e0f1c080d77521d49c7005bde8026cbb OP_EQUALVERIFY OP_CHECKSIG"
249
+ },
250
+ {
251
+ "value":"0.00000001",
252
+ "scriptPubKey":"OP_DUP OP_HASH160 013a5d87461cb60aaa39231f3d1a38fa0a0f53de OP_EQUALVERIFY OP_CHECKSIG"
253
+ },
254
+ {
255
+ "value":"0.00000001",
256
+ "scriptPubKey":"OP_DUP OP_HASH160 7b1268b8e0097f5b5ba68242c663c0b4472a36bb OP_EQUALVERIFY OP_CHECKSIG"
257
+ }
258
+ ]
259
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "hash": "0295028ef826b2a188409cb905b631faebb9bb3cdf14510571c5f4bd8591338f",
3
+ "ver": 1,
4
+ "vin_sz": 1,
5
+ "vout_sz": 11,
6
+ "lock_time": 0,
7
+ "size": 444,
8
+ "in": [
9
+ {
10
+ "prev_out": {
11
+ "hash": "fee1b9b85531c8fb6cd7831f83490c7f2aa768b6eefe29854ef5e89ce7b9ecb1",
12
+ "n": 7
13
+ },
14
+ "scriptSig": "304502204c22de00f0cb984cea5a12f0a141fbe94848aaf1caac795c27e261e31c6bd8dd022100be78e7a068395f645da0fdc81a37f22ae047983bbad5b435a1c461f40efef94601 047e6028700e75da5d9531a84e50818d9b0a9e1dd69ebd963d2e9beb45ac960f6201893ebecfe1017eedaddbbda522e2ded8dbd38f0fc4b3fba9f1549e9f392d8c"
15
+ }
16
+ ],
17
+ "out": [
18
+ {
19
+ "value": "3.74500000",
20
+ "scriptPubKey": "OP_DUP OP_HASH160 5b454dc6daa0aedc28e7625532f7a2946f4a5df6 OP_EQUALVERIFY OP_CHECKSIG"
21
+ },
22
+ {
23
+ "value": "0.10100000",
24
+ "scriptPubKey": "64 OP_EQUAL"
25
+ },
26
+ {
27
+ "value": "0.01100000",
28
+ "scriptPubKey": "OP_SIZE 3 OP_EQUAL"
29
+ },
30
+ {
31
+ "value": "0.04100000",
32
+ "scriptPubKey": "OP_DUP OP_HASH256 OP_SWAP OP_SHA256 OP_SHA256 OP_EQUAL"
33
+ },
34
+ {
35
+ "value": "0.03100000",
36
+ "scriptPubKey": "2 OP_PICK 0:1:16 OP_EQUALVERIFY OP_DEPTH 3 OP_EQUAL"
37
+ },
38
+ {
39
+ "value": "0.05100000",
40
+ "scriptPubKey": "417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a272045515541 OP_EQUAL"
41
+ },
42
+ {
43
+ "value": "0.09100000",
44
+ "scriptPubKey": "OP_SIZE 1a OP_EQUAL"
45
+ },
46
+ {
47
+ "value": "0.06100000",
48
+ "scriptPubKey": "OP_3DUP OP_DEPTH 7 OP_EQUALVERIFY OP_ADD OP_ADD 3 OP_EQUALVERIFY OP_2DROP 0 OP_EQUALVERIFY"
49
+ },
50
+ {
51
+ "value": "0.08100000",
52
+ "scriptPubKey": "ffffffff OP_NUMEQUAL"
53
+ },
54
+ {
55
+ "value": "0.07100000",
56
+ "scriptPubKey": "OP_IF 1 OP_ENDIF"
57
+ },
58
+ {
59
+ "value": "0.02100000",
60
+ "scriptPubKey": "2 OP_EQUAL"
61
+ }
62
+ ],
63
+ "nid": "787cd80f9826d914d452369fe95dd89c772300ba213a4a7cfe919595231e4a2f"
64
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "hash": "03339a725007a279484fb6f5361f522dd1cf4d0923d30e6b973290dba4275f92",
3
+ "ver": 1,
4
+ "vin_sz": 1,
5
+ "vout_sz": 11,
6
+ "lock_time": 0,
7
+ "size": 477,
8
+ "in": [
9
+ {
10
+ "prev_out": {
11
+ "hash": "0f804b7d5ae0580332b09223d65252720c6679e311ddaad7f8cc192021437c48",
12
+ "n": 0
13
+ },
14
+ "scriptSig": "304602210082d6107534a228e5c93fd35e00a073df9ce1110a00d7e96a02db8f71753edde70221009591f5719b47c74eece74807d0718d5197773c6b247e3f75dfb9900851beef4501 04b3d0946bacbda749d5aff49c63d8f951f075952b9310405c37e275d48b72d2c25cc1287ba583b5f38bdcd3957bae4d0207022b5f13caee20c4a8f95f291ccdf8"
15
+ }
16
+ ],
17
+ "out": [
18
+ {
19
+ "value": "0.05100000",
20
+ "scriptPubKey": "OP_OVER OP_DEPTH 3 OP_EQUALVERIFY"
21
+ },
22
+ {
23
+ "value": "7.66850000",
24
+ "scriptPubKey": "OP_DUP OP_HASH160 ab3472a01e00316f7ef3391ecc49bdcd0e1e8c3d OP_EQUALVERIFY OP_CHECKSIG"
25
+ },
26
+ {
27
+ "value": "0.03100000",
28
+ "scriptPubKey": "676176696e5f7761735f686572652720455155414c5645524946592031312045515541 OP_EQUALVERIFY 11 OP_EQUAL"
29
+ },
30
+ {
31
+ "value": "0.06100000",
32
+ "scriptPubKey": "OP_IF ba OP_ELSE 1 OP_ENDIF"
33
+ },
34
+ {
35
+ "value": "0.07100000",
36
+ "scriptPubKey": "OP_NOTIF OP_IF 1 OP_ELSE 0 OP_ENDIF OP_ENDIF"
37
+ },
38
+ {
39
+ "value": "0.01100000",
40
+ "scriptPubKey": "0 OP_PICK 0:1:14 OP_EQUALVERIFY OP_DEPTH 3 OP_EQUAL"
41
+ },
42
+ {
43
+ "value": "0.04100000",
44
+ "scriptPubKey": "64 OP_EQUAL"
45
+ },
46
+ {
47
+ "value": "0.09100000",
48
+ "scriptPubKey": "OP_SIZE 2 OP_EQUAL"
49
+ },
50
+ {
51
+ "value": "0.02100000",
52
+ "scriptPubKey": "OP_DUP OP_HASH160 OP_SWAP OP_SHA256 OP_RIPEMD160 OP_EQUAL"
53
+ },
54
+ {
55
+ "value": "0.10100000",
56
+ "scriptPubKey": "417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a272045515541 OP_EQUAL"
57
+ },
58
+ {
59
+ "value": "0.08100000",
60
+ "scriptPubKey": "11 OP_EQUAL"
61
+ }
62
+ ],
63
+ "nid": "942c7f5e067ce28fc6069caa6fb92361f07a17902f5efd39356d91fe76ca575e"
64
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "hash": "0ce7e5238fbdb6c086cf1b384b21b827e91cc23f360417265874a5a0d86ce367",
3
+ "ver": 1,
4
+ "vin_sz": 1,
5
+ "vout_sz": 11,
6
+ "lock_time": 0,
7
+ "size": 359,
8
+ "in": [
9
+ {
10
+ "prev_out": {
11
+ "hash": "03339a725007a279484fb6f5361f522dd1cf4d0923d30e6b973290dba4275f92",
12
+ "n": 1
13
+ },
14
+ "scriptSig": "3045022024c5ec0754e8f3e597072ba0c11731594b9f32ca5da14f9ea6bcb6f6cdd46be8022100c372744afcecc42b8c3c90edd9dc4742d7326a328771dda298cde8e3b47d245e01 049c4c8abc3e359c2bba72666666f15460a8b5964c82b1426499ca4268cba4e89598ac4150fcd33deb76f5841a419f8a36e76324ef239eaf992104adcc88d9d9e5"
15
+ }
16
+ ],
17
+ "out": [
18
+ {
19
+ "value": "0.05100000",
20
+ "scriptPubKey": "OP_NUMEQUAL"
21
+ },
22
+ {
23
+ "value": "0.09100000",
24
+ "scriptPubKey": "1 OP_ROLL 0:1:15 OP_EQUALVERIFY OP_DEPTH 2 OP_EQUAL"
25
+ },
26
+ {
27
+ "value": "0.03100000",
28
+ "scriptPubKey": "OP_2OVER OP_ADD OP_ADD 8 OP_EQUALVERIFY OP_ADD OP_ADD 6 OP_EQUAL"
29
+ },
30
+ {
31
+ "value": "0.10100000",
32
+ "scriptPubKey": "OP_NOTIF OP_IF 1 OP_ELSE 0 OP_ENDIF OP_ENDIF"
33
+ },
34
+ {
35
+ "value": "0.02100000",
36
+ "scriptPubKey": "OP_DUP 1 OP_ADD 1 OP_EQUALVERIFY 0 OP_EQUAL"
37
+ },
38
+ {
39
+ "value": "0.08100000",
40
+ "scriptPubKey": "OP_ROT OP_ROT 0:1:15 OP_EQUAL"
41
+ },
42
+ {
43
+ "value": "7.10800000",
44
+ "scriptPubKey": "OP_DUP OP_HASH160 4150837fb91d9461d6b95059842ab85262c2923f OP_EQUALVERIFY OP_CHECKSIG"
45
+ },
46
+ {
47
+ "value": "0.06100000",
48
+ "scriptPubKey": "OP_IF OP_ELSE 1 OP_ENDIF"
49
+ },
50
+ {
51
+ "value": "0.04100000",
52
+ "scriptPubKey": "7 OP_EQUAL"
53
+ },
54
+ {
55
+ "value": "0.01100000",
56
+ "scriptPubKey": "OP_NOT"
57
+ },
58
+ {
59
+ "value": "0.07100000",
60
+ "scriptPubKey": "OP_NOP"
61
+ }
62
+ ],
63
+ "nid": "5fe03c76c975d81845ceaccd93ed59ec88223771f0e64e67095b4a6913340792"
64
+ }