Author

Topic: Is it possible to lock change by default? (Read 309 times)

member
Activity: 378
Merit: 93
Enable v2transport=1 and mempoolfullrbf=1
October 08, 2023, 12:22:58 AM
#20
What about this?

https://decrypt.co/15435/is-binance-monitoring-withdrawals-to-wasabis-bitcoin-wallet
Quote
Likewise, it’s no surprise that Binance is concerned about withdrawals to Wasabi: analysis by the data analytics firm Chainalysis this week claimed that it could track Wasabi wallet transactions, and linked the alleged PlusToken scammers—a reportedly Chinese ponzi scheme suspected of bilking $2 billion from its victims—to its use.


If you use Wasabi, it's clear to anyone looking at your transaction history that you participated in a coinjoin.  The coinjoin simply prevents those people from knowing where the coins ultimately ended up.
sr. member
Activity: 317
Merit: 448
October 07, 2023, 11:51:02 PM
#19
I think you should use the word freeze because lock sounds like you are looking for nLockTime.

The settings will vary depending on the software you are using, but the better wallet, the better privacy options available to you. In addition to what @pooya87 said, activate Coins tab option by going to Wallet >> Coins. Thus, before sending any transaction, you will be able to see all inputs and determine whether Do you want to spend from that address or not?

Note that Electrum is not a privacy wallet, if you are concerned about your privacy, running a full node or through Sparrow would be better.

Yeah, freeze I guess is a more accurate term. Are you talking about Electrum with this?
"Wallet >> Coins"

Im using Bitcoin Core, which has the very useful Coin Control feature. So all you need to do is not screw up by clicking on the wrong checkboxes. I just want to avoid a Loaded type disaster. They should add big red alarms before you send a transaction if you are mixing your transaction with change addresses. You Don't want to be this guy:

https://www.youtube.com/watch?v=pxvd1YOMGxU

And on a long enough timeline, everyone screws up, so any security measures on this field are welcomed.

You'll have to spend change at some point, and at that point, you'll probably want to consolidate outputs. So what do you do? You mix.

Assume you make 500,000 sat change every month. Consolidate outputs you're confident of revealing common ownership, and send them over to a mixing-only Sparrow wallet. From that point on, you can select any of those spent change and use them in several coinjoins. The alternative, probably more expensive approach is to send change to a mixer.

Sparrow creates change from coinjoins, so it doesn't help OP's problem:

Post the tx ID of any Whirlpool transaction and I will show you the tx0 transaction that was created by each of the new entrants.
Ok, here's one: https://mempool.space/tx/ed3131b544fbf00a71709942e483b55e629312ecb181e6e819409f419ee0d226

Where exactly is the privacy loss for new entrants, splitting a single UTXO in to multiple UTXOs to join the pool?

Okay, here's all the payments that can be tracked from the two new participants of the Whirlpool coinjoin transaction:

Entrant 1: bc1q03c0443ausjjdxl2h6ud5m8c0dux0zyg3dqdj7 created 0.00170417 BTC in unmixed change sent to bc1q3fduld0l3r8nclyt5p3r7ak675tekurstn55tl.  Since this UTXO is not private, the sats were marked as unspendable and have not been recovered by the wallet owner  Cry Cry Cry

Entrant 2: bc1qzc8zku26ej337huw5dlt390cy2r9kgnq7dhtys created 0.00191247 BTC in unmixed change sent to bc1qjlltxr443uy236wl4xhpxlr6dgsu0zltlv3m44. This UTXO was used in a second tx0 transaction, creating a huge trail of transactions that could be traced to each other  Shocked Shocked Shocked

The 2nd tx0 transaction created 0.00076348 BTC unmixed change which was sent to bc1qehd7gy8rza9mnzm9wnfjhgw82rp47wmqt7vpgy

Since this unmixed change is below the .001 pool minimum, it was consolidated in a 3rd tx0 with 3 other addresses owned by the same wallet:
31x8GPqrhzdaxiBJa9N5UisuoxbX1rAnHa
16Gw5WKjbxZmg1zhZQs19Sf61fbV2xGujx
3LZtsJfUjiV5EZkkG1fwGEpTe2QEa7CNeY

The 3rd tx0 transaction created .00200317 in unmixed change which was sent to bc1q2p7gdtyahct8rdjs2khwf0sffl64qe896ya2y5
This was spent in a 0.00190000 payment to 3B8cRYc3W5jHeS3pkepwDePUmePBoEwyp1 (a reused address)

That payment left .00008553 in change that was tracked to 3Dh7R7xoKMVfLCcAtVDyhJ66se82twyZSn and consolidated with two other inputs in a 4th tx0 transaction:
bc1qeuh6sds8exm54yscrupdk03jxphw8qwzdtxgde
3ByChGBFshzGUE5oip8YYVEZDaCP2bcBmZ

This 4th tx0 created .00533406 in unmixed change which was sent to bc1qzh699s75smwukg9jcanwnlkmkn38r79ataagd9 which was consolidated with 3 more addresses into a 5th tx0:
3F2qiWQJKQjF7XFjEo8FUYP3AU5AC6RqX8
3HAYYVKUpYbr2ARMdZJr9yVu8xi8UcxtPz
3GQtwwRK31wwCc22q6WS5sCgixUHsG5KaT

The 5th tx0 created 0.00058494 BTC in unmixed change that was sent to bc1qvh2zjcwwkj9y70xulla2semvlav3lty0p3l3w3
This was spent in a .00047290 payment to bc1qvzg8jq6wqtr5navn4e3ps4qrkk9r6n4h98gjck

That payment left .00008411 in change that was tracked to bc1qg6j0f0wfhpktt2l8uzdn48ct3um2xyur40eyzd and consolidated with another input into a 6th tx0 transaction:
31iZLXWfoywhuMZTPGxTkpzphzh2NXshpP

The 6th tx0 created .00753775 in unmixed change that was tracked to bc1qgfll2apc27yct6h2c8r8wq4kqhxjsfrudhhn5q
This was spent in a .00737000 payment to bc1q5emzer2t0sq5dez0zsrqgh6scvwn0n24xsladp (a reused address)

This payment left 0.00010896 BTC in change which has not been spent yet, but the payment only took place 11 days ago, so I assume it will eventually be spent, allowing the Whirlpool user to be tracked even further.

takuma sato, if you want your coins to be untraceable, use the WabiSabi coinjoin protocol with Wasabi Wallet, BTCPay Server, or Trezor.  It eliminates the problems of traceable change and common input ownership so every transaction you make is fully private and can never be linked to another transaction you made: https://mempool.space/tx/d465033214fd2309dcce5a90c45fcaa788aa4394ee36debe07aad8d8a37907d2

What about this?

https://decrypt.co/15435/is-binance-monitoring-withdrawals-to-wasabis-bitcoin-wallet
Quote
Likewise, it’s no surprise that Binance is concerned about withdrawals to Wasabi: analysis by the data analytics firm Chainalysis this week claimed that it could track Wasabi wallet transactions, and linked the alleged PlusToken scammers—a reportedly Chinese ponzi scheme suspected of bilking $2 billion from its victims—to its use.
member
Activity: 378
Merit: 93
Enable v2transport=1 and mempoolfullrbf=1
October 05, 2023, 10:08:35 AM
#18
You'll have to spend change at some point, and at that point, you'll probably want to consolidate outputs. So what do you do? You mix.

Assume you make 500,000 sat change every month. Consolidate outputs you're confident of revealing common ownership, and send them over to a mixing-only Sparrow wallet. From that point on, you can select any of those spent change and use them in several coinjoins. The alternative, probably more expensive approach is to send change to a mixer.

Sparrow creates change from coinjoins, so it doesn't help OP's problem:

Post the tx ID of any Whirlpool transaction and I will show you the tx0 transaction that was created by each of the new entrants.
Ok, here's one: https://mempool.space/tx/ed3131b544fbf00a71709942e483b55e629312ecb181e6e819409f419ee0d226

Where exactly is the privacy loss for new entrants, splitting a single UTXO in to multiple UTXOs to join the pool?

Okay, here's all the payments that can be tracked from the two new participants of the Whirlpool coinjoin transaction:

Entrant 1: bc1q03c0443ausjjdxl2h6ud5m8c0dux0zyg3dqdj7 created 0.00170417 BTC in unmixed change sent to bc1q3fduld0l3r8nclyt5p3r7ak675tekurstn55tl.  Since this UTXO is not private, the sats were marked as unspendable and have not been recovered by the wallet owner  Cry Cry Cry

Entrant 2: bc1qzc8zku26ej337huw5dlt390cy2r9kgnq7dhtys created 0.00191247 BTC in unmixed change sent to bc1qjlltxr443uy236wl4xhpxlr6dgsu0zltlv3m44. This UTXO was used in a second tx0 transaction, creating a huge trail of transactions that could be traced to each other  Shocked Shocked Shocked

The 2nd tx0 transaction created 0.00076348 BTC unmixed change which was sent to bc1qehd7gy8rza9mnzm9wnfjhgw82rp47wmqt7vpgy

Since this unmixed change is below the .001 pool minimum, it was consolidated in a 3rd tx0 with 3 other addresses owned by the same wallet:
31x8GPqrhzdaxiBJa9N5UisuoxbX1rAnHa
16Gw5WKjbxZmg1zhZQs19Sf61fbV2xGujx
3LZtsJfUjiV5EZkkG1fwGEpTe2QEa7CNeY

The 3rd tx0 transaction created .00200317 in unmixed change which was sent to bc1q2p7gdtyahct8rdjs2khwf0sffl64qe896ya2y5
This was spent in a 0.00190000 payment to 3B8cRYc3W5jHeS3pkepwDePUmePBoEwyp1 (a reused address)

That payment left .00008553 in change that was tracked to 3Dh7R7xoKMVfLCcAtVDyhJ66se82twyZSn and consolidated with two other inputs in a 4th tx0 transaction:
bc1qeuh6sds8exm54yscrupdk03jxphw8qwzdtxgde
3ByChGBFshzGUE5oip8YYVEZDaCP2bcBmZ

This 4th tx0 created .00533406 in unmixed change which was sent to bc1qzh699s75smwukg9jcanwnlkmkn38r79ataagd9 which was consolidated with 3 more addresses into a 5th tx0:
3F2qiWQJKQjF7XFjEo8FUYP3AU5AC6RqX8
3HAYYVKUpYbr2ARMdZJr9yVu8xi8UcxtPz
3GQtwwRK31wwCc22q6WS5sCgixUHsG5KaT

The 5th tx0 created 0.00058494 BTC in unmixed change that was sent to bc1qvh2zjcwwkj9y70xulla2semvlav3lty0p3l3w3
This was spent in a .00047290 payment to bc1qvzg8jq6wqtr5navn4e3ps4qrkk9r6n4h98gjck

That payment left .00008411 in change that was tracked to bc1qg6j0f0wfhpktt2l8uzdn48ct3um2xyur40eyzd and consolidated with another input into a 6th tx0 transaction:
31iZLXWfoywhuMZTPGxTkpzphzh2NXshpP

The 6th tx0 created .00753775 in unmixed change that was tracked to bc1qgfll2apc27yct6h2c8r8wq4kqhxjsfrudhhn5q
This was spent in a .00737000 payment to bc1q5emzer2t0sq5dez0zsrqgh6scvwn0n24xsladp (a reused address)

This payment left 0.00010896 BTC in change which has not been spent yet, but the payment only took place 11 days ago, so I assume it will eventually be spent, allowing the Whirlpool user to be tracked even further.

takuma sato, if you want your coins to be untraceable, use the WabiSabi coinjoin protocol with Wasabi Wallet, BTCPay Server, or Trezor.  It eliminates the problems of traceable change and common input ownership so every transaction you make is fully private and can never be linked to another transaction you made: https://mempool.space/tx/d465033214fd2309dcce5a90c45fcaa788aa4394ee36debe07aad8d8a37907d2
legendary
Activity: 2380
Merit: 5213
October 03, 2023, 01:37:38 PM
#17
As you said, we can freeze multiple addresses at once by selecting them and right click = freeze. But the fun fact is we can't unfreeze just like freezing, and we have to unfreeze the every frozen address individually, that is what I noticed while trying that.
No. You can unfreeze all of them at once.
Just select the frozen addresses you want to unfreeze, right click on any of them and select "Unfreeze". If you want to unfreeze all frozen addresses at the same time, you can press Ctrl+A on your keyboard, right click and select "Unfreeze".
sr. member
Activity: 910
Merit: 284
October 03, 2023, 01:01:57 PM
#16
I am aware of that, just wondered why any wallet developer didn't provide a setting to freeze multiple addresses at once, and if there is it will be helpful in someway right?
That's possible.
If you want to freeze multiple addresses at the same time, you can simply go to "Addresses" tab, drag your mouse cursor or use Ctrl button to select the addresses. After selecting the addresses you want to be frozen, just right click on any of them and select "Freeze".

Never knew that is possible on electrum. Cheesy

As you said, we can freeze multiple addresses at once by selecting them and right click = freeze. But the fun fact is we can't unfreeze just like freezing, and we have to unfreeze the every frozen address individually, that is what I noticed while trying that.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
October 03, 2023, 07:43:19 AM
#15
I would say, if you have coins you want to hide, and coins you don't need to hide, don't mix them up in the same wallet.
To add: If you'd ever have to restore your wallet from seed, you lose all address labels and information on locked inputs.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
October 03, 2023, 07:22:58 AM
#14
But is there any wallet which provide feature to freeze all the addresses at once?
If you freeze all addresses, you will not be able to spend. You are telling the wallet not to use any address as input for the new transaction, and therefore your total inputs will always be zero, and therefore you will not be able to spend.

Freezing some addresses is useful to enhance privacy and reduce fees.

Imagine if you have coins in just one address and you need to spend it. Obviously that's going to create change, so if the wallet software that you're using just has a button that says "freeze all change addresses", that will prevent you from spending any of your remaining money, since transactions in most wallets utilize change addresses by default.

I would say, if you have coins you want to hide, and coins you don't need to hide, don't mix them up in the same wallet.
legendary
Activity: 3472
Merit: 10611
October 03, 2023, 05:33:13 AM
#13
As an alternative: avoid change at all! Manually give all funds a destination, and that could include an address in another wallet named "change wallet - DO NOT SPEND".
That's a cool idea but it could become a bit messy.
If the wallet allows running multiple instances (which they sometimes don't) you'd have to open the other wallet at the same time so that you can get a new address for each change. You also would lose the visual indicators of what address belongs to you, slightly increasing the risk of making mistakes.
legendary
Activity: 2380
Merit: 5213
October 03, 2023, 04:32:53 AM
#12
I am aware of that, just wondered why any wallet developer didn't provide a setting to freeze multiple addresses at once, and if there is it will be helpful in someway right?
That's possible.
If you want to freeze multiple addresses at the same time, you can simply go to "Addresses" tab, drag your mouse cursor or use Ctrl button to select the addresses. After selecting the addresses you want to be frozen, just right click on any of them and select "Freeze".
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
October 02, 2023, 03:09:45 PM
#11
As an alternative: avoid change at all! Manually give all funds a destination, and that could include an address in another wallet named "change wallet - DO NOT SPEND".
legendary
Activity: 2114
Merit: 2248
Playgram - The Telegram Casino
October 02, 2023, 02:19:10 PM
#10
just wondered why any wallet developer didn't provide a setting to freeze multiple addresses at once, and if there is it will be helpful in someway right?
They probably did not include it cause there's low demand for the feature. I can see how it can be useful to make the process of freezing addresses much faster when you're doing something as simple as freezing a dust output or one single address.

Maybe in future some devs might attempt it, and this thread induced that idea!
This is possible. Wallets like electrum has been updating to add many of the desktop features like freezing addresses and UTXOs ok mobile, so if there's demand for it, they will make it possible to freeze multiple addresses at the same time.
sr. member
Activity: 910
Merit: 284
October 02, 2023, 01:18:34 PM
#9
But is there any wallet which provide feature to freeze all the addresses at once?
If you freeze all addresses, you will not be able to spend. You are telling the wallet not to use any address as input for the new transaction, and therefore your total inputs will always be zero, and therefore you will not be able to spend.

Freezing some addresses is useful to enhance privacy and reduce fees.

I am aware of that, just wondered why any wallet developer didn't provide a setting to freeze multiple addresses at once, and if there is it will be helpful in someway right?

Even if there is, the usefulness of that will be very low though, but I thought it won't hurt to have.

Maybe in future some devs might attempt it, and this thread induced that idea!
hero member
Activity: 862
Merit: 662
October 02, 2023, 12:37:47 PM
#8
Thats depend of your software wallet:

Example in sparrow, you can freeze and unfreeze specific utxos


My recomendation for that is to have diferent seeds depending of each source of income. Just to be sure to not mix them.

Also you can setup the change Address manually, my recomendation is always to use a new change address but some users believe the other way: Re: Using change addresses does not increase privacy, just fees
legendary
Activity: 2268
Merit: 18748
October 02, 2023, 11:40:17 AM
#7
For example in Electrum there is the option to "freeze" addresses so that you can no longer spend from them even if you don't have enough funds in your other unfrozen addresses.
You can also freeze them preemptively, OP. Open Electrum, go to the addresses tab, and right click on each change addresses and select "Freeze". When you make a transaction, Electrum will still send your change back to the next unused change address, even if it is frozen. You'll have to unfreeze specific change addresses in order to spend those outputs.

A good habit to get in to is to never make a transaction without using coin control. You will never be in the situation of your wallet including UTXOs you didn't want included if you select precisely which UTXOs to include 100% of the time. It's also a good habit to label your change output to remind you exactly where each one came from and so you can decide which ones it would be acceptable to consolidate together in one transaction. Or even better, avoid creating change altogether if possible.
legendary
Activity: 2702
Merit: 4002
October 02, 2023, 10:49:15 AM
#6
But is there any wallet which provide feature to freeze all the addresses at once?
If you freeze all addresses, you will not be able to spend. You are telling the wallet not to use any address as input for the new transaction, and therefore your total inputs will always be zero, and therefore you will not be able to spend.

Freezing some addresses is useful to enhance privacy and reduce fees.
sr. member
Activity: 910
Merit: 284
October 02, 2023, 03:46:31 AM
#5
It depends on the wallet software you use. Some of them have the option to lock addresses or lock outputs (coins) manually. For example in Electrum there is the option to "freeze" addresses so that you can no longer spend from them even if you don't have enough funds in your other unfrozen addresses.

But is there any wallet which provide feature to freeze all the addresses at once?

As far I checked, there is no such setting in most of the bitcoin wallet but if there is any then it would be new information for op, me and most of the community members.

My assumption there is no such settings in any wallet - prove me wrong guyz. Wink
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
October 01, 2023, 07:58:06 AM
#4
You'll have to spend change at some point, and at that point, you'll probably want to consolidate outputs. So what do you do? You mix.

Assume you make 500,000 sat change every month. Consolidate outputs you're confident of revealing common ownership, and send them over to a mixing-only Sparrow wallet. From that point on, you can select any of those spent change and use them in several coinjoins. The alternative, probably more expensive approach is to send change to a mixer.
legendary
Activity: 2702
Merit: 4002
September 30, 2023, 07:07:08 AM
#3
I think you should use the word freeze because lock sounds like you are looking for nLockTime.

The settings will vary depending on the software you are using, but the better wallet, the better privacy options available to you. In addition to what @pooya87 said, activate Coins tab option by going to Wallet >> Coins. Thus, before sending any transaction, you will be able to see all inputs and determine whether Do you want to spend from that address or not?

Note that Electrum is not a privacy wallet, if you are concerned about your privacy, running a full node or through Sparrow would be better.
legendary
Activity: 3472
Merit: 10611
September 29, 2023, 10:42:15 PM
#2
It depends on the wallet software you use. Some of them have the option to lock addresses or lock outputs (coins) manually. For example in Electrum there is the option to "freeze" addresses so that you can no longer spend from them even if you don't have enough funds in your other unfrozen addresses.
sr. member
Activity: 317
Merit: 448
September 29, 2023, 10:05:49 PM
#1
I have been considering locking change since I've learned about Loaded's legendary fuckup where he mixed his change with another transaction. For sure, I always use Coin Control enabled on each tx, but what I would like is to lock change addresses by default. Change coins generate new addresses (at least that's how i've set it up) but you could still make the mistake of including it in a transaction. I think locking change addresses by default and unlocking them manually when needed would be pretty useful if you want to keep any privacy, because on a long enough timeline one may end up doing that mistake. It took him 8 years. Granted the guy was getting drunk often and so on but still, it would be a good thing to have enabled if possible.
Jump to: