Author

Topic: Consolidating UTXOs and maintaining privacy (Read 469 times)

legendary
Activity: 2268
Merit: 18711
August 28, 2023, 08:05:12 AM
#51
It's BIP85, right?
No, that's something a bit more complicated. This is just incrementing the "account" level of the derivation path as defined in BIP44.

But does it work with multisig?
It does. To ensure that all your public keys are completely different and you don't reuse any of them across both wallets, then you would need to perform whatever action you are taking to all three of your seed phrases. So you would either need to add a passphrase to each seed phrase (it can be the same passphrase for all three if you wanted), or generate at a new derivation path for each seed phrase, and then create a new 2-of-3 multi-sig from those three new wallets.
hero member
Activity: 560
Merit: 1060
Alternatively, you don't even need to do that and can use the same seed phrase and just increment the account number of your derivation path. So your main wallet would be at m/84'/0'/0', and your KYCed wallet would be at m/84'/0'/1'.

This is a very good point. It's BIP85, right? But does it work with multisig?
legendary
Activity: 2268
Merit: 18711
But in the end, I don't feel like being able to take care of multiple wallets and multiple backups.
Well, as long as you have considered the risks and taken steps to mitigate against them, which it sounds like you have.

Just a quick point though - if the stumbling block is multiple wallets or multiple backups, then you can always just use the same seed phrase with a passphrase like "KYC" to create a new wallet which you will know is for KYCed coins only. Alternatively, you don't even need to do that and can use the same seed phrase and just increment the account number of your derivation path. So your main wallet would be at m/84'/0'/0', and your KYCed wallet would be at m/84'/0'/1'.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Note that multisig increases transaction fees, which is especially important when you're dealing with dust inputs.
Yes but for the time being it only has incoming transactions
Planning ahead can reduce your transaction fees later on.

I prefer simplicity.
I was thinking of something like this:
Image loading...
hero member
Activity: 560
Merit: 1060
Instead of freezing the KYCed UTXO, I will prefer to transfer only the KYCed UTXO to a newly created wallet on another device entirely and name it KYCed UTXO which will make me not to forget about it.
I would agree with Charles-Tim here. If it is vitally important to you to not mix your KYCed and non-KYCed coins, then storing them in the same wallet and relying on the wallet freezing certain UTXOs is pretty risky. What if a simple bug in the wallet means it freezes the wrong ones? What if you lose your wallet file, have to recover from your seed phrase, and lose all your UTXO labels and which ones are frozen? What if you simply misclick and unfreeze a UTXO without realizing it? And what if you accidentally sync your wallet via a third party server, therefore revealing that all your KYCed and non-KYCed are owned by the same wallet?

I also have various subsets of coins which I would not want to mingle with each other since each subset comes from a separate source, will be spent in a separate manner, has a different anonymity set, and so on, but I keep each subset in its own wallet.

I have thought about all of that. But in the end, I don't feel like being able to take care of multiple wallets and multiple backups. I prefer simplicity. The KYCed coins are consolidated into a small amount of UTXOs, all of ~same size. It will just help me remember which ones are KYCed. Additionally, I have kept a note that the first N coins are KYCed. Finally, I don't plan to buy KYC coins anymore, so I "know" that the KYC coins are only in between the first transactions of my wallet.
legendary
Activity: 2268
Merit: 18711
Instead of freezing the KYCed UTXO, I will prefer to transfer only the KYCed UTXO to a newly created wallet on another device entirely and name it KYCed UTXO which will make me not to forget about it.
I would agree with Charles-Tim here. If it is vitally important to you to not mix your KYCed and non-KYCed coins, then storing them in the same wallet and relying on the wallet freezing certain UTXOs is pretty risky. What if a simple bug in the wallet means it freezes the wrong ones? What if you lose your wallet file, have to recover from your seed phrase, and lose all your UTXO labels and which ones are frozen? What if you simply misclick and unfreeze a UTXO without realizing it? And what if you accidentally sync your wallet via a third party server, therefore revealing that all your KYCed and non-KYCed are owned by the same wallet?

I also have various subsets of coins which I would not want to mingle with each other since each subset comes from a separate source, will be spent in a separate manner, has a different anonymity set, and so on, but I keep each subset in its own wallet.
hero member
Activity: 560
Merit: 1060
Sparrow and Spectre also has coin control but I have only used it on Electrum.

Why multisig wallet? It has nothing to do with this. Instead of freezing the KYCed UTXO, I will prefer to use coin control to transfer only the  UTXO to a newly created wallet and name it KYCed UTXO which will make me not to forget about it. I will also use coin control to transfer the remaining non KYC to another wallet which I will name non KYCed.

You can use multisig to increase your security, not privacy.

Yeap! If you read my initial post, I have said that my main savings wallet is multisig. And then I said I was thinking of creating one more wallet for KYC and one for non KYC. But, I finally decided to stick to a Multisig and follow the "freeze" option to not blend my KYCed UTXOs with the non-KYC. So, MultiSig is totally irrelevant to the privacy question, but I just said it to add more details in regards to my previous posts.

edit: If I didn't mention it anywhere in the thread, then sorry for the misunderstanding.
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
Many wallets can do that, I use it in Electrum and Bitcoin Core.

Sure, I just didn't know about it.
Sparrow and Spectre also have coin control but I have only used it on Electrum.

Why multisig wallet? It has nothing to do with this. Instead of freezing the KYCed UTXO, I will prefer to transfer only the KYCed UTXO to a newly created wallet on another device entirely and name it KYCed UTXO which will make me not to forget about it. I will also transfer the remaining non KYC to another wallet which I will name non KYCed, using different VPN address for.

You can use multisig to increase your security, not privacy.
hero member
Activity: 560
Merit: 1060
Note that multisig increases transaction fees, which is especially important when you're dealing with dust inputs.

Yes but for the time being it only has incoming transactions (apart from the first ones which I used for testing purposes).

Many wallets can do that, I use it in Electrum and Bitcoin Core.

Sure, I just didn't know about it.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I have only one MultiSig (2-of-3) wallet.
Note that multisig increases transaction fees, which is especially important when you're dealing with dust inputs.

Quote
My initial KYCed UTXOs are now frozen (this is the feature).
Many wallets can do that, I use it in Electrum and Bitcoin Core.
hero member
Activity: 560
Merit: 1060
After a lot of thought, I decided to use a feature that Sparrow offers, in order to make my life simpler.

I have only one MultiSig (2-of-3) wallet.

My initial KYCed UTXOs are now frozen (this is the feature). So I need to unfreeze them if I want to use them. All the other UTXOs will never be combined with the KYCed ones.
hero member
Activity: 560
Merit: 1060
No, not at all.

You can close down Sparrow at any point during the process, and it will pick up where it left off whenever you open it again. For example, once you select coins in the "Deposit" account to coinjoin and have broadcast the initial Tx0, you can shut down Sparrow while you wait for it to confirm if you want. When you come back, you'll have your outputs in the "Premix" account ready to be coinjoined. These will automatically be enrolled in to different coinjoins over the next few minutes, depending on the available liquidity from other users. If you shut down Sparrow, then any which have not yet had that first coinjoin will simply be enrolled when you next open it. Once an output has had its first coinjoin, it will move to the "Postmix"  account. At this point it will be enrolled in to free remixes whenever Sparrow is open, as I explained above.

There is even a button at the bottom of the Whirlpool accounts to start and stop the process as you please, so you can have Sparrow open but not mixing if you want.

Being enrolled in to free remixes is essentially a random lottery between all the liquidity in the pool. Each Samourai or Sparrow wallet will have a maximum of one output of each size chosen at random be eligible for a free remix (so you will never remix with yourself). The frequency at which free remixes happen is obviously dependent on the frequency of new liquidity entering the pool. Given all this, then the higher uptime you have on your wallet then the faster you will get free remixes, but as explained, you are free to shutdown Sparrow, even for months at a time, and then open it back up again and continue where you left off.

THANKS!
legendary
Activity: 2268
Merit: 18711
I thought I had to leave my PC open all day. I mean I thought that once I close Sparrow and re-open it, it would have to restart all over again.
No, not at all.

You can close down Sparrow at any point during the process, and it will pick up where it left off whenever you open it again. For example, once you select coins in the "Deposit" account to coinjoin and have broadcast the initial Tx0, you can shut down Sparrow while you wait for it to confirm if you want. When you come back, you'll have your outputs in the "Premix" account ready to be coinjoined. These will automatically be enrolled in to different coinjoins over the next few minutes, depending on the available liquidity from other users. If you shut down Sparrow, then any which have not yet had that first coinjoin will simply be enrolled when you next open it. Once an output has had its first coinjoin, it will move to the "Postmix"  account. At this point it will be enrolled in to free remixes whenever Sparrow is open, as I explained above.

There is even a button at the bottom of the Whirlpool accounts to start and stop the process as you please, so you can have Sparrow open but not mixing if you want.

Being enrolled in to free remixes is essentially a random lottery between all the liquidity in the pool. Each Samourai or Sparrow wallet will have a maximum of one output of each size chosen at random be eligible for a free remix (so you will never remix with yourself). The frequency at which free remixes happen is obviously dependent on the frequency of new liquidity entering the pool. Given all this, then the higher uptime you have on your wallet then the faster you will get free remixes, but as explained, you are free to shutdown Sparrow, even for months at a time, and then open it back up again and continue where you left off.
hero member
Activity: 560
Merit: 1060
For what it's worth: at one point in 2017, 100k sats wasn't enough to pay for the transaction fee. It really depends on circumstances. As an example: this transaction with 33 inputs of 100k sats each resulted in only 800k sats being sent, the rest went to miners.

Oups. Great...

Here's a link to get you started: https://sparrowwallet.com/docs/mixing-whirlpool.html#mixing-with-sparrow-terminal

Note that you don't have to leave Sparrow open all the time when your coins are in Whirlpool. While Sparrow is open, your coins are available for free remixes. When you shut down Sparrow, they are not. When you open Sparrow again, it will pick right back up from where you were and they are once again made available for free remixes.

If you have a separate device already running your node, then loading Sparrow on to that would be ideal because it will be connected 24/7. But if you can't do that, then simply having Sparrow open whenever you are using your computer will still get you free remixes, just not as quickly as if it was running 24/7.

And of course make sure you are connecting to the coordinator through Tor!

I thought I had to leave my PC open all day. I mean I thought that once I close Sparrow and re-open it, it would have to restart all over again.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I get that, but I can't really find an "optimal" UTXO size... Some say the larger the better. Some say something around 100k sats is the best... Anyway
For what it's worth: at one point in 2017, 100k sats wasn't enough to pay for the transaction fee. It really depends on circumstances. As an example: this transaction with 33 inputs of 100k sats each resulted in only 800k sats being sent, the rest went to miners.
legendary
Activity: 2268
Merit: 18711
Regarding Sparrow whirlpool, I heard a podcast lately where Craig Raw (the main dev) said that Sparrow can run without GUI, as a service in the background and stay permanently open. I will check this, since leaving my computer and the application open for such a big time period is inconvenient. If I could run whirlpool as a terminal service it would be a great idea.
Here's a link to get you started: https://sparrowwallet.com/docs/mixing-whirlpool.html#mixing-with-sparrow-terminal

Note that you don't have to leave Sparrow open all the time when your coins are in Whirlpool. While Sparrow is open, your coins are available for free remixes. When you shut down Sparrow, they are not. When you open Sparrow again, it will pick right back up from where you were and they are once again made available for free remixes.

If you have a separate device already running your node, then loading Sparrow on to that would be ideal because it will be connected 24/7. But if you can't do that, then simply having Sparrow open whenever you are using your computer will still get you free remixes, just not as quickly as if it was running 24/7.

And of course make sure you are connecting to the coordinator through Tor!
hero member
Activity: 560
Merit: 1060
You'll want to spend those coins at some point though, no? If you are using Sparrow anyway, then why not just fire those coins in to Whirlpool? You can ignore them for months or even years if you want and get 100s of free remixes. Good luck to anyone trying to trace them through that. Wink Or as I mentioned above, if they are going to stay untouched then just sell them for fiat and then use that fiat somewhere else to buy back non-KYCed coins.

I don't want to sell, I don't really want to trust an exchange at this point.

Regarding Sparrow whirlpool, I heard a podcast lately where Craig Raw (the main dev) said that Sparrow can run without GUI, as a service in the background and stay permanently open. I will check this, since leaving my computer and the application open for such a big time period is inconvenient. If I could run whirlpool as a terminal service it would be a great idea.


The most important thing for you going forward then will be to ensure permanent separation of any unmixed KYC coins and your non-KYC coins, and make sure never to send coins directly between your two wallets.

Yes, exactly!

If you combine everything into one large UTXO of say 0.1BTC or something like that then either you're going to have to sacrifice privacy as all funds will be in one address at any given time, making tracing easier, or you're going to have to make a ton of change addresses inside the transaction which will cost a premium in transaction fees and kinda goes against the point of consolidating in the first place.

I get that, but I can't really find an "optimal" UTXO size... Some say the larger the better. Some say something around 100k sats is the best... Anyway

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Quote
If you send all the funds you have in each of these addresses, first from A to D and then from B and C to E, if in the future you use D and E for a transaction it will be clear that you, the owner of A that has passed KYC in the exchange, also own the other addresses.
So don't do that in the future Wink

I had said that because the initial idea of the OP was to consolidate everything into one UTXo, but I think it is not in our best interest having too large UTXos either.

If you combine everything into one large UTXO of say 0.1BTC or something like that then either you're going to have to sacrifice privacy as all funds will be in one address at any given time, making tracing easier, or you're going to have to make a ton of change addresses inside the transaction which will cost a premium in transaction fees and kinda goes against the point of consolidating in the first place.
legendary
Activity: 2268
Merit: 18711
No, I only use Sparrow which is connected to my own node. And no, I will not move coins between my wallets. Wallet A (KYC) will stay untouched (no incoming - no outgoing txs).
You'll want to spend those coins at some point though, no? If you are using Sparrow anyway, then why not just fire those coins in to Whirlpool? You can ignore them for months or even years if you want and get 100s of free remixes. Good luck to anyone trying to trace them through that. Wink Or as I mentioned above, if they are going to stay untouched then just sell them for fiat and then use that fiat somewhere else to buy back non-KYCed coins.

The most important thing for you going forward then will be to ensure permanent separation of any unmixed KYC coins and your non-KYC coins, and make sure never to send coins directly between your two wallets.
hero member
Activity: 560
Merit: 1060
If you view the balance of that wallet via anything other than your own full node, then whichever third party node(s) or server(s) you are connecting to will be able to see all the addresses in the wallet and link them together under a common owner. If you have KYCed coins in address A, and you then send some of your non KYCed coins to address B, the third parties can link those together. They could then look to see where the address B coins from, and potentially infer that you own that wallet as well.

If you want to move any coins between KYCed and non-KYCed wallets, they should be coinjoined first, otherwise you establish a link between your two wallets.

No, I only use Sparrow which is connected to my own node. And no, I will not move coins between my wallets. Wallet A (KYC) will stay untouched (no incoming - no outgoing txs).

Thanks though, cause these things used to feel obscure, but thanks to this forum, I have learnt a lot.

A bit Tongue But how cool would it be to say: "Your money is burried at +34° 59′ 20.00″, -106° 36′ 52″"? Cheesy

Super cool! Haha

Side tip: use address labels! And create regular backups, because if you'd have to restore from seed, you'd lose all your labels.
Thanks. I have done multiple mistakes in the past. I just noticed I had reused an address 13 times. Pretty cool  Tongue
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
The only thing I can think of is burrying the cash on a certain location for the seller to pick up, and hope there are no wildlife cameras in place.
Kind of inconvenient. Don't you think?  Tongue
A bit Tongue But how cool would it be to say: "Your money is burried at +34° 59′ 20.00″, -106° 36′ 52″"? Cheesy

Quote
If I have any kind of suspicion that my UTXO may be mixed and not strictly Non-KYC, it will go straight to my KYC coins wallet. Sounds good?
Side tip: use address labels! And create regular backups, because if you'd have to restore from seed, you'd lose all your labels.
legendary
Activity: 2268
Merit: 18711
With all those options, the seller can't be anonymous. I wouldn't mind selling Bitcoin for euros in cash, but I wouldn't want to show my face doing it in person. Sharing my bank account or postal address also means I'm not anonymous.
For the bitcoin seller, you can do cash via mail to anonymous PO box, to a pseudonym, to a drop off address or location, or to poste restante.

For cash in person, it is trivially easy to hide your face since COVID, and no one looks twice at anyone covering most of their face with a mask. Add in a hat or something with a hood, and you can easily be unidentifiable.

For giftcards, you can easily receive a giftcard to a burner email address, and then credit it to an online account before releasing the bitcoin.

If I have any kind of suspicion that my UTXO may be mixed and not strictly Non-KYC, it will go straight to my KYC coins wallet. Sounds good?
It depends on how you interact with your KYC wallet.

If you view the balance of that wallet via anything other than your own full node, then whichever third party node(s) or server(s) you are connecting to will be able to see all the addresses in the wallet and link them together under a common owner. If you have KYCed coins in address A, and you then send some of your non KYCed coins to address B, the third parties can link those together. They could then look to see where the address B coins from, and potentially infer that you own that wallet as well.

If you want to move any coins between KYCed and non-KYCed wallets, they should be coinjoined first, otherwise you establish a link between your two wallets.
hero member
Activity: 560
Merit: 1060
The only thing I can think of is burrying the cash on a certain location for the seller to pick up, and hope there are no wildlife cameras in place.

Kind of inconvenient. Don't you think?  Tongue

Gift card and cash are the most anonymous, but there is little to zero liquidity for both. Especially here in Greece. And if you find one user in this forum who wants to sell bitcoin, be prepared to pay in a very generous premium price.

Actually face-to-face seems good to me. But as Loyce said, they will know who I am.

Sure, but you must pay with a method which is not linked to your personal data in any way. The easiest way to do this is probably going to be via cash. You ca do this in person or via mail, or depending on your jurisdiction, you might be able to do an anonymous deposit in to the seller's bank account. Also depending on your jurisdiction you might have access to money orders or similar you can buy in cash without handing over personal details and giving/sending to the seller. Other options available to you may include any altcoins you have not linked to your identity, buying giftcards in cash and selling them for bitcoin, buying pre-paid debit cards which do not require personal information, or non-KYC ATMs.

Thanks for the options.



Thank you all. I have concluded that services like robosats seem to be the best and most convenient option. Otherwise, paying someone face to face would be also great. Every option has some disadvantages unfortunately.

Finally, I decided to do nothing with my KYC coins. I don't want to waste too much time and effort. So, I will create 1 seed with my seedsigner and I will a passphrase on top of it. I will send there all my KYC coins and it will be idle from now on. Then, I will create a multisig vault (a fresh new vault) and I will send all my non-kyc coins there. If I have any kind of suspicion that my UTXO may be mixed and not strictly Non-KYC, it will go straight to my KYC coins wallet. Sounds good?
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Sure, but you must pay with a method which is not linked to your personal data in any way. The easiest way to do this is probably going to be via cash. You ca do this in person or via mail, or depending on your jurisdiction, you might be able to do an anonymous deposit in to the seller's bank account. Also depending on your jurisdiction you might have access to money orders or similar you can buy in cash without handing over personal details and giving/sending to the seller.
With all those options, the seller can't be anonymous. I wouldn't mind selling Bitcoin for euros in cash, but I wouldn't want to show my face doing it in person. Sharing my bank account or postal address also means I'm not anonymous.
The only thing I can think of is burrying the cash on a certain location for the seller to pick up, and hope there are no wildlife cameras in place. It's not very practical though, so you're back to:
little to zero liquidity
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Let's say I wanted to buy 500,000 sats. Is there really a way to do so without ANYONE know about it?
Definitely avoid the ATM option. If you check their website, you can see that they've gone way too far with verification than they used to be. For 500,000 sat, they'd request you to give them your phone number. That's enough to track you down.

Gift card and cash are the most anonymous, but there is little to zero liquidity for both. Especially here in Greece. And if you find one user in this forum who wants to sell bitcoin, be prepared to pay in a very generous premium price.

Consolidating mixed UTXOs can reduce the privacy you gain from coinjoining and is generally not recommended.
Sure, but I don't understand why you've quoted me. It's him who wants the mixed coins to be sent in one address.
sr. member
Activity: 1680
Merit: 379
Top Crypto Casino
2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
After the coinjoins, every UTXO is non-KYC by definition. So, you can spend all the inputs to D.

If you used different Robosats identities, then coinjoining the inputs separately and then consolidating them into D is your best course. If you did use the same Robosats identity for acquiring both B and C, then your best course is to make two coinjoins, A, separately, and B with C followed by consolidation afterwards.

Consolidating mixed UTXOs can reduce the privacy you gain from coinjoining and is generally not recommended. This can be mitigated to a great degree by creating a payjoin transaction where you would join UTXOs with other users to create a payment for the combined amount of your own UTXOs. There are several wallets which support payjoins and Wasabi might add payments within coinjoins in the future but currently the most user friendly option I've seen is Samourai's Joinbot.
legendary
Activity: 2268
Merit: 18711
Let's say I wanted to buy 500,000 sats. Is there really a way to do so without ANYONE know about it?
Sure, but you must pay with a method which is not linked to your personal data in any way. The easiest way to do this is probably going to be via cash. You ca do this in person or via mail, or depending on your jurisdiction, you might be able to do an anonymous deposit in to the seller's bank account. Also depending on your jurisdiction you might have access to money orders or similar you can buy in cash without handing over personal details and giving/sending to the seller. Other options available to you may include any altcoins you have not linked to your identity, buying giftcards in cash and selling them for bitcoin, buying pre-paid debit cards which do not require personal information, or non-KYC ATMs.
hero member
Activity: 560
Merit: 1060
The first thing you need to figure out is what you want to protect against.

A is KYCed. Presumably you want to remove all traces of your KYC and end up with completely fresh coins.

B and C are known to one or more RoboSats traders. What else do these individuals know? What else are you comfortable with them being able to find out?


Hi and thanks. I wanna stay on this part of the answer for a bit. People with whom I have transacted in robosats know my name. I have paid them via debit card.

This is intriguing. I haven't thought about it but it seems like my transactions aren't fully private after all.

Let's say I wanted to buy 500,000 sats. Is there really a way to do so without ANYONE know about it?

Fellow citizen!  Smiley

Legislation is barely existent here. You can reach us in the Greek board for tax-related questions.

Hey hey! Yeah I LL see you there.
legendary
Activity: 2268
Merit: 18711
The first thing you need to figure out is what you want to protect against.

A is KYCed. Presumably you want to remove all traces of your KYC and end up with completely fresh coins.

B and C are known to one or more RoboSats traders. What else do these individuals know? What else are you comfortable with them being able to find out? Are you happy to consolidate B and C together before you coinjoin them and let each trader be aware of the other trade? Are you happy to consolidate B and/or C with other coins without coinjoining them and let these RoboSats traders follow things forward, if they wanted to?

Once you've figured out this, you can figure out which coins need coinjoined and which outputs can or cannot be consolidated. The safest route will be to coinjoin each input individually, but this will also be the most expensive and may be unnecessary depending on your needs.

Given what you say about not wanting the government to know about your holdings, then realize that if you coinjoin KYCed coins, although the government won't be able to trace your coins, they'll still deduce that you own them. An alternative solution is to send your KYCed coins back to where you bought them from, sell them, withdraw the fiat, and then use that fiat on RoboSats or similar to buy fresh, non-KYCed coins.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Fellow citizen!  Smiley

Legislation is barely existent here. You can reach us in the Greek board for tax-related questions.
hero member
Activity: 560
Merit: 1060
Then, don't use KYC, as long as it isn't illegal to do. You have no obligation to give up everything about you and your bitcoin to the government, which is exactly what you're doing when buying from a KYC-ed exchange. Buying peer-to-peer isn't illegal, and I guess it's reasonable to assume that in countries where bitcoin is taxed taxable, reporting your profit will create no problems at all.

You can still save the situation if you sell your KYC-ed coins back to the exchange and buy peer-to-peer.

I am not anymore. My coins are, for the time being, separated in KYC (older coins) and non-kyc (newer coins). My question in this post was if I could combine them, after mixing them all separately, without issue.

In Greece, legislation is not so straightforward. I just don't want to have to deal with the state in the future. That's why I ask. Thanks
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
I am kind of sceptical when it comes to KYC UTXOs because I want the government to know nothing about my coins.
Then, don't use KYC, as long as it isn't illegal to do. You have no obligation to give up everything about you and your bitcoin to the government, which is exactly what you're doing when buying from a KYC-ed exchange. Buying peer-to-peer isn't illegal, and I guess it's reasonable to assume that in countries where bitcoin is taxed taxable, reporting your profit will create no problems at all.

You can still save the situation if you sell your KYC-ed coins back to the exchange and buy peer-to-peer.
hero member
Activity: 560
Merit: 1060
I don't expect governments to care about 0.005BTC, and I fully trust they're not capable of tracing it.

Certainly, but my question can be beneficial to anyone. Therefore it can apply to people with much larger UTXOs etc.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I am kind of sceptical when it comes to KYC UTXOs because I want the government to know nothing about my coins.
I don't expect governments to care about 0.005BTC, and I fully trust they're not capable of tracing it.

Quote
In their mind, Bitcoin is used for illegal activities. In reality, I just exchange a small amount of Euro to buy something more valuable. But apparently it is not something they want, at least in southern Europe where I live.
Here, as long as I'm not doing anything illegal, "liking it" isn't defined in the law. So I have to report my taxes, and that's it. I'm surprised they haven't asked for a list of owned addresses yet, that's probably only because they can't handle it, not because they don't want it. But once they do, I'll create billions of addresses for them Cheesy
hero member
Activity: 560
Merit: 1060
2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
After the coinjoins, every UTXO is non-KYC by definition. So, you can spend all the inputs to D.

If you used different Robosats identities, then coinjoining the inputs separately and then consolidating them into D is your best course. If you did use the same Robosats identity for acquiring both B and C, then your best course is to make two coinjoins, A, separately, and B with C followed by consolidation afterwards.

Thanks, no I always change robosats robot (identity).

I am kind of sceptical when it comes to KYC UTXOs because I want the government to know nothing about my coins. In their mind, Bitcoin is used for illegal activities. In reality, I just exchange a small amount of Euro to buy something more valuable. But apparently it is not something they want, at least in southern Europe where I live.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
After the coinjoins, every UTXO is non-KYC by definition. So, you can spend all the inputs to D.

If you used different Robosats identities, then coinjoining the inputs separately and then consolidating them into D is your best course. If you did use the same Robosats identity for acquiring both B and C, then your best course is to make two coinjoins, A, separately, and B with C followed by consolidation afterwards.
hero member
Activity: 560
Merit: 1060
You can coinjoin A into UTXO D
Then send all of B, C and D with the lowest fee possible to one UTXO; E.
- Jay -

Hi Jay. This seems like a good choice. Thanks
hero member
Activity: 644
Merit: 661
- Jay -
You can coinjoin A into UTXO D
Then send all of B, C and D with the lowest fee possible to one UTXO; E.

Just out of curiousity, what do you mean? Are the amounts too small to worry about it being KYCed?
Or it means that the fee being paid is to high and defeats the purpose of consolidating, so a better option will be to skip all the hoops of coinjining and just use the least expensive method to send all the UTXOs into one single output.

- Jay -
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Just out of curiousity, what do you mean? Are the amounts too small to worry about it being KYCed?
I mean I wouldn't worry about it Wink It's not enough to fear a $5 wrench attack when you buy a coffee, and I doubt your exchange is going to hunt you down for it either.
hero member
Activity: 560
Merit: 1060
In that case, I wouldn't worry about it.
In this case I'd stop worrying about the "KYC exchange" knowing something about you, and just send everything to one address with the lowest possible fee.

Just out of curiousity, what do you mean? Are the amounts too small to worry about it being KYCed?
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
... but I think it is not in our best interest having too large UTXos either.
why do you say so?
If you make a small payment from a rich address, the seller might know too much about you.

Quote
I also need to clarify that when I say large UTXO, I mean less than 500k sats
In that case, I wouldn't worry about it.

Quote
For each UTXO:

+ 2 rounds with 10 collabs with max collab fee: 2000 per coinjoin = 40,000 sats.
+ mining fees
That's about 10% of the total amount! In this case I'd stop worrying about the "KYC exchange" knowing something about you, and just send everything to one address with the lowest possible fee.
sr. member
Activity: 854
Merit: 424
I stand with Ukraine!
Why do you have idea to consolidate KYC and non-KYC UTXOs into a same D?

It is easy to create two wallets for KYC UTXOs and non-KYC UTXOs, so why don't do this and avoid unnecessary mess. Your privacy relates to your inputs and outputs, how you use them before and after Coinjoins. Mixing two types of UTXOs and send them to one wallet, one address is bad idea.
hero member
Activity: 560
Merit: 1060
... but I think it is not in our best interest having too large UTXos either.

why do you say so? I also need to clarify that when I say large UTXO, I mean less than 500k sats

I don't know the fees your planning to pay. Can you share (approximate) numbers?


Not really, because it's hard to estimate. But assuming let's assume:

For each UTXO:

+ 2 rounds with 10 collabs with max collab fee: 2000 per coinjoin = 40,000 sats.
+ mining fees

legendary
Activity: 1372
Merit: 2017
Quote
If you send all the funds you have in each of these addresses, first from A to D and then from B and C to E, if in the future you use D and E for a transaction it will be clear that you, the owner of A that has passed KYC in the exchange, also own the other addresses.
So don't do that in the future Wink

I had said that because the initial idea of the OP was to consolidate everything into one UTXo, but I think it is not in our best interest having too large UTXos either.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
You mean consolidating them. Not just use address E twice. Correct?
Yes. Just use both inputs for the transaction.

What about privacy?
B and C both came from RoboSats, so someone knows the link already. A and BC won't get linked on-chain if you send them to D and E respectively.

Quote
If you send all the funds you have in each of these addresses, first from A to D and then from B and C to E, if in the future you use D and E for a transaction it will be clear that you, the owner of A that has passed KYC in the exchange, also own the other addresses.
So don't do that in the future Wink
legendary
Activity: 1372
Merit: 2017
How about this alternative:
Send A to D.
Create a new address E.
Send B and C to E.

Usually, consolidating funds is meant to reduce transaction fees in the future. If you're using coinjoin, you pay a fee that is higher than the transaction fees, so there's no gain in consolidating funds anymore.

What about privacy?

If you send all the funds you have in each of these addresses, first from A to D and then from B and C to E, if in the future you use D and E for a transaction it will be clear that you, the owner of A that has passed KYC in the exchange, also own the other addresses.

The only thing I can think of is not to send the whole amount in those transactions you propose so that it is not obvious that it is a self-transfer.
hero member
Activity: 560
Merit: 1060
Create a new address E.
Send B and C to E.

You mean consolidating them. Not just use address E twice. Correct?

Usually, consolidating funds is meant to reduce transaction fees in the future. If you're using coinjoin, you pay a fee that is higher than the transaction fees, so there's no gain in consolidating funds anymore.

But I want my UTXOs to be larger. Do you mean that coinjoin and consolidation mustn't be combined, or that it is not worth it in terms of fees?
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Current Situation
I have 3 UTXOs (A, B, C). A is from KYC exchange, B and C are from RoboSats.

Desired Actions

1. Mix the UTXOs doing some coinjoins
2. Consolidate the UTXOs to a larger UTXO and send it to a specific address that I own (D).
How about this alternative:
Send A to D.
Create a new address E.
Send B and C to E.

Usually, consolidating funds is meant to reduce transaction fees in the future. If you're using coinjoin, you pay a fee that is higher than the transaction fees, so there's no gain in consolidating funds anymore.
hero member
Activity: 560
Merit: 1060
Know that if you want privacy, you may not need to use a KYC exchange at all because all the coins you buy or received on the exchange are recorded and known even after  you withdraw the coins. Although, there may still be other reasons you feel like to consolidate coins from KYC exchanges.

2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
I will prefer this because I will prefer to conjoin the KYC one separately and will not make it link to the non KYC ones. Although...

Q1: I reckon that action 3 is the worst since I am mixing the original UTXOs all together and therefore someone would be able to tell that the person who owns A, does own B, C too. Am I correct?
...this one is good as well.


Hello. From your response, I believe that I should treat Non-KYC and KYC coins completely separately, even after coinjoining them. That's what I thought too, but I am not certain why (1) and (2) differ. Finally, I must say I started buying Non-KYC bitcoin thanks to this forum, but I still own some UTXOs that are linked to Binance, unfortunately.
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
Know that if you want privacy, you may not need to use a KYC exchange at all because all the coins you buy or received on the exchange are recorded and known even after  you withdraw the coins. Although, there may still be other reasons you feel like to consolidate coins from KYC exchanges.

2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
I will prefer this because I will prefer to conjoin the KYC one separately and will not make it link to the non KYC ones. Although...

Q1: I reckon that action 3 is the worst since I am mixing the original UTXOs all together and therefore someone would be able to tell that the person who owns A, does own B, C too. Am I correct?
...this one is good as well.

3. Consolidate A, B, C in advance and then do some coinjoins and send the output to D.
Not advisable because of the KYC coins.
hero member
Activity: 560
Merit: 1060
Hello.

Current Situation
I have 3 UTXOs (A, B, C). A is from KYC exchange, B and C are from RoboSats.

Desired Actions

1. Mix the UTXOs doing some coinjoins
2. Consolidate the UTXOs to a larger UTXO and send it to a specific address that I own (D).

Possible Actions

1. Do some coinjoins on A, B, C separately and then consolidate them into D.
2. Do some coinjoins on A, B, C separately and then consolidate only the non-kyc UTXOs (B, C) and send them to D.
3. Consolidate A, B, C in advance and then do some coinjoins and send the output to D.

Thoughts - Questions

Q1: I reckon that action 3 is the worst since I am mixing the original UTXOs all together and therefore someone would be able to tell that the person who owns A, does own B, C too. Am I correct?
Q2: I believe (1) and (2) to be the same actually. If I mix the UTXOs separately, someone would be able to know that A is linked to my Identity, but they wouldn't be able to know which coinjoin output corresponds to the input. Therefore, I should be ok. Am I correct?
Q3: Which of the possible actions should I choose?
Jump to: