spesmilo / spesmilo/electrum

Bitbox02 PaytoMany - Bitbox02Exception: error code: 101, Invalid Input

Open
#7,440 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

hw-bitbox
Dominant language
Python
Stars
8.6k
Forks
3.5k
Avg merge
2d 8h
Merged PRs (30d)
61

Description

Version:Version 4.1.5
Type: Linux, AppImage, Ubuntu
Method: Pay to Many

Description:

Using electrum together with bitbox02 as HW wallet. Trying to sign transaction of method "Pay to many". After "Finalize", there is
a window with a sign button. Pressing the sign button ends in the error message below. As a result "pay to many" seems not possible with electrum wallet and bitbox02.

Error Message at Terminal:


bitbox02.communication.bitbox_api_protocol.Bitbox02Exception: error code: 101, message: invalid input
E | plugins.bitbox02.bitbox02.BitBox02_KeyStore | 
Traceback (most recent call last):
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/electrum/plugins/bitbox02/bitbox02.py", line 602, in sign_transaction
    client.sign_transaction(self, tx, self.handler.get_wallet())
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/electrum/plugin.py", line 362, in wrapper
    return run_in_hwd_thread(partial(func, *args, **kwargs))
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/electrum/plugin.py", line 352, in run_in_hwd_thread
    return func()
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/electrum/plugins/bitbox02/bitbox02.py", line 518, in sign_transaction
    version=tx.version,
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/bitbox02/bitbox02/bitbox02.py", line 541, in btc_sign
    request, expected_response="btc_sign_next"
  File "/tmp/.mount_electrMQ24Kn/usr/lib/python3.7/site-packages/bitbox02/communication/bitbox_api_protocol.py", line 639, in _msg_query
    raise Bitbox02Exception(response.error.code, response.error.message)
bitbox02.communication.bitbox_api_protocol.Bitbox02Exception: error code: 101, message: invalid input

Thank yo

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the Pay to Many signing failure with BitBox02, then start at electrum/plugins/bitbox02/bitbox02.py, especially sign_transaction and the btc_sign call shown in the traceback. Trace the transaction data sent to the BitBox02 protocol and verify that a finalized Pay to Many transaction can be signed without the invalid-input error.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.