greenaddress / garecovery

GreenAddress recovery tool for 2of2 and 2of3 wallets
MIT License
107 stars 53 forks source link

KeyError: 'prevout_scripts' #15

Closed crowdriver137 closed 6 years ago

crowdriver137 commented 6 years ago

Hi,

When using the garecovery tool I get the following exception:

garecovery-cli 2of2 --nlocktime-file ../nlocktimes.zip -o garecovery.csv
mnemonic/hex seed: ...
Traceback (most recent call last):
  File "/home/user/bc/garecovery/venv/bin/garecovery-cli", line 7, in <module>
    sys.exit(recoverycli.main(sys.argv))
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/recoverycli.py", line 101, in main
    recovery = get_recovery(clargs.args, mnemonic, seed)
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/recoverycli.py", line 79, in get_recovery
    return TwoOfTwo(mnemonic, seed, options.nlocktime_file)
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/two_of_two.py", line 32, in __init__
    self.is_testnet = self._is_testnet()
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/two_of_two.py", line 65, in _is_testnet
    redeem_script = self.txdata[0]['prevout_scripts'][0]
KeyError: 'prevout_scripts'

I've tried to skip the condition by returning False explicitly, but got a similar exception in a next step:

garecovery-cli 2of2 --nlocktime-file ../nlocktimes.zip -o garecovery.csv
mnemonic/hex seed: ...
Traceback (most recent call last):
  File "/home/user/bc/garecovery/venv/bin/garecovery-cli", line 7, in <module>
    sys.exit(recoverycli.main(sys.argv))
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/recoverycli.py", line 107, in main
    txs = recovery.get_transactions()
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/two_of_two.py", line 92, in get_transactions
    tx = self._get_signed_tx(txdata)
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/garecovery/two_of_two.py", line 83, in _get_signed_tx
    return gacommon.countersign(txdata, key)
  File "/home/user/bc/garecovery/venv/local/lib/python2.7/site-packages/gaservices/utils/gacommon.py", line 106, in countersign
    GreenAddress = PassiveSignatory(hex_to_bytes(txdata['prevout_signatures'][0]))
KeyError: 'prevout_signatures'
unzip -l nlocktimes.zip
Archive:  nlocktimes.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
    11588  2016-04-24 02:50   nlocktimes.encrypted
---------                     -------
    11588                     1 file

Could you assist me?

Thanks

jkauffman1 commented 6 years ago

Hi, Please try again with the lastest code: commit 9b6705dc57cb270f25e3fba7751a4d93e7494183

crowdriver137 commented 6 years ago

Awesome, that commit resolves the problem.