From this question I've learned that a transaction with N inputs requires N sign operations.

But what if there a huge amount of inputs? E.g. I have a coffee shop and I sell 5000 pcs coffee every day for $1 each. If I want to transfer my daily income I'll end up with a transaction with 5000 inputs.

Counting with 100kB max transaction size ~300..400 inputs can be included in one transaction. So I need to make 10..15 transactions every day. In addition, if I have a hardware wallet that needs let's say 500 ms to make a signature it will take 5000*0.5 sec = 41 min to sign all the inputs.

What is the correct way to handle this?

Is there an option to sign the transaction only once and use this signature for all the inputs?

1 Answer 1


The current signature scheme that bitcoin is using (ECDSA) doesn't support signature aggregation, so you will have to sign each input and provide one signature per input (assuming it requires only one signature) and your transaction size will grow accordingly.

sell 5000 pcs coffee every day for $1 each

Then you might want to look into Lightning Network. It works on top of bitcoin as a second layer and for micro and frequent payments it is the better choice:
How does the Lightning network work in simple terms?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.