Address changing

Gass

Member
Mar 15, 2021
67
25
58
33
gabrielsalinas.codes
I checked my wallet address and it's not the same as before, why is that? And what happens if someone sends Dash to the other one? This is a little bit confusing...
 
Last edited:

TanteStefana

Grizzled Member
Foundation Member
Mar 9, 2014
2,871
1,863
1,283
Hi @Gabriel Salinas . I don't want to sound like I'm talking down to you, so please forgive me if I'm being too basic. First of all, are you using the core wallet? The main one on your computer/desktop rather than a phone or tablet?

Anyways, a lot of wallets will pull up a new deposit address every time you request a payment. This is to help with the most basic privacy. If all you used was one address, anyone you gave that address to could look it up and see how much Dash you have, and how much you spent, and it can become a terrible security issue if someone discovers you are the person who has a large crypto balance in your address. So requesting a payment should give you a new address each time.

All your addresses act as a pool that give you your sum total of Dash.

In Dash you can also mix your coins. The first thing that happens in mixing is the units are broken down into units of 10.0001 1.001 0.100 etc.... and given new then they are "mixed" with other people's wallets (never really leaving your wallet's control) but on the blockchain, you only see a bunch of the same unit values coming in and going out, thus you can't tell which input belongs to which output. Yet everything is visible on the blockchain.

So my first thought as to why your coins are in multiple addresses are:

1. you requested a payment in the wallet, which opened a new address automatically or
2. you accidentally hit mixing which is a button in the core wallet.

Please let me know if I was not understanding, but I hope that helped a little bit??
 

Gass

Member
Mar 15, 2021
67
25
58
33
gabrielsalinas.codes
Hi @Gabriel Salinas . I don't want to sound like I'm talking down to you, so please forgive me if I'm being too basic. First of all, are you using the core wallet? The main one on your computer/desktop rather than a phone or tablet?

Anyways, a lot of wallets will pull up a new deposit address every time you request a payment. This is to help with the most basic privacy. If all you used was one address, anyone you gave that address to could look it up and see how much Dash you have, and how much you spent, and it can become a terrible security issue if someone discovers you are the person who has a large crypto balance in your address. So requesting a payment should give you a new address each time.

All your addresses act as a pool that give you your sum total of Dash.

In Dash you can also mix your coins. The first thing that happens in mixing is the units are broken down into units of 10.0001 1.001 0.100 etc.... and given new then they are "mixed" with other people's wallets (never really leaving your wallet's control) but on the blockchain, you only see a bunch of the same unit values coming in and going out, thus you can't tell which input belongs to which output. Yet everything is visible on the blockchain.

So my first thought as to why your coins are in multiple addresses are:

1. you requested a payment in the wallet, which opened a new address automatically or
2. you accidentally hit mixing which is a button in the core wallet.

Please let me know if I was not understanding, but I hope that helped a little bit??
@TanteStefana thank you for taking the time to write such a great answer. One more question do, let's say I loose my main address where should I search for it if the Dash wallet app gives me new addresses? Or it does not matter?
 

strophy

Administrator
Dash Core Team
Dash Support Group
Feb 13, 2016
767
451
133
Hi @Gabriel Salinas and thanks @TanteStefana for your excellent description of how and why addresses change!

The mechanism for generating new addresses depends on the wallet. Most mobile wallets and hardware wallets use BIP32 hierarchical deterministic addresses, a mechanism of generating new addresses in a chain, based on a seed (specified in BIP39). Other wallets, like Dash Core, randomly generate key/address pairs and store them in a wallet file, usually called wallet.dat.

When you receive Dash, it arrives at one of the addresses controlled by your wallet and sits there. When you send Dash, the wallet will gather together as many unspent transaction outputs (UTXOs) as necessary to make up the amount. This could be multiple UTXOs from one address, or also from different addresses - it doesn't matter, as long as the wallet has the private keys for the addresses, it can construct a transaction.

Since the amount is unlikely to be exact, the change is sent to a new, unused address in the user's wallet. This makes it harder for an adversary to link addresses together over time. When you are requesting to receive Dash, wallets will almost always provide a new address (often as a QR code) for you to give to the party sending the Dash. This is also to protect privacy.

What I have described here generally applies to Bitcoin and Dash (with BIP44) and other related currencies. Ethereum generally uses one address for everything instead, which is a different and less privacy-oriented approach.
 
  • Like
Reactions: Gass

Gass

Member
Mar 15, 2021
67
25
58
33
gabrielsalinas.codes
I quote from https://en.bitcoin.it/wiki/Address_reuse

Also when sending money to people always ask them for a brand new bitcoin address.
Isn't this a paine for users? In theory sounds nice but in the practice you don't want to do that...

Worked Example 1 - Savings Revealed

- You save in bitcoin, using a single-address paper wallet.
- All your bitcoin savings to this same address, let's say it contains $1 million worth.
- You buy a small amount of bitcoins to add to your savings, depositing in the paper wallet.
- The person who sold you the bitcoins follows their trail on the blockchain and finds your paper wallet containing $1 million.
- He mentions it to someone in a cafe or bar.
- Word gets around. A burglar raids your home. Kidnappers capture your children and know exactly how much to demand in ransom.
I never thought about an scenario like this.. Privacy in this case makes so much sense..
 
Last edited:
  • Like
Reactions: xkcd

xkcd

Active Member
Masternode Owner/Operator
Feb 19, 2017
254
226
103
australia
mnowatch.org
Dash Address
XpoZXRfr2iFxWhfRSAK3j1jww9xd4tJVez
That's why DASH has built in coinjoin and I personally mix all my coins and never use the same address twice.
 

thephez

Member
Dash Core Team
Jan 23, 2016
125
62
78
I quote from https://en.bitcoin.it/wiki/Address_reuse

Isn't this a paine for users? In theory sounds nice but in the practice you don't want to do that...
It can be, but when dealing with cryptocurrency security is the highest priority - if it's not secure nothing else matters. This user experience issue was part of the motivation behind the DashPay wallet that is being built on Dash Platform. This DashPay DIP describes how this will work without compromising security : https://github.com/dashpay/dips/blob/master/dip-0015.md#dashpay-features.
 
  • Like
Reactions: strophy and Gass

TanteStefana

Grizzled Member
Foundation Member
Mar 9, 2014
2,871
1,863
1,283
RE: Core wallets, is there a reason that they don't use deterministic addresses other than that was the first type of wallet created by Satoshi Nakamoto? Is it less safe in any way? Because it seems to me, that it'd be easier to lose a back up of a wallet (only digital) than to lose the deterministic words. Maybe we should eliminate the old style wallet.
 

TanteStefana

Grizzled Member
Foundation Member
Mar 9, 2014
2,871
1,863
1,283
@TanteStefana thank you for taking the time to write such a great answer. One more question do, let's say I loose my main address where should I search for it if the Dash wallet app gives me new addresses? Or it does not matter?
And I'm so sorry for disappearing, I have lost the habit of using the forum, and will try to be a better member :)