bitcoin-ruby 0.0.14 → 0.0.15
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +4 -3
- data/COPYING +1 -1
- data/Gemfile.lock +1 -1
- data/README.rdoc +11 -29
- data/lib/bitcoin.rb +83 -11
- data/lib/bitcoin/bech32.rb +172 -0
- data/lib/bitcoin/builder.rb +25 -7
- data/lib/bitcoin/ffi/secp256k1.rb +12 -12
- data/lib/bitcoin/protocol/txout.rb +7 -1
- data/lib/bitcoin/script.rb +25 -8
- data/lib/bitcoin/version.rb +1 -1
- data/spec/bitcoin/bech32_spec.rb +160 -0
- data/spec/bitcoin/bitcoin_spec.rb +60 -0
- data/spec/bitcoin/builder_spec.rb +33 -0
- data/spec/bitcoin/fixtures/base58_keys_invalid.json +182 -0
- data/spec/bitcoin/fixtures/base58_keys_valid.json +488 -0
- data/spec/bitcoin/protocol/txout_spec.rb +6 -0
- data/spec/bitcoin/script/script_spec.rb +4 -0
- data/spec/bitcoin/secp256k1_spec.rb +1 -1
- metadata +9 -2
@@ -90,6 +90,8 @@ describe 'Bitcoin Address/Hash160/PubKey' do
|
|
90
90
|
.should == "00000090c66372823859c935149e2e32d276a1e6"
|
91
91
|
Bitcoin.hash160_from_address("1111136sgL8UNSTVL9ize2uGFPxFDGwFp")
|
92
92
|
.should == "0000000096d3ad65d030a36e2c23f7fdd5dfcadb"
|
93
|
+
Bitcoin.hash160_from_address("bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4")
|
94
|
+
.should == "751e76e8199196d454941c45d1b3a323f1433bd6"
|
93
95
|
end
|
94
96
|
|
95
97
|
it 'should survive rounds of hash160 <-> address' do
|
@@ -187,6 +189,9 @@ describe 'Bitcoin Address/Hash160/PubKey' do
|
|
187
189
|
Bitcoin.address_type("3CkxTG25waxsmd13FFgRChPuGYba3ar36B").should == :p2sh
|
188
190
|
Bitcoin.address_type("1D3KpY5kXnYhTbdCbZ9kXb2ZY7ZapD85cW").should == :hash160
|
189
191
|
Bitcoin.address_type("mpXwg4jMtRhuSpVq4xS3HFHmCmWp9NyGKt").should == nil
|
192
|
+
Bitcoin.address_type("bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4").should == :witness_v0_keyhash
|
193
|
+
Bitcoin.address_type("bc1qw508d6qejxtdg4y5r3zarvayr0c5xw7kv8f3t4").should == nil
|
194
|
+
Bitcoin.address_type("bc1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3qccfmv3").should == :witness_v0_scripthash
|
190
195
|
end
|
191
196
|
|
192
197
|
it 'Bitcoin#checksum' do
|
@@ -561,6 +566,61 @@ describe 'Bitcoin Address/Hash160/PubKey' do
|
|
561
566
|
}.should == [ 5000000000, 5000000000, 2500000000, 2500000000, 1250000000, 19531250 ]
|
562
567
|
end
|
563
568
|
|
569
|
+
# Port of Bitcoin Core test vectors.
|
570
|
+
# https://github.com/bitcoin/bitcoin/blob/595a7bab23bc21049526229054ea1fff1a29c0bf/src/test/base58_tests.cpp#L139
|
571
|
+
it "valid address JSON tests" do
|
572
|
+
restore_network = Bitcoin.network_name
|
573
|
+
|
574
|
+
test_cases = JSON.parse(fixtures_file('base58_keys_valid.json'))
|
575
|
+
test_cases.each do |test_case|
|
576
|
+
# Single element arrays in tests are comments.
|
577
|
+
next if test_case.length == 1
|
578
|
+
|
579
|
+
address = test_case[0]
|
580
|
+
script = test_case[1].htb
|
581
|
+
is_privkey = test_case[2].fetch('isPrivkey')
|
582
|
+
is_swapcase_valid = test_case[2].fetch('tryCaseFlip', false)
|
583
|
+
|
584
|
+
Bitcoin.network =
|
585
|
+
case test_case[2].fetch('chain').to_sym
|
586
|
+
when :main then :bitcoin
|
587
|
+
when :test then :testnet3
|
588
|
+
when :regtest then :regtest
|
589
|
+
end
|
590
|
+
|
591
|
+
# This spec only tests address generation, not base58 private key encoding
|
592
|
+
next if is_privkey
|
593
|
+
|
594
|
+
computed_script = Bitcoin::Script.to_address_script(address)
|
595
|
+
computed_script.should == script
|
596
|
+
|
597
|
+
Bitcoin.valid_address?(address.swapcase).should == is_swapcase_valid
|
598
|
+
|
599
|
+
computed_address = Bitcoin::Script.new(script).get_address
|
600
|
+
computed_address.should == address
|
601
|
+
end
|
602
|
+
|
603
|
+
Bitcoin.network = restore_network
|
604
|
+
end
|
605
|
+
|
606
|
+
# Port of Bitcoin Core test vectors.
|
607
|
+
# https://github.com/bitcoin/bitcoin/blob/595a7bab23bc21049526229054ea1fff1a29c0bf/src/test/base58_tests.cpp#L179
|
608
|
+
it "invalid address JSON tests" do
|
609
|
+
restore_network = Bitcoin.network_name
|
610
|
+
|
611
|
+
test_cases = JSON.parse(fixtures_file('base58_keys_invalid.json'))
|
612
|
+
test_cases.each do |test_case|
|
613
|
+
address = test_case[0]
|
614
|
+
|
615
|
+
%i(bitcoin testnet3 regtest).each do |network_name|
|
616
|
+
Bitcoin.network = network_name
|
617
|
+
|
618
|
+
Bitcoin.valid_address?(address).should == false
|
619
|
+
end
|
620
|
+
end
|
621
|
+
|
622
|
+
Bitcoin.network = restore_network
|
623
|
+
end
|
564
624
|
end
|
565
625
|
|
566
626
|
|
@@ -339,4 +339,37 @@ describe "Bitcoin::Builder" do
|
|
339
339
|
tx2.verify_input_signature(0, tx1).should == true
|
340
340
|
end
|
341
341
|
|
342
|
+
it "should build and sign bcash transaction" do
|
343
|
+
tx = build_tx do |t|
|
344
|
+
t.input do |i|
|
345
|
+
prev_tx = @block.tx[0]
|
346
|
+
utxo = prev_tx.out[0]
|
347
|
+
i.prev_out prev_tx.hash, 0, utxo.script, utxo.amount, 0
|
348
|
+
i.signature_key @keys[0]
|
349
|
+
end
|
350
|
+
|
351
|
+
t.output do |o|
|
352
|
+
o.value 4999900000
|
353
|
+
|
354
|
+
o.script do |s|
|
355
|
+
s.type :address
|
356
|
+
s.recipient @keys[1].addr
|
357
|
+
end
|
358
|
+
end
|
359
|
+
end
|
360
|
+
|
361
|
+
tx.in[0].prev_out.reverse_hth.should == block.tx[0].hash
|
362
|
+
tx.in[0].prev_out_index.should == 0
|
363
|
+
Bitcoin::Script.new(tx.in[0].script_sig).chunks[1].unpack("H*")[0].should == @keys[0].pub
|
364
|
+
tx.out[0].value.should == 4999900000
|
365
|
+
|
366
|
+
script = Bitcoin::Script.new(tx.out[0].pk_script)
|
367
|
+
script.type.should == :hash160
|
368
|
+
script.get_address.should == @keys[1].addr
|
369
|
+
|
370
|
+
tx.verify_input_signature(0, block.tx[0], Time.now.to_i, {fork_id: 0}).should == true
|
371
|
+
Bitcoin::Script.new(tx.out[0].pk_script).to_string.should ==
|
372
|
+
"OP_DUP OP_HASH160 #{@keys[1].hash160} OP_EQUALVERIFY OP_CHECKSIG"
|
373
|
+
end
|
374
|
+
|
342
375
|
end
|
@@ -0,0 +1,182 @@
|
|
1
|
+
[
|
2
|
+
[
|
3
|
+
""
|
4
|
+
],
|
5
|
+
[
|
6
|
+
"x"
|
7
|
+
],
|
8
|
+
[
|
9
|
+
"37qgekLpCCHrQuSjvX3fs496FWTGsHFHizjJAs6NPcR47aefnnCWECAhHV6E3g4YN7u7Yuwod5Y"
|
10
|
+
],
|
11
|
+
[
|
12
|
+
"dzb7VV1Ui55BARxv7ATxAtCUeJsANKovDGWFVgpTbhq9gvPqP3yv"
|
13
|
+
],
|
14
|
+
[
|
15
|
+
"MuNu7ZAEDFiHthiunm7dPjwKqrVNCM3mAz6rP9zFveQu14YA8CxExSJTHcVP9DErn6u84E6Ej7S"
|
16
|
+
],
|
17
|
+
[
|
18
|
+
"rPpQpYknyNQ5AEHuY6H8ijJJrYc2nDKKk9jjmKEXsWzyAQcFGpDLU2Zvsmoi8JLR7hAwoy3RQWf"
|
19
|
+
],
|
20
|
+
[
|
21
|
+
"4Uc3FmN6NQ6zLBK5QQBXRBUREaaHwCZYsGCueHauuDmJpZKn6jkEskMB2Zi2CNgtb5r6epWEFfUJq"
|
22
|
+
],
|
23
|
+
[
|
24
|
+
"7aQgR5DFQ25vyXmqZAWmnVCjL3PkBcdVkBUpjrjMTcghHx3E8wb"
|
25
|
+
],
|
26
|
+
[
|
27
|
+
"17QpPprjeg69fW1DV8DcYYCKvWjYhXvWkov6MJ1iTTvMFj6weAqW7wybZeH57WTNxXVCRH4veVs"
|
28
|
+
],
|
29
|
+
[
|
30
|
+
"KxuACDviz8Xvpn1xAh9MfopySZNuyajYMZWz16Dv2mHHryznWUp3"
|
31
|
+
],
|
32
|
+
[
|
33
|
+
"7nK3GSmqdXJQtdohvGfJ7KsSmn3TmGqExug49583bDAL91pVSGq5xS9SHoAYL3Wv3ijKTit65th"
|
34
|
+
],
|
35
|
+
[
|
36
|
+
"cTivdBmq7bay3RFGEBBuNfMh2P1pDCgRYN2Wbxmgwr4ki3jNUL2va"
|
37
|
+
],
|
38
|
+
[
|
39
|
+
"gjMV4vjNjyMrna4fsAr8bWxAbwtmMUBXJS3zL4NJt5qjozpbQLmAfK1uA3CquSqsZQMpoD1g2nk"
|
40
|
+
],
|
41
|
+
[
|
42
|
+
"emXm1naBMoVzPjbk7xpeTVMFy4oDEe25UmoyGgKEB1gGWsK8kRGs"
|
43
|
+
],
|
44
|
+
[
|
45
|
+
"7VThQnNRj1o3Zyvc7XHPRrjDf8j2oivPTeDXnRPYWeYGE4pXeRJDZgf28ppti5hsHWXS2GSobdqyo"
|
46
|
+
],
|
47
|
+
[
|
48
|
+
"1G9u6oCVCPh2o8m3t55ACiYvG1y5BHewUkDSdiQarDcYXXhFHYdzMdYfUAhfxn5vNZBwpgUNpso"
|
49
|
+
],
|
50
|
+
[
|
51
|
+
"31QQ7ZMLkScDiB4VyZjuptr7AEc9j1SjstF7pRoLhHTGkW4Q2y9XELobQmhhWxeRvqcukGd1XCq"
|
52
|
+
],
|
53
|
+
[
|
54
|
+
"DHqKSnpxa8ZdQyH8keAhvLTrfkyBMQxqngcQA5N8LQ9KVt25kmGN"
|
55
|
+
],
|
56
|
+
[
|
57
|
+
"2LUHcJPbwLCy9GLH1qXmfmAwvadWw4bp4PCpDfduLqV17s6iDcy1imUwhQJhAoNoN1XNmweiJP4i"
|
58
|
+
],
|
59
|
+
[
|
60
|
+
"7USRzBXAnmck8fX9HmW7RAb4qt92VFX6soCnts9s74wxm4gguVhtG5of8fZGbNPJA83irHVY6bCos"
|
61
|
+
],
|
62
|
+
[
|
63
|
+
"1DGezo7BfVebZxAbNT3XGujdeHyNNBF3vnficYoTSp4PfK2QaML9bHzAMxke3wdKdHYWmsMTJVu"
|
64
|
+
],
|
65
|
+
[
|
66
|
+
"2D12DqDZKwCxxkzs1ZATJWvgJGhQ4cFi3WrizQ5zLAyhN5HxuAJ1yMYaJp8GuYsTLLxTAz6otCfb"
|
67
|
+
],
|
68
|
+
[
|
69
|
+
"8AFJzuTujXjw1Z6M3fWhQ1ujDW7zsV4ePeVjVo7D1egERqSW9nZ"
|
70
|
+
],
|
71
|
+
[
|
72
|
+
"163Q17qLbTCue8YY3AvjpUhotuaodLm2uqMhpYirsKjVqnxJRWTEoywMVY3NbBAHuhAJ2cF9GAZ"
|
73
|
+
],
|
74
|
+
[
|
75
|
+
"2MnmgiRH4eGLyLc9eAqStzk7dFgBjFtUCtu"
|
76
|
+
],
|
77
|
+
[
|
78
|
+
"461QQ2sYWxU7H2PV4oBwJGNch8XVTYYbZxU"
|
79
|
+
],
|
80
|
+
[
|
81
|
+
"2UCtv53VttmQYkVU4VMtXB31REvQg4ABzs41AEKZ8UcB7DAfVzdkV9JDErwGwyj5AUHLkmgZeobs"
|
82
|
+
],
|
83
|
+
[
|
84
|
+
"cSNjAsnhgtiFMi6MtfvgscMB2Cbhn2v1FUYfviJ1CdjfidvmeW6mn"
|
85
|
+
],
|
86
|
+
[
|
87
|
+
"gmsow2Y6EWAFDFE1CE4Hd3Tpu2BvfmBfG1SXsuRARbnt1WjkZnFh1qGTiptWWbjsq2Q6qvpgJVj"
|
88
|
+
],
|
89
|
+
[
|
90
|
+
"nksUKSkzS76v8EsSgozXGMoQFiCoCHzCVajFKAXqzK5on9ZJYVHMD5CKwgmX3S3c7M1U3xabUny"
|
91
|
+
],
|
92
|
+
[
|
93
|
+
"L3favK1UzFGgdzYBF2oBT5tbayCo4vtVBLJhg2iYuMeePxWG8SQc"
|
94
|
+
],
|
95
|
+
[
|
96
|
+
"7VxLxGGtYT6N99GdEfi6xz56xdQ8nP2dG1CavuXx7Rf2PrvNMTBNevjkfgs9JmkcGm6EXpj8ipyPZ"
|
97
|
+
],
|
98
|
+
[
|
99
|
+
"2mbZwFXF6cxShaCo2czTRB62WTx9LxhTtpP"
|
100
|
+
],
|
101
|
+
[
|
102
|
+
"dB7cwYdcPSgiyAwKWL3JwCVwSk6epU2txw"
|
103
|
+
],
|
104
|
+
[
|
105
|
+
"HPhFUhUAh8ZQQisH8QQWafAxtQYju3SFTX"
|
106
|
+
],
|
107
|
+
[
|
108
|
+
"4ctAH6AkHzq5ioiM1m9T3E2hiYEev5mTsB"
|
109
|
+
],
|
110
|
+
[
|
111
|
+
"Hn1uFi4dNexWrqARpjMqgT6cX1UsNPuV3cHdGg9ExyXw8HTKadbktRDtdeVmY3M1BxJStiL4vjJ"
|
112
|
+
],
|
113
|
+
[
|
114
|
+
"Sq3fDbvutABmnAHHExJDgPLQn44KnNC7UsXuT7KZecpaYDMU9Txs"
|
115
|
+
],
|
116
|
+
[
|
117
|
+
"6TqWyrqdgUEYDQU1aChMuFMMEimHX44qHFzCUgGfqxGgZNMUVWJ"
|
118
|
+
],
|
119
|
+
[
|
120
|
+
"giqJo7oWqFxNKWyrgcBxAVHXnjJ1t6cGoEffce5Y1y7u649Noj5wJ4mmiUAKEVVrYAGg2KPB3Y4"
|
121
|
+
],
|
122
|
+
[
|
123
|
+
"cNzHY5e8vcmM3QVJUcjCyiKMYfeYvyueq5qCMV3kqcySoLyGLYUK"
|
124
|
+
],
|
125
|
+
[
|
126
|
+
"37uTe568EYc9WLoHEd9jXEvUiWbq5LFLscNyqvAzLU5vBArUJA6eydkLmnMwJDjkL5kXc2VK7ig"
|
127
|
+
],
|
128
|
+
[
|
129
|
+
"EsYbG4tWWWY45G31nox838qNdzksbPySWc"
|
130
|
+
],
|
131
|
+
[
|
132
|
+
"nbuzhfwMoNzA3PaFnyLcRxE9bTJPDkjZ6Rf6Y6o2ckXZfzZzXBT"
|
133
|
+
],
|
134
|
+
[
|
135
|
+
"cQN9PoxZeCWK1x56xnz6QYAsvR11XAce3Ehp3gMUdfSQ53Y2mPzx"
|
136
|
+
],
|
137
|
+
[
|
138
|
+
"1Gm3N3rkef6iMbx4voBzaxtXcmmiMTqZPhcuAepRzYUJQW4qRpEnHvMojzof42hjFRf8PE2jPde"
|
139
|
+
],
|
140
|
+
[
|
141
|
+
"2TAq2tuN6x6m233bpT7yqdYQPELdTDJn1eU"
|
142
|
+
],
|
143
|
+
[
|
144
|
+
"ntEtnnGhqPii4joABvBtSEJG6BxjT2tUZqE8PcVYgk3RHpgxgHDCQxNbLJf7ardf1dDk2oCQ7Cf"
|
145
|
+
],
|
146
|
+
[
|
147
|
+
"Ky1YjoZNgQ196HJV3HpdkecfhRBmRZdMJk89Hi5KGfpfPwS2bUbfd"
|
148
|
+
],
|
149
|
+
[
|
150
|
+
"2A1q1YsMZowabbvta7kTy2Fd6qN4r5ZCeG3qLpvZBMzCixMUdkN2Y4dHB1wPsZAeVXUGD83MfRED"
|
151
|
+
],
|
152
|
+
[
|
153
|
+
"tc1qw508d6qejxtdg4y5r3zarvary0c5xw7kg3g4ty"
|
154
|
+
],
|
155
|
+
[
|
156
|
+
"bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t5"
|
157
|
+
],
|
158
|
+
[
|
159
|
+
"BC13W508D6QEJXTDG4Y5R3ZARVARY0C5XW7KN40WF2"
|
160
|
+
],
|
161
|
+
[
|
162
|
+
"bc1rw5uspcuh"
|
163
|
+
],
|
164
|
+
[
|
165
|
+
"bc10w508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7kw5rljs90"
|
166
|
+
],
|
167
|
+
[
|
168
|
+
"BC1QR508D6QEJXTDG4Y5R3ZARVARYV98GJ9P"
|
169
|
+
],
|
170
|
+
[
|
171
|
+
"tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sL5k7"
|
172
|
+
],
|
173
|
+
[
|
174
|
+
"bc1zw508d6qejxtdg4y5r3zarvaryvqyzf3du"
|
175
|
+
],
|
176
|
+
[
|
177
|
+
"tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3pjxtptv"
|
178
|
+
],
|
179
|
+
[
|
180
|
+
"bc1gmk9yu"
|
181
|
+
]
|
182
|
+
]
|
@@ -0,0 +1,488 @@
|
|
1
|
+
[
|
2
|
+
[
|
3
|
+
"1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i",
|
4
|
+
"76a91465a16059864a2fdbc7c99a4723a8395bc6f188eb88ac",
|
5
|
+
{
|
6
|
+
"isPrivkey": false,
|
7
|
+
"chain": "main"
|
8
|
+
}
|
9
|
+
],
|
10
|
+
[
|
11
|
+
"3CMNFxN1oHBc4R1EpboAL5yzHGgE611Xou",
|
12
|
+
"a91474f209f6ea907e2ea48f74fae05782ae8a66525787",
|
13
|
+
{
|
14
|
+
"isPrivkey": false,
|
15
|
+
"chain": "main"
|
16
|
+
}
|
17
|
+
],
|
18
|
+
[
|
19
|
+
"mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs",
|
20
|
+
"76a91453c0307d6851aa0ce7825ba883c6bd9ad242b48688ac",
|
21
|
+
{
|
22
|
+
"isPrivkey": false,
|
23
|
+
"chain": "test"
|
24
|
+
}
|
25
|
+
],
|
26
|
+
[
|
27
|
+
"mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs",
|
28
|
+
"76a91453c0307d6851aa0ce7825ba883c6bd9ad242b48688ac",
|
29
|
+
{
|
30
|
+
"isPrivkey": false,
|
31
|
+
"chain": "regtest"
|
32
|
+
}
|
33
|
+
],
|
34
|
+
[
|
35
|
+
"2N2JD6wb56AfK4tfmM6PwdVmoYk2dCKf4Br",
|
36
|
+
"a9146349a418fc4578d10a372b54b45c280cc8c4382f87",
|
37
|
+
{
|
38
|
+
"isPrivkey": false,
|
39
|
+
"chain": "test"
|
40
|
+
}
|
41
|
+
],
|
42
|
+
[
|
43
|
+
"5Kd3NBUAdUnhyzenEwVLy9pBKxSwXvE9FMPyR4UKZvpe6E3AgLr",
|
44
|
+
"eddbdc1168f1daeadbd3e44c1e3f8f5a284c2029f78ad26af98583a499de5b19",
|
45
|
+
{
|
46
|
+
"isCompressed": false,
|
47
|
+
"isPrivkey": true,
|
48
|
+
"chain": "main"
|
49
|
+
}
|
50
|
+
],
|
51
|
+
[
|
52
|
+
"Kz6UJmQACJmLtaQj5A3JAge4kVTNQ8gbvXuwbmCj7bsaabudb3RD",
|
53
|
+
"55c9bccb9ed68446d1b75273bbce89d7fe013a8acd1625514420fb2aca1a21c4",
|
54
|
+
{
|
55
|
+
"isCompressed": true,
|
56
|
+
"isPrivkey": true,
|
57
|
+
"chain": "main"
|
58
|
+
}
|
59
|
+
],
|
60
|
+
[
|
61
|
+
"9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko",
|
62
|
+
"36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2",
|
63
|
+
{
|
64
|
+
"isCompressed": false,
|
65
|
+
"isPrivkey": true,
|
66
|
+
"chain": "test"
|
67
|
+
}
|
68
|
+
],
|
69
|
+
[
|
70
|
+
"9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko",
|
71
|
+
"36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2",
|
72
|
+
{
|
73
|
+
"isCompressed": false,
|
74
|
+
"isPrivkey": true,
|
75
|
+
"chain": "regtest"
|
76
|
+
}
|
77
|
+
],
|
78
|
+
[
|
79
|
+
"cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH",
|
80
|
+
"b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f3",
|
81
|
+
{
|
82
|
+
"isCompressed": true,
|
83
|
+
"isPrivkey": true,
|
84
|
+
"chain": "test"
|
85
|
+
}
|
86
|
+
],
|
87
|
+
[
|
88
|
+
"cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH",
|
89
|
+
"b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f3",
|
90
|
+
{
|
91
|
+
"isCompressed": true,
|
92
|
+
"isPrivkey": true,
|
93
|
+
"chain": "regtest"
|
94
|
+
}
|
95
|
+
],
|
96
|
+
[
|
97
|
+
"1Ax4gZtb7gAit2TivwejZHYtNNLT18PUXJ",
|
98
|
+
"76a9146d23156cbbdcc82a5a47eee4c2c7c583c18b6bf488ac",
|
99
|
+
{
|
100
|
+
"isPrivkey": false,
|
101
|
+
"chain": "main"
|
102
|
+
}
|
103
|
+
],
|
104
|
+
[
|
105
|
+
"3QjYXhTkvuj8qPaXHTTWb5wjXhdsLAAWVy",
|
106
|
+
"a914fcc5460dd6e2487c7d75b1963625da0e8f4c597587",
|
107
|
+
{
|
108
|
+
"isPrivkey": false,
|
109
|
+
"chain": "main"
|
110
|
+
}
|
111
|
+
],
|
112
|
+
[
|
113
|
+
"n3ZddxzLvAY9o7184TB4c6FJasAybsw4HZ",
|
114
|
+
"76a914f1d470f9b02370fdec2e6b708b08ac431bf7a5f788ac",
|
115
|
+
{
|
116
|
+
"isPrivkey": false,
|
117
|
+
"chain": "test"
|
118
|
+
}
|
119
|
+
],
|
120
|
+
[
|
121
|
+
"2NBFNJTktNa7GZusGbDbGKRZTxdK9VVez3n",
|
122
|
+
"a914c579342c2c4c9220205e2cdc285617040c924a0a87",
|
123
|
+
{
|
124
|
+
"isPrivkey": false,
|
125
|
+
"chain": "test"
|
126
|
+
}
|
127
|
+
],
|
128
|
+
[
|
129
|
+
"5K494XZwps2bGyeL71pWid4noiSNA2cfCibrvRWqcHSptoFn7rc",
|
130
|
+
"a326b95ebae30164217d7a7f57d72ab2b54e3be64928a19da0210b9568d4015e",
|
131
|
+
{
|
132
|
+
"isCompressed": false,
|
133
|
+
"isPrivkey": true,
|
134
|
+
"chain": "main"
|
135
|
+
}
|
136
|
+
],
|
137
|
+
[
|
138
|
+
"L1RrrnXkcKut5DEMwtDthjwRcTTwED36thyL1DebVrKuwvohjMNi",
|
139
|
+
"7d998b45c219a1e38e99e7cbd312ef67f77a455a9b50c730c27f02c6f730dfb4",
|
140
|
+
{
|
141
|
+
"isCompressed": true,
|
142
|
+
"isPrivkey": true,
|
143
|
+
"chain": "main"
|
144
|
+
}
|
145
|
+
],
|
146
|
+
[
|
147
|
+
"93DVKyFYwSN6wEo3E2fCrFPUp17FtrtNi2Lf7n4G3garFb16CRj",
|
148
|
+
"d6bca256b5abc5602ec2e1c121a08b0da2556587430bcf7e1898af2224885203",
|
149
|
+
{
|
150
|
+
"isCompressed": false,
|
151
|
+
"isPrivkey": true,
|
152
|
+
"chain": "test"
|
153
|
+
}
|
154
|
+
],
|
155
|
+
[
|
156
|
+
"cTDVKtMGVYWTHCb1AFjmVbEbWjvKpKqKgMaR3QJxToMSQAhmCeTN",
|
157
|
+
"a81ca4e8f90181ec4b61b6a7eb998af17b2cb04de8a03b504b9e34c4c61db7d9",
|
158
|
+
{
|
159
|
+
"isCompressed": true,
|
160
|
+
"isPrivkey": true,
|
161
|
+
"chain": "test"
|
162
|
+
}
|
163
|
+
],
|
164
|
+
[
|
165
|
+
"1C5bSj1iEGUgSTbziymG7Cn18ENQuT36vv",
|
166
|
+
"76a9147987ccaa53d02c8873487ef919677cd3db7a691288ac",
|
167
|
+
{
|
168
|
+
"isPrivkey": false,
|
169
|
+
"chain": "main"
|
170
|
+
}
|
171
|
+
],
|
172
|
+
[
|
173
|
+
"3AnNxabYGoTxYiTEZwFEnerUoeFXK2Zoks",
|
174
|
+
"a91463bcc565f9e68ee0189dd5cc67f1b0e5f02f45cb87",
|
175
|
+
{
|
176
|
+
"isPrivkey": false,
|
177
|
+
"chain": "main"
|
178
|
+
}
|
179
|
+
],
|
180
|
+
[
|
181
|
+
"n3LnJXCqbPjghuVs8ph9CYsAe4Sh4j97wk",
|
182
|
+
"76a914ef66444b5b17f14e8fae6e7e19b045a78c54fd7988ac",
|
183
|
+
{
|
184
|
+
"isPrivkey": false,
|
185
|
+
"chain": "test"
|
186
|
+
}
|
187
|
+
],
|
188
|
+
[
|
189
|
+
"2NB72XtkjpnATMggui83aEtPawyyKvnbX2o",
|
190
|
+
"a914c3e55fceceaa4391ed2a9677f4a4d34eacd021a087",
|
191
|
+
{
|
192
|
+
"isPrivkey": false,
|
193
|
+
"chain": "test"
|
194
|
+
}
|
195
|
+
],
|
196
|
+
[
|
197
|
+
"5KaBW9vNtWNhc3ZEDyNCiXLPdVPHCikRxSBWwV9NrpLLa4LsXi9",
|
198
|
+
"e75d936d56377f432f404aabb406601f892fd49da90eb6ac558a733c93b47252",
|
199
|
+
{
|
200
|
+
"isCompressed": false,
|
201
|
+
"isPrivkey": true,
|
202
|
+
"chain": "main"
|
203
|
+
}
|
204
|
+
],
|
205
|
+
[
|
206
|
+
"L1axzbSyynNYA8mCAhzxkipKkfHtAXYF4YQnhSKcLV8YXA874fgT",
|
207
|
+
"8248bd0375f2f75d7e274ae544fb920f51784480866b102384190b1addfbaa5c",
|
208
|
+
{
|
209
|
+
"isCompressed": true,
|
210
|
+
"isPrivkey": true,
|
211
|
+
"chain": "main"
|
212
|
+
}
|
213
|
+
],
|
214
|
+
[
|
215
|
+
"927CnUkUbasYtDwYwVn2j8GdTuACNnKkjZ1rpZd2yBB1CLcnXpo",
|
216
|
+
"44c4f6a096eac5238291a94cc24c01e3b19b8d8cef72874a079e00a242237a52",
|
217
|
+
{
|
218
|
+
"isCompressed": false,
|
219
|
+
"isPrivkey": true,
|
220
|
+
"chain": "test"
|
221
|
+
}
|
222
|
+
],
|
223
|
+
[
|
224
|
+
"cUcfCMRjiQf85YMzzQEk9d1s5A4K7xL5SmBCLrezqXFuTVefyhY7",
|
225
|
+
"d1de707020a9059d6d3abaf85e17967c6555151143db13dbb06db78df0f15c69",
|
226
|
+
{
|
227
|
+
"isCompressed": true,
|
228
|
+
"isPrivkey": true,
|
229
|
+
"chain": "test"
|
230
|
+
}
|
231
|
+
],
|
232
|
+
[
|
233
|
+
"1Gqk4Tv79P91Cc1STQtU3s1W6277M2CVWu",
|
234
|
+
"76a914adc1cc2081a27206fae25792f28bbc55b831549d88ac",
|
235
|
+
{
|
236
|
+
"isPrivkey": false,
|
237
|
+
"chain": "main"
|
238
|
+
}
|
239
|
+
],
|
240
|
+
[
|
241
|
+
"33vt8ViH5jsr115AGkW6cEmEz9MpvJSwDk",
|
242
|
+
"a914188f91a931947eddd7432d6e614387e32b24470987",
|
243
|
+
{
|
244
|
+
"isPrivkey": false,
|
245
|
+
"chain": "main"
|
246
|
+
}
|
247
|
+
],
|
248
|
+
[
|
249
|
+
"mhaMcBxNh5cqXm4aTQ6EcVbKtfL6LGyK2H",
|
250
|
+
"76a9141694f5bc1a7295b600f40018a618a6ea48eeb49888ac",
|
251
|
+
{
|
252
|
+
"isPrivkey": false,
|
253
|
+
"chain": "test"
|
254
|
+
}
|
255
|
+
],
|
256
|
+
[
|
257
|
+
"2MxgPqX1iThW3oZVk9KoFcE5M4JpiETssVN",
|
258
|
+
"a9143b9b3fd7a50d4f08d1a5b0f62f644fa7115ae2f387",
|
259
|
+
{
|
260
|
+
"isPrivkey": false,
|
261
|
+
"chain": "test"
|
262
|
+
}
|
263
|
+
],
|
264
|
+
[
|
265
|
+
"5HtH6GdcwCJA4ggWEL1B3jzBBUB8HPiBi9SBc5h9i4Wk4PSeApR",
|
266
|
+
"091035445ef105fa1bb125eccfb1882f3fe69592265956ade751fd095033d8d0",
|
267
|
+
{
|
268
|
+
"isCompressed": false,
|
269
|
+
"isPrivkey": true,
|
270
|
+
"chain": "main"
|
271
|
+
}
|
272
|
+
],
|
273
|
+
[
|
274
|
+
"L2xSYmMeVo3Zek3ZTsv9xUrXVAmrWxJ8Ua4cw8pkfbQhcEFhkXT8",
|
275
|
+
"ab2b4bcdfc91d34dee0ae2a8c6b6668dadaeb3a88b9859743156f462325187af",
|
276
|
+
{
|
277
|
+
"isCompressed": true,
|
278
|
+
"isPrivkey": true,
|
279
|
+
"chain": "main"
|
280
|
+
}
|
281
|
+
],
|
282
|
+
[
|
283
|
+
"92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq",
|
284
|
+
"b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856",
|
285
|
+
{
|
286
|
+
"isCompressed": false,
|
287
|
+
"isPrivkey": true,
|
288
|
+
"chain": "test"
|
289
|
+
}
|
290
|
+
],
|
291
|
+
[
|
292
|
+
"92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq",
|
293
|
+
"b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856",
|
294
|
+
{
|
295
|
+
"isCompressed": false,
|
296
|
+
"isPrivkey": true,
|
297
|
+
"chain": "regtest"
|
298
|
+
}
|
299
|
+
],
|
300
|
+
[
|
301
|
+
"cVM65tdYu1YK37tNoAyGoJTR13VBYFva1vg9FLuPAsJijGvG6NEA",
|
302
|
+
"e7b230133f1b5489843260236b06edca25f66adb1be455fbd38d4010d48faeef",
|
303
|
+
{
|
304
|
+
"isCompressed": true,
|
305
|
+
"isPrivkey": true,
|
306
|
+
"chain": "test"
|
307
|
+
}
|
308
|
+
],
|
309
|
+
[
|
310
|
+
"1JwMWBVLtiqtscbaRHai4pqHokhFCbtoB4",
|
311
|
+
"76a914c4c1b72491ede1eedaca00618407ee0b772cad0d88ac",
|
312
|
+
{
|
313
|
+
"isPrivkey": false,
|
314
|
+
"chain": "main"
|
315
|
+
}
|
316
|
+
],
|
317
|
+
[
|
318
|
+
"3QCzvfL4ZRvmJFiWWBVwxfdaNBT8EtxB5y",
|
319
|
+
"a914f6fe69bcb548a829cce4c57bf6fff8af3a5981f987",
|
320
|
+
{
|
321
|
+
"isPrivkey": false,
|
322
|
+
"chain": "main"
|
323
|
+
}
|
324
|
+
],
|
325
|
+
[
|
326
|
+
"mizXiucXRCsEriQCHUkCqef9ph9qtPbZZ6",
|
327
|
+
"76a914261f83568a098a8638844bd7aeca039d5f2352c088ac",
|
328
|
+
{
|
329
|
+
"isPrivkey": false,
|
330
|
+
"chain": "test"
|
331
|
+
}
|
332
|
+
],
|
333
|
+
[
|
334
|
+
"2NEWDzHWwY5ZZp8CQWbB7ouNMLqCia6YRda",
|
335
|
+
"a914e930e1834a4d234702773951d627cce82fbb5d2e87",
|
336
|
+
{
|
337
|
+
"isPrivkey": false,
|
338
|
+
"chain": "test"
|
339
|
+
}
|
340
|
+
],
|
341
|
+
[
|
342
|
+
"5KQmDryMNDcisTzRp3zEq9e4awRmJrEVU1j5vFRTKpRNYPqYrMg",
|
343
|
+
"d1fab7ab7385ad26872237f1eb9789aa25cc986bacc695e07ac571d6cdac8bc0",
|
344
|
+
{
|
345
|
+
"isCompressed": false,
|
346
|
+
"isPrivkey": true,
|
347
|
+
"chain": "main"
|
348
|
+
}
|
349
|
+
],
|
350
|
+
[
|
351
|
+
"L39Fy7AC2Hhj95gh3Yb2AU5YHh1mQSAHgpNixvm27poizcJyLtUi",
|
352
|
+
"b0bbede33ef254e8376aceb1510253fc3550efd0fcf84dcd0c9998b288f166b3",
|
353
|
+
{
|
354
|
+
"isCompressed": true,
|
355
|
+
"isPrivkey": true,
|
356
|
+
"chain": "main"
|
357
|
+
}
|
358
|
+
],
|
359
|
+
[
|
360
|
+
"91cTVUcgydqyZLgaANpf1fvL55FH53QMm4BsnCADVNYuWuqdVys",
|
361
|
+
"037f4192c630f399d9271e26c575269b1d15be553ea1a7217f0cb8513cef41cb",
|
362
|
+
{
|
363
|
+
"isCompressed": false,
|
364
|
+
"isPrivkey": true,
|
365
|
+
"chain": "test"
|
366
|
+
}
|
367
|
+
],
|
368
|
+
[
|
369
|
+
"cQspfSzsgLeiJGB2u8vrAiWpCU4MxUT6JseWo2SjXy4Qbzn2fwDw",
|
370
|
+
"6251e205e8ad508bab5596bee086ef16cd4b239e0cc0c5d7c4e6035441e7d5de",
|
371
|
+
{
|
372
|
+
"isCompressed": true,
|
373
|
+
"isPrivkey": true,
|
374
|
+
"chain": "test"
|
375
|
+
}
|
376
|
+
],
|
377
|
+
[
|
378
|
+
"19dcawoKcZdQz365WpXWMhX6QCUpR9SY4r",
|
379
|
+
"76a9145eadaf9bb7121f0f192561a5a62f5e5f5421029288ac",
|
380
|
+
{
|
381
|
+
"isPrivkey": false,
|
382
|
+
"chain": "main"
|
383
|
+
}
|
384
|
+
],
|
385
|
+
[
|
386
|
+
"37Sp6Rv3y4kVd1nQ1JV5pfqXccHNyZm1x3",
|
387
|
+
"a9143f210e7277c899c3a155cc1c90f4106cbddeec6e87",
|
388
|
+
{
|
389
|
+
"isPrivkey": false,
|
390
|
+
"chain": "main"
|
391
|
+
}
|
392
|
+
],
|
393
|
+
[
|
394
|
+
"myoqcgYiehufrsnnkqdqbp69dddVDMopJu",
|
395
|
+
"76a914c8a3c2a09a298592c3e180f02487cd91ba3400b588ac",
|
396
|
+
{
|
397
|
+
"isPrivkey": false,
|
398
|
+
"chain": "test"
|
399
|
+
}
|
400
|
+
],
|
401
|
+
[
|
402
|
+
"2N7FuwuUuoTBrDFdrAZ9KxBmtqMLxce9i1C",
|
403
|
+
"a91499b31df7c9068d1481b596578ddbb4d3bd90baeb87",
|
404
|
+
{
|
405
|
+
"isPrivkey": false,
|
406
|
+
"chain": "test"
|
407
|
+
}
|
408
|
+
],
|
409
|
+
[
|
410
|
+
"5KL6zEaMtPRXZKo1bbMq7JDjjo1bJuQcsgL33je3oY8uSJCR5b4",
|
411
|
+
"c7666842503db6dc6ea061f092cfb9c388448629a6fe868d068c42a488b478ae",
|
412
|
+
{
|
413
|
+
"isCompressed": false,
|
414
|
+
"isPrivkey": true,
|
415
|
+
"chain": "main"
|
416
|
+
}
|
417
|
+
],
|
418
|
+
[
|
419
|
+
"KwV9KAfwbwt51veZWNscRTeZs9CKpojyu1MsPnaKTF5kz69H1UN2",
|
420
|
+
"07f0803fc5399e773555ab1e8939907e9badacc17ca129e67a2f5f2ff84351dd",
|
421
|
+
{
|
422
|
+
"isCompressed": true,
|
423
|
+
"isPrivkey": true,
|
424
|
+
"chain": "main"
|
425
|
+
}
|
426
|
+
],
|
427
|
+
[
|
428
|
+
"93N87D6uxSBzwXvpokpzg8FFmfQPmvX4xHoWQe3pLdYpbiwT5YV",
|
429
|
+
"ea577acfb5d1d14d3b7b195c321566f12f87d2b77ea3a53f68df7ebf8604a801",
|
430
|
+
{
|
431
|
+
"isCompressed": false,
|
432
|
+
"isPrivkey": true,
|
433
|
+
"chain": "test"
|
434
|
+
}
|
435
|
+
],
|
436
|
+
[
|
437
|
+
"cMxXusSihaX58wpJ3tNuuUcZEQGt6DKJ1wEpxys88FFaQCYjku9h",
|
438
|
+
"0b3b34f0958d8a268193a9814da92c3e8b58b4a4378a542863e34ac289cd830c",
|
439
|
+
{
|
440
|
+
"isCompressed": true,
|
441
|
+
"isPrivkey": true,
|
442
|
+
"chain": "test"
|
443
|
+
}
|
444
|
+
],
|
445
|
+
[
|
446
|
+
"13p1ijLwsnrcuyqcTvJXkq2ASdXqcnEBLE",
|
447
|
+
"76a9141ed467017f043e91ed4c44b4e8dd674db211c4e688ac",
|
448
|
+
{
|
449
|
+
"isPrivkey": false,
|
450
|
+
"chain": "main"
|
451
|
+
}
|
452
|
+
],
|
453
|
+
[
|
454
|
+
"3ALJH9Y951VCGcVZYAdpA3KchoP9McEj1G",
|
455
|
+
"a9145ece0cadddc415b1980f001785947120acdb36fc87",
|
456
|
+
{
|
457
|
+
"isPrivkey": false,
|
458
|
+
"chain": "main"
|
459
|
+
}
|
460
|
+
],
|
461
|
+
[
|
462
|
+
"bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4",
|
463
|
+
"0014751e76e8199196d454941c45d1b3a323f1433bd6",
|
464
|
+
{
|
465
|
+
"isPrivkey": false,
|
466
|
+
"chain": "main",
|
467
|
+
"tryCaseFlip": true
|
468
|
+
}
|
469
|
+
],
|
470
|
+
[
|
471
|
+
"bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kygt080",
|
472
|
+
"0014751e76e8199196d454941c45d1b3a323f1433bd6",
|
473
|
+
{
|
474
|
+
"isPrivkey": false,
|
475
|
+
"chain": "regtest",
|
476
|
+
"tryCaseFlip": true
|
477
|
+
}
|
478
|
+
],
|
479
|
+
[
|
480
|
+
"tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sl5k7",
|
481
|
+
"00201863143c14c5166804bd19203356da136c985678cd4d27a1b8c6329604903262",
|
482
|
+
{
|
483
|
+
"isPrivkey": false,
|
484
|
+
"chain": "test",
|
485
|
+
"tryCaseFlip": true
|
486
|
+
}
|
487
|
+
]
|
488
|
+
]
|