Author

Topic: When is a BTC address actually created? (Read 132 times)

legendary
Activity: 3472
Merit: 4801
April 26, 2024, 03:41:51 PM
#6
I think I understand the answers,
I think you probably don't.

but also suspect the question is not being asked correctly.
Or, more likely, you're asking a question that doesn't make any sense and therefore doesn't have an answer.

I am thinking quite a bit different.  Presume someone creates a new private key and a new public address.
Then it exists.  If they created it in their mind, then it exists in their mind. If they created it with pencil on paper, then it exists as something written on paper. If they created it with wallet software, then it exists in the wallet software.

If, before doing anything else, search all the nodes and all the existing blocks and that public address will not be found.
Well, if they created it within their own node, then they'd find it there I suppose.

My perspective is that it does not really exist in the BTC world.
You're really going to need to either spend more time understanding what I wrote above, or do a better job of explaining what you mean by "exists".

I currently presume that when someone initiates a transfer that results in coins being deposited in address X
You're on the technical support subforum asking a technical question.  As such, you're not going to understand the answers to this question until you understand and accept these facts:
  • "coins" don't exist in bitcoin.
  • There are no addresses in the blockchain nor are there addresses in any standard bitcoin transaction
  • Nothing is ever "deposited" anywhere when a bitcoin transaction is created, broadcast, or confirmed
  • As far as the Bitcoin protocol is concerned there are no "accounts", there are no "balances". Wallet software can add up all the individual transaction outputs and display it to you as a balance, but the blockchain and the transactions have no knowledge of such balances and don't need to.

this is when address X is first instantiated when it first becomes part of the BTC world.
It is not. Nothing is "instantiated". The address doesn't "exist" any more after that transaction than it did before. The only thing that changes is that, using a standard set of rules to convert the transaction output scripts into simplified form to display to humans, other nodes and block explorers can display that data in a format that we all agree to call an "address" when they inspect the transaction.

It is when the BTW world first becomes aware of that specific address.

Is this a valid statement?
No.
It would be a valid statement to say that once you tell someone an address, then they will know about the address.
It would be a valid statement to say that once an individual node receives a transaction, that node can determine what the transaction output scripts are, and any other software (such as a wallet or block explorer) that interacts directly with that node can convert that output script into the standardized address format for display purposes.  Other nodes that haven't yet received the transaction will not know anything about the transaction outputs (or address) unless they have received an identical output script in some other transaction.

legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
April 26, 2024, 12:46:51 AM
#5
I currently presume that when someone initiates a transfer that results in coins being deposited in address X, this is when address X is first instantiated, when it first becomes part of the BTC world.  It is when the BTW world first becomes aware of that specific address.

Is this a valid statement?
Not technically, as explained in the first two replies.
In the Bitcoin Network, those coins aren't deposited to an address but a newly created UTXO, there's no address saved in the network.

That statement only applies to "Bitcoin World" in social media, forums, blockexploreres or wallets where address is a thing.
"Wallets" included because it is a separate feature than the network. It hodls keys, creates transactions and fetches UTXO that its keys can spend; displays addresses.
This is why I've put question to your definition of "the Bitcoin World".

So in that regard, your question is "is an address created once it received bitcoins?" in a sense that 'the Bitcoin World' is what people see.
By disregarding the network, try to type any unused valid address to any blockexplorer and it'll "find" it since addresses have always been existing.

Additionally, the first transaction related to address: 11111111111111111111BZbvjr representing the number '1' was on 2011.
But that doesn't mean that number 1 or 11111111111111111111BZbvjr is created on 2011, number 1 has been existing since humans learn to count;
In that address' case, ever since p2pkh is implemented.
Because every address that represents HASH160 value of 0x01 to 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF have always been existing.
member
Activity: 69
Merit: 34
April 25, 2024, 11:16:37 PM
#4
...
So, to try and answer your question:
  • A bitcoin address is just a number, so any given address has always "existed" for as long as numbers have existed.
...
[/list]


I think I understand the answers, but also suspect the question is not being asked correctly.
I am thinking quite a bit different.  Presume someone creates a new private key and a new public address.  If, before doing anything else, search all the nodes and all the existing blocks and that public address will not be found.  My perspective is that it does not really exist in the BTC world.  Just because something is possible, does not mean it exists.

I currently presume that when someone initiates a transfer that results in coins being deposited in address X, this is when address X is first instantiated, when it first becomes part of the BTC world.  It is when the BTW world first becomes aware of that specific address.

Is this a valid statement?
legendary
Activity: 3472
Merit: 4801
April 23, 2024, 04:18:41 AM
#3
Presume I create a new key, then calculate a public address from that key.  So far, it is just on my computer and is not what I would call a real address.  If I then send some coins to that address, does that automatically create the address in the real bitcoin world?  Maybe I go to Gemini and enter that public address as the receiving address and move some coins.  Does that result in the new address being created?  Are there other methods worth mentioning?

I suspect, that new addresses are created, in the real BTC world, when some amount of coin is sent to the address.  Is there more to it than this?

A bitcoin address is simply a representation of a number. Asking when it is "created in the real world" is a bit like asking when the number 5 is created in the real world?

The number that a Bitcoin address represents is just a way to make it easier for us humans to talk about transferring control over value. There aren't any actual addresses in the electronic form of transactions or in the blockchain itself. Instead, using a standard set of rules, data that does exist in binary form in those places (specifically, a pre-defined set of output scripts) are converted into "addresses" by our wallet software and by block explorers whenever that data is to be displayed to humans.

So, for the old bitcoin addresses that start with a 1, when you say "please send 2 bitcoins to the following address 1PMycacnJaSqwwJqjawXBErnLsZ7RkXUAs" you are essentially saying:

"Create transaction that includes in one of its outputs a requirement that: to be allowed to use the output as an input to a future transaction, the spender must supply a binary representation of an ECDSA public key from the secp256k1 elliptic curve such that when hashed with SHA256 and RIPEMD160 hashing algorithms will result in a binary value of 1111010101001010010110000101000111101001001101110010101110000111100000010000101 0100011100110000011001101110100101110011111001111110110000000101101101110001100 01 and the spender must also supply a binary representation of an ECDSA digital signature of that future transaction which can be validated with that same public key on that same curve. Of the sum of the value found in all of the inputs of this transaction, assign to this requested output a binary value of 1011111010111100001000000000.

Perhaps you can see how the request using the "address" is easier than asking literally for what you want.  As a community, we've all implicitly agreed to a standardized way to convert back and forth between what's actually being requested and the more simplified way of requesting it.  Then, creators of wallet software, custodial accounts, and block explorers have all written software that handles that conversion for us.

So, to try and answer your question:
  • A bitcoin address is just a number, so any given address has always "existed" for as long as numbers have existed.
  • Within your wallet software, your bitcoin addresses "exist" as soon as your wallet has chosen it's private keys, since it can generate those addresses for display to you from those private keys whenever you want to see them.
  • Within the wider Bitcoin network, other software (other wallets, block explorers, etc) can display the addresses you use in your transactions by converting the transaction output scripts into an address representation via the standardized rules of how to represent that information as a number
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
April 22, 2024, 11:43:30 PM
#2
If I then send some coins to that address, does that automatically create the address in the real bitcoin world?
Depends on how you define "real bitcoin world".
The Bitcoin Network? If so, there's no addresses in every node's mempools or the Bitcoin blockchain, just scripts.

That address is just a representation of a locking script,
If you send your address to someone, you're basically instructing the sender's wallet to create new outputs with the script derived from that address.
If you see sender and recipient address in your wallet, it's just conveniently displayed as addresses by your wallet.
So, there's no "created" address in the "real bitcoin world", addresses stays in the wallet as a human-friendly way to show senders and recipients.

I'd redirect you to learn "UTXO" instead:
member
Activity: 69
Merit: 34
April 22, 2024, 10:16:32 PM
#1
Presume I create a new key, then calculate a public address from that key.  So far, it is just on my computer and is not what I would call a real address.  If I then send some coins to that address, does that automatically create the address in the real bitcoin world?  Maybe I go to Gemini and enter that public address as the receiving address and move some coins.  Does that result in the new address being created?  Are there other methods worth mentioning?

I suspect, that new addresses are created, in the real BTC world, when some amount of coin is sent to the address.  Is there more to it than this?

Jump to: