For the people that mention Tor with Electrum, I understand that. I mentioned Electrum, because I think it can be used on mobile phone. Privacy wallets can't. So the idea was to coinjoin funds I want to spend, then spend them with Electrum through a phone so I can pay without having to carry a laptop around which is insanely annoying. I need to get the funds first in a phone ready to spend.
If you get paid in BTC address you have on an Electrum wallet, and you want to pay for someone
- snip -
For example, you get paid in address A which has 0.1 BTC
You don't want to disclose you own 0.1 BTC to this person/entity, so you want to spend 200 USD on this good or service, which are like 0.004855 BTC at current rate.
How do you do this?
- snip -
First of all, you should always use a new address for EVERY transaction you receive.
So, if that 0.1 BTC was received as 5 separate payments of:
- 0.0301 BTC
- 0.0039 BTC
- 0.0408 BTC
- 0.0019 BTC
- 0.0233 BTC
Then you can just use the two smallest outputs (0.0301 BTC + 0.0019 BTC = 0.0058 BTC) to fund your transaction. In this way, the entity will see no link at all to the three larger outputs under your control.
Or, if you prefer, you could use just the 0.0233 BTC output to fund the transaction, significantly reducing the visibility from the full 0.1 BTC to just 23% of your balance.
Now, if you have only ever received a single transaction, and the amount of that single transaction was 0.1 BTC, then maintaining privacy of that balance will be more difficult.
If you're willing to pay repeated transaction fees over many days/weeks/months/years to gain some privacy, one thing you could do to increase your privacy a bit would be to generate a random time and then after waiting that amount of time from receiving your initial transaction create a new transaction to split your balance by a random percentage and send each portion to a new addresses in your wallet. Then after another random time, chose one of the two outputs randomly, and split that to 2 new addresses. Then after another random amount of time, chose one of the three outputs in your wallet and split that to 2 new addresses, and so on until you have several random sized outputs all created at random different times from random earlier outputs. This will make it much more difficult for the entity to distinguish between outputs that you still control.
If you're only trying to maintain privacy from one particular entity, and you don't mind another entity knowing about your larger single UTXO, you could briefly send your 0.1 BTC to a popular entity that pools the bitcoins they receive (such as an exchange or a gambling website). As an example, let's assume you use Coinbase. Then you could withdraw random percentages of the 0.1 BTC, each to a separate address in your wallet. It would become extremely difficult for the entity you are trying to maintain privacy from to determine which of the many, many outputs Coinbase sent were sent to addresses of yours vs. addresses of other people.
Another option might be to use an intermediary (friend?, family?, etc) that you aren't concerned about knowing how much BTC you have in the transaction you received. You could make an arrangement for the intermediary to make the payment on your behalf, and then later you could send a payment amount to the intermediary at a new address compensating them for helping you.
There are probably more options, but those are the few that come immediately to mind.
Note: if the entity you are trying to maintain privacy from is a government entity, it's possible that some of these processes to hide the source of funds might be considered "money laundering" by some governments. This may be illegal in somme jurisdictions, and you may need to talk to a lawyer to make sure that you're not doing anything that could be charged as a crime.
Requesting a different address is not always an option. For instance, in the example of anyone here recieving payments in exchange of advertising a website through signatures. The managers of these signature campaigns I assume wouldn't want to deal with a different address per payment, so they ask you to keep the same address for the duration of the campaign.
You mentioned Coinbase, not an option since that requires KYC. So a non-kyc exchange or casino that allows for Tor usage would do. But which ones do? This is definitely a better idea than using a mixer tho. Like I said before, you mix your stuff, send it to someone, this someone puts it on an exchange and you may or not have a problem. It should be perfectly legal to use a mixer to not disclose your funds everytime you pay someone, but this is the world we live in now.
If instead, you send the funds you want to use to an exchange that isn't KYC and get them back, you can now use them without putting in trouble the person that you are paying if this person deposits these funds into a KYC exchange.
Intermediaries are not an option.
The payment is a small payment, so im not too worried about things, and it is not some government thing. It's just that if you buy an used item from someone that sells it on a webpage in exchange of BTC for instance, you don't want to tell this person that you own 0.1 BTC, so im looking for the most efficient way to go about things. Perhaps I should have asked this on the other subforum.