Bitcoin Forum
April 24, 2024, 04:05:40 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Bitcoin wallet and addresses  (Read 235 times)
walerikus (OP)
Member
**
Offline Offline

Activity: 180
Merit: 18


View Profile WWW
February 27, 2020, 03:58:41 PM
Merited by suchmoon (7), bones261 (3), OmegaStarScream (2), o_e_l_e_o (1)
 #1

I have a question about the structure of Bitcoin wallet.
In bitcoin full node client and electrum (SVP) wallet there are multiple bitcoin addresses.

If I use different addresses each time, will I have a total balance on a single wallet. Or each deposit is totally separate?
If I receive multiple deposits to different addresses of total 10 BTC for example, and I want to withdraw the total amount on a different wallet address, will I have to do withdrawal from each address separately?

And finally how Exchange addresses work? It seems Exchanges have a single wallet, but they create different wallet address for each user? Do they (the exchanges) receive all deposits on a single wallet that can be managed by single administrator? Does exchanges use standard Bitcoin wallets to operate customers accounts or they use some specific software?
The Bitcoin software, network, and concept is called "Bitcoin" with a capitalized "B". Bitcoin currency units are called "bitcoins" with a lowercase "b" -- this is often abbreviated BTC.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713931540
Hero Member
*
Offline Offline

Posts: 1713931540

View Profile Personal Message (Offline)

Ignore
1713931540
Reply with quote  #2

1713931540
Report to moderator
1713931540
Hero Member
*
Offline Offline

Posts: 1713931540

View Profile Personal Message (Offline)

Ignore
1713931540
Reply with quote  #2

1713931540
Report to moderator
jackg
Copper Member
Legendary
*
Offline Offline

Activity: 2856
Merit: 3071


https://bit.ly/387FXHi lightning theory


View Profile
February 27, 2020, 04:04:17 PM
 #2

You can use as many addresses as you want and spend from them all in one go on your wallet.

Exchanges use different structures but ones like coinbase have one main address and give each user multiple addresses. Their nodes are set up to check these addresses and sign transactions to their main cold wallet address.

Funds can be spent by the exchange in this wallet but it usually only happens when their hot wallets for withdrawal are low or when they have to do things such as pay workers...
TryNinja
Legendary
*
Offline Offline

Activity: 2814
Merit: 6970



View Profile WWW
February 27, 2020, 04:06:13 PM
 #3

Every deposit, in the same or different addresses is technically separated. These are called "inputs".

However, your wallet does all the work to join them together and spend the ones needed when you are making a transaction. There is no difference.

case A)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address X;
2. Send 1.5 BTC to Binance's Address in one transaction;

case B)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address Y;
2. Send 1.5 BTC to Binance's Address in one transaction;

Exchanges create one address (or multiple addresses) linked to each user. If you have your address X, they know its yours. Everything is done automatically by their system. Every other explanation is probably way technical for you.

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
NeuroticFish
Legendary
*
Offline Offline

Activity: 3654
Merit: 6365


Looking for campaign manager? Contact icopress!


View Profile
February 27, 2020, 04:11:40 PM
Merited by suchmoon (7)
 #4

I have a question about the structure of Bitcoin wallet.
In bitcoin full node client and electrum (SVP) wallet there are multiple bitcoin addresses.

If I use different addresses each time, will I have a total balance on a single wallet. Or each deposit is totally separate?
If I receive multiple deposits to different addresses of total 10 BTC for example, and I want to withdraw the total amount on a different wallet address, will I have to do withdrawal from each address separately?

Each deposit is "separate" even in the same address! They're called inputs.
When you make a transaction, that's built from one or multiple inputs. And if on input has to be "broken" in order to obtain the correct amount, the transaction will also create an output towards an address of yours. That's called "change" (it's the same concept like you have more banknotes, just they are most probably of different sizes)
However, you just type in the recipient, the amount you want to send and maybe the fee too and the wallet will do these operations for you.


And finally how Exchange addresses work? It seems Exchanges have a single wallet, but they create different wallet address for each user? Do they (the exchanges) receive all deposits on a single wallet that can be managed by single administrator? Does exchanges use standard Bitcoin wallets to operate customers accounts or they use some specific software?

Exchanges have one or more deposit addresses for an user (especially if he clicks on "change my address").
The money those addresses receive become numbers in a database.
All the trades are really operations on those numbers in exchange's internal database (for various coins/currencies/users).
When an user withdraws, the amount is subtracted from the internal database and it's sent to the address the user wants to withdraw to. The funds are sent from the exchange's wallet and it may be from any of users' deposit addresses or not, depending on how their software is made.

It's actually more complicated since the cold wallet also may come into equation and also they may consolidate their inputs from time to time (send money to themselves to not have too many inputs; this helps on reducing the tx fees)

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
walerikus (OP)
Member
**
Offline Offline

Activity: 180
Merit: 18


View Profile WWW
February 27, 2020, 05:32:17 PM
 #5

Every deposit, in the same or different addresses is technically separated. These are called "inputs".

However, your wallet does all the work to join them together and spend the ones needed when you are making a transaction. There is no difference.

case A)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address X;
2. Send 1.5 BTC to Binance's Address in one transaction;

case B)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address Y;
2. Send 1.5 BTC to Binance's Address in one transaction;

Exchanges create one address (or multiple addresses) linked to each user. If you have your address X, they know its yours. Everything is done automatically by their system. Every other explanation is probably way technical for you.

Well, thank you very much Sir. But if X and Y addresses can be used to send funds in one transaction, how the transaction fees are calculated? Do you pay fees for each address sending funds? Or both addresses are combined in a single transaction and you pay a single fee?

Satoshi was referring that for better anonymity it's better to use different addresses for each input, and let's say, you had random ~100 inputs of micro-transactions to different addresses, and want to withdraw all of them on a different, single address? How it is being processed technically, do you pay fees as if you were sending Bitcoin from one address to another (X to Y)?
OmegaStarScream
Staff
Legendary
*
Offline Offline

Activity: 3458
Merit: 6099



View Profile
February 27, 2020, 05:37:30 PM
Merited by Thekool1s (1)
 #6

Well, thank you very much Sir. But if X and Y addresses can be used to send funds in one transaction, how the transaction fees are calculated? Do you pay fees for each address sending funds? Or both addresses are combined in a single transaction and you pay a single fee?

You pay one single fee and the fee is based on your transaction's size.

Satoshi was referring that for better anonymity it's better to use different addresses for each input, and let's say, you had random ~100 inputs of micro-transactions to different addresses, and want to withdraw all of them on a different, single address? How it is being processed technically, do you pay fees as if you were sending Bitcoin from one address to another (X to Y)?

The more inputs, the bigger your transaction (size) will become, and that means higher fees. Avoid receiving micro-transactions payments (faucets, cloud mining platforms, etc.).

Read this for more details (technical): https://bitcoin.stackexchange.com/questions/1195/how-to-calculate-transaction-size-before-sending-legacy-non-segwit-p2pkh-p2sh

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
TryNinja
Legendary
*
Offline Offline

Activity: 2814
Merit: 6970



View Profile WWW
February 27, 2020, 05:38:02 PM
Merited by bones261 (4), OmegaStarScream (2), o_e_l_e_o (2), fillippone (2)
 #7

Well, thank you very much Sir. But if X and Y addresses can be used to send funds in one transaction, how the transaction fees are calculated? Do you pay fees for each address sending funds? Or both addresses are combined in a single transaction and you pay a single fee?

Satoshi was referring that for better anonymity it's better to use different addresses for each input, and let's say, you had random ~100 inputs of micro-transactions to different addresses, and want to withdraw all of them on a different, single address? How it is being processed technically, do you pay fees as if you were sending Bitcoin from one address to another (X to Y)?
You pay more fees as the transaction is bigger in size. And its size is based on the number of inputs and outputs.

If I use the same case A which I posted above, I have 2 inputs (1 BTC, 0.5 BTC). If I send the whole amount (1.5 BTC) to one of Binance's addresses, it will have 1 output. The final transaction will be of 2 input, 1 output. Every input weights X and every output Y, the sum of them will be Z. If I multiply Z (the size, in bytes) by the amount of fee I decide to use (in satoshis per byte), I get the total fee paid.

In easy words, we pay more fees according to:
1. how many inputs we have (how many separate transactions we received that we are going to spend);
2. how many output we have (how many addresses we are sending to; so, if we send to 3 addresses, we pay more fees than sending to 1 address).

If we have 100 inputs of micro transactions, we will have to pay a lot of fees and this will probably eat a big part of our total amount. That's why dust transactions are called "dust" and are sometimes considered useless (you pay more in fees to spend them than the actual amount you are sending).

Now, if instead of the 100 inputs of micro transactions I get the whole amount in 2 inputs, I will pay 50 times less fee for the same cost/effective.

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
o_e_l_e_o
In memoriam
Legendary
*
Offline Offline

Activity: 2268
Merit: 18507


View Profile
February 27, 2020, 07:46:56 PM
 #8

To follow on from TryNinja's answer, it is worth mentioning that it doesn't matter which address the inputs are currently at when it comes to calculating fees. All inputs, even ones at the same address, remain separate until they are spent together with other inputs.

If you have an input of 1 BTC at address X, and and an input of 0.5 BTC at address Y, it will cost exactly the same to send them both as it would if both inputs were stored at address X. You shouldn't be tempted to reuse the same address because you think it will save you money on fees - it won't.
Abdussamad
Legendary
*
Offline Offline

Activity: 3598
Merit: 1560



View Profile
February 28, 2020, 12:44:01 AM
 #9

Every deposit, in the same or different addresses is technically separated. These are called "inputs".

However, your wallet does all the work to join them together and spend the ones needed when you are making a transaction. There is no difference.

case A)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address X;
2. Send 1.5 BTC to Binance's Address in one transaction;

case B)
1. Receive 1 BTC in Address X;
1. Receive 0.5 BTC in Address Y;
2. Send 1.5 BTC to Binance's Address in one transaction;

Exchanges create one address (or multiple addresses) linked to each user. If you have your address X, they know its yours. Everything is done automatically by their system. Every other explanation is probably way technical for you.

Well, thank you very much Sir. But if X and Y addresses can be used to send funds in one transaction, how the transaction fees are calculated? Do you pay fees for each address sending funds? Or both addresses are combined in a single transaction and you pay a single fee?

Satoshi was referring that for better anonymity it's better to use different addresses for each input, and let's say, you had random ~100 inputs of micro-transactions to different addresses, and want to withdraw all of them on a different, single address? How it is being processed technically, do you pay fees as if you were sending Bitcoin from one address to another (X to Y)?

using multiple addresses doesn't cost you more money. just use your wallet and don't worry about details like these.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!