-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Trezor T can't sign >100 inputs #78
Comments
@AlphaTEsterUnited @divinationstar can you try with Sparrow wallet if it also happen? If yes, then it is a hwi issue. |
I successfully signed a transaction with 204 inputs using Sparrow and the Trezor Model T. However, I was able to replicate the above mentioned scenario 2 when attempting transactions with 431 and 710 inputs. Nothing was displayed on the Trezor device. This behavior is almost similar to what I experienced with BTCPay as shown in my earlier post. Is there somewhere some hardcoded timeout by any chance? I can imagine that it takes more time to load 700 inputs vs 100. Since I can consistently sign transactions with over 900 inputs using Electrum, it suggests that the issue is specific to HWI. |
@NicolasDorier just checking if you need help with debugging or anything else from y side to get the issue resolved. |
Ok, I prepared a repro for HWI. Do you have a spare Trezor T? Then go to Inside, you will find Try to run in command line hwi.exe enumerate You should see the hwi.exe --stdin Then enter --chain
main
--fingerprint
<fingerprint>
signtx
<psbt>
Let me know it it works. |
@NicolasDorier One issue seems to be the max character limit of 8191 for Windows cmd input. When including the full psbt in the command line, we get the above "nothing happens" error. This seems to be the issue with all hardware wallets when signing large TX - they invoke Windows commands and get cut off. Creating a new file
When it finished up loading all transactions, I pressed confirm transaction on the trezor, But the below error appeared in cmd and the trezor became stuck at "loading transactions without progress"
|
@AlphaTEsterUnited so the About the error In BTCPay, in Send Wallet, you have "Advanced Settings" and you can choose to |
I created a PSBT with the previous tx that you can try in CLI: Can you give another try? |
@AlphaTEsterUnited the previous PSBT was artificially big, this last one reflect better on the reality: |
@AlphaTEsterUnited as you told me previous one worked, please look at this one: It is now segwit p2sh with 1000 inputs. |
Copied from bitcoin-core/HWI#720 by @AlphaTEsterUnited and @divinationstar
Dear Devs,
Windows and OSX indeed behave similarly. I'm unable to send any transaction with over 200 inputs using JADE, Trezor, and Ledger through the HWI implementation in Sparrow and BTCPay. It's important to note that the wallet is P2SH (Pay to Script Hash).
Steps to reproduce:
Attempt to send a transaction with over 200 inputs (for comparison, Electrum can consistently handle over 900). Two failure scenarios occur with Trezor:
In one scenario, pre-signing (loading transactions) is successful, but after confirming on the Trezor, BTCPay immediately displays "The user refused to sign the transaction," and the progress bar on the Trezor halts See screenshot:
In the other scenario, nothing appears on the Trezor and the BTCPay server vault remains in the "signtx" state See screenshot:
Thank you for looking into this issue.
Is there anyway I can generate logs btw?
The text was updated successfully, but these errors were encountered: