Author

Topic: How do I combine small transactions in a ledger wallet (Read 287 times)

newbie
Activity: 23
Merit: 853

That's better, but it's still not great. Once you've moved from A, B, and C, to D, E, and F, if you then start to consolidate D, E, and F together, although a third party couldn't definitively link A, B, and C as all belonging to you, they could get a pretty good idea which they may be able to combine with other information.


Yeah, that is kind of truism. As it was stated A, B and C should never be consolidated either directly  or via any mediators including addresses user owns. I think the best way is to continue consolidation on different addresses or spend UTXOs not mixing them.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
If it were me, I would either pass D, E, and F, individually through ChipMixer or a coinjoin before consolidating them at a later date, or keep them separate altogether and just use them for various payments as you suggest.
An alternative for really small inputs: you can convert them to Bitcoin on the Lightning Network by using one of the custodial wallets. I've used BlueWallet and Phoenix for this (research the wallets yourself before funding them, so you know potential pitfalls), and if you create different wallets, you'll get different funding addresses. Don't do all inputs at once, and you'll break most on-chain blockchain connection.
The wallet company will know the link between addresses though.
legendary
Activity: 2268
Merit: 18711
I meant all "A" UTXOs --> D, all B --> E,   all  C --> F doing this by several  transaction  for every address from A BC set so that initial UTXOs  would not mix ABC. Then you can gradually  consolidate UTXOs on DEF set either by moving fund to new addresses or using some of UTXOs for the payment needs.
That's better, but it's still not great. Once you've moved from A, B, and C, to D, E, and F, if you then start to consolidate D, E, and F together, although a third party couldn't definitively link A, B, and C as all belonging to you, they could get a pretty good idea which they may be able to combine with other information.

If it were me, I would either pass D, E, and F, individually through ChipMixer or a coinjoin before consolidating them at a later date, or keep them separate altogether and just use them for various payments as you suggest.
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
--snip--

Thanks so much this is awesome.  I'm not familiar with the eletrum UI so this was a great help!  That's the way I'm going to do it, just have to wait for the fees to drop and pick which ones to combine.  Smiley  

I always give the advice to wait untill the feerate drops, but actually i see no harm in creating a transaction with a 1 sat/vbyte fee right now (even if the average feerate is way to high). You can create it and broadcast it, it doesn't matter if it just sits in the mempool without getting confirmed. If it gets pruned from the mempool of most nodes in a couple of weeks, you can just rebroadcast it.

The upside from this method is that your transaction will get confirmed if there would be a very short dip in the total size of the mempool, and if there's a systematical decline, your transaction will get into a block as soon as it's in the tip of the mempool.
The downside is that it's possible you'll have to rebroadcast.
jr. member
Activity: 30
Merit: 8
I agree with TryNinja and ranochigo, i just wanted to add it would be a good idear for the OP to use electrum for this procedure. It gives you better controll over your fee and lets you select with unspent outputs to use as an input. I like ledger's GUI, but it's less ideal when you want to have more controll over the transaction you're creating.


That is certainly the best option

take a look at Electrum UI:



You can choose exactly which input you want to spend and consolidate them. It also allows you a better control over your privacy, because if you just consolidate all of your inputs all your addresses will be linked together.

It is also interesting to note that Electrum is a recommend wallet by ledger team, and is fully supported:
https://support.ledger.com/hc/en-us/articles/115005161925-Set-up-and-use-Electrum

Also, you might want to take a look here at this thread by LoyceV, where he explains why you should consolidate your inputs.
[Aug 2020] Fees are low, use this opportunity to Consolidate your small inputs!

Thanks so much this is awesome.  I'm not familiar with the eletrum UI so this was a great help!  That's the way I'm going to do it, just have to wait for the fees to drop and pick which ones to combine.  Smiley 
legendary
Activity: 2268
Merit: 18711
There might be some circumstantial evidence that could be inferred, such as "no change output", which may indicate that it was a consolidation transaction, but it is certainly not guaranteed...
Sure, but that was kind of the point I was making - there is more to blockchain analysis than simply linking inputs in the same transaction.

In the example I was replying to, it was suggested that there were several addresses all with multiple UTXOs. If the second transaction (C+D -> E) matches a number of features from the first (A+B -> D), such as multiple small inputs, no change address, same address type, similar fee, made soon after each other, features which suggest the transactions were made by the same software (such as same version, same sequence, and same lock time), and so on, then a third party could link addresses A, B, and C with a high degree of confidence.
HCP
legendary
Activity: 2086
Merit: 4361
In the 2nd option (A+B -> D, C+D -> E)... it isn't entirely obvious that A,B and C are all linked.

You only know that A+B are linked and C+D are linked... but not necessarily all controlled by the same entity. There is no "solid" evidence for that.

There might be some circumstantial evidence that could be inferred, such as "no change output", which may indicate that it was a consolidation transaction, but it is certainly not guaranteed... for instance, it could just as easily be someone sending all available funds as part payment for something.

So while it is not as "private" as running funds through mixers/coinjoins etc... it is certainly "better" than A+B+C => D


The real danger is that you need to really pay attention to what you're doing and make sure that you never accidentally link A/B and C/D or E together by including them as inputs in the same transaction.
legendary
Activity: 2268
Merit: 18711
Then,  he might probably try to consolidate (in a few tries) those UTXOs separately, starting from one address and moving to the next when finishing.
That doesn't really help his privacy. If I have a bunch of UTXOs on addresses A, B, and C, for example, I could either do the following:
  • A+B+C -> D
  • A+B -> D, followed by C+D -> E

Either way, it is entirely obviously from looking at the blockchain records that addresses A, B, and C are linked, especially if they are clearly consolidation transactions with multiple inputs and no change output.

If you want to keep the addresses unlinked on the blockchain, then you need to combine all the UTXOs from each address separately and then pass those consolidated UTXOs through a mixer or similar prior to further consolidating everything together in to a single UTXO.
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
Most incoming transactions have been smaller ones from my mining pool. -snip-
If there's an option to increase the "auto-withdrawal amount" in that pool, tweak it to at least 0.0001-0.001BTC (or higher) per withdrawal.
AFAIK most pool have that option.

That way, each UTXO will have enough balance for a "normal transaction".
legendary
Activity: 2352
Merit: 6089
bitcoindata.science
I agree with TryNinja and ranochigo, i just wanted to add it would be a good idear for the OP to use electrum for this procedure. It gives you better controll over your fee and lets you select with unspent outputs to use as an input. I like ledger's GUI, but it's less ideal when you want to have more controll over the transaction you're creating.


That is certainly the best option

take a look at Electrum UI:



You can choose exactly which input you want to spend and consolidate them. It also allows you a better control over your privacy, because if you just consolidate all of your inputs all your addresses will be linked together.

It is also interesting to note that Electrum is a recommend wallet by ledger team, and is fully supported:
https://support.ledger.com/hc/en-us/articles/115005161925-Set-up-and-use-Electrum

Also, you might want to take a look here at this thread by LoyceV, where he explains why you should consolidate your inputs.
[Aug 2020] Fees are low, use this opportunity to Consolidate your small inputs!
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I guess I'll pool small transactions outside of ledger in the future.
That gives the same problem. What mocacinno said/meant is to connect Electrum to your hardware wallet. That gives you full control, while still using the security of your Ledger. Don't enter your seed words in Electrum!
You may want to read [Aug 2020] Fees are low, use this opportunity to Consolidate your small inputs!.
jr. member
Activity: 30
Merit: 8
Thanks everyone.  All great info!  I'll try these suggestions and I guess I'll pool small transactions outside of ledger in the future.
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
--snip--
If you are not in a hurry to send the transaction, just send everything you have to yourself with a 1 sat/byte transaction. This will combine all the inputs in 1 output.

This will take some time to confirm, but it will make everything better in the future: When you decide to spend those coins, you can spend all of them with the fee you want (e.g 20 sat/byte) and only pay that for a 1 input tx transaction.

Basically what ranochigo said above, but with a mora practical wording. Smiley

I agree with TryNinja and ranochigo, i just wanted to add it would be a good idear for the OP to use electrum for this procedure. It gives you better controll over your fee and lets you select with unspent outputs to use as an input. I like ledger's GUI, but it's less ideal when you want to have more controll over the transaction you're creating.

So: basically, create an electrum wallet using your hw wallet (make sure you verify electrum after downloading it), wait untill the feerate drops (check here: https://jochen-hoenicke.de/queue/#0,24h), create one 1 sat/vbyte tx consolidating all your unspent outputs... Wait Smiley
legendary
Activity: 2758
Merit: 6830
Hi.  I have my BTC stored on ledger.  Most incoming transactions have been smaller ones from my mining pool.  When i tried to send my BTC out however the transaction fee was $129 USD as I assume all the small incoming transactions creates alot of input/outputs driving up the fee.  Is there some way I can combine the balance in my ledger account so that it sends as a regular transaction with normal BTC fees?
If you are not in a hurry to send the transaction, just send everything you have to yourself with a 1 sat/byte transaction. This will combine all the inputs in 1 output.

This will take some time to confirm, but it will make everything better in the future: When you decide to spend those coins, you can spend all of them with the fee you want (e.g 20 sat/byte) and only pay that for a 1 input tx transaction. This is good because when you really need the tx to confirm fast, you can pay a bit more and not get ripped for all the smaller inputs.

Basically what ranochigo said above, but with a more practical wording. Smiley
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
The fees are pretty elevated right now which doesn't help your case in the first place.

Otherwise, the only way to reduce the size of a transaction us by reducing the number of inputs/outputs. This means that you will have to combine the inputs by spending it first. Wait for the network to get less congested first and spend using 1satoshi/byte.
jr. member
Activity: 30
Merit: 8
Hi.  I have my BTC stored on ledger.  Most incoming transactions have been smaller ones from my mining pool.  When i tried to send my BTC out however the transaction fee was $129 USD as I assume all the small incoming transactions creates alot of input/outputs driving up the fee.  Is there some way I can combine the balance in my ledger account so that it sends as a regular transaction with normal BTC fees?

Jump to: