Bitcoin Forum
April 26, 2024, 04:08:50 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Why do I have to download all blocks before receiving bitcoins  (Read 1458 times)
cjg (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
June 24, 2011, 09:18:54 PM
 #1

On https://en.bitcoin.it/wiki/Using_Bitcoin it says that I "must get all of the blocks in the chain before sending/receiving transactions".

Can anyone tell me why this is the case?
The forum was founded in 2009 by Satoshi and Sirius. It replaced a SourceForge forum.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
jasonstx
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
June 24, 2011, 09:44:57 PM
 #2

each block contains the transaction record of each BTC in that block.  Until you download all of the blocks, you can't see that you received xyz transaction of x amount.  take a look at blockexplorer.  all those addresses for each block and one of them contains your wallet address.  Thats how you can tell you have it to spend and that your outgoing transaction is eventually confirmed.
cjg (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
June 24, 2011, 09:52:00 PM
 #3

Sure, I understand it for outgoing transactions, otherwise my balance could be wrong.

What about incoming transactions?
bitlotto
Hero Member
*****
Offline Offline

Activity: 672
Merit: 500


BitLotto - best odds + best payouts + cheat-proof


View Profile WWW
June 24, 2011, 09:54:14 PM
 #4

Think of it as a financial record book. When you get money or send money it's going to at the end of the book. To understand where everything is you have to read the whole book first. 

*Next Draw Feb 1*  BitLotto: monthly raffle (0.25 BTC per ticket) Completely transparent and impossible to manipulate who wins. TOR
TOR2WEB
Donations to: 1JQdiQsjhV2uJ4Y8HFtdqteJsZhv835a8J are appreciated.
jasonstx
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
June 24, 2011, 10:05:48 PM
 #5

lets say you have every block EXCEPT the last one, but on that last one is your incoming transaction.  It won't show up.
cjg (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
June 24, 2011, 10:21:23 PM
 #6

When we are talking about receiving a transaction, presumably that means that someone sends some bitcoins to an address generated by my client.

What if I give out an address before I've downloaded all the blocks and someone sends something to it? Why would that be bad, I'll just see the balance change in my client once it catches up to the block with the transaction in it, surely?

Why do I have to wait until I get all the blocks before someone can send some bitcoins? What if I'm just one block behind?
bitcola
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
June 24, 2011, 10:24:28 PM
 #7

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

Kermee
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
June 24, 2011, 10:55:13 PM
 #8

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

And that's how security of Bitcoins works.  If you find a better way to implement a 'P2P currency' system, we're all ears.

Cheers,
Kermee
dutt
Member
**
Offline Offline

Activity: 135
Merit: 10



View Profile WWW
June 24, 2011, 11:00:56 PM
 #9

I think you can receive stuff, you just won't know you did. That's how offline wallets work, they just generate a bunch of keys you can use without downloading any data at all.
To check the balance you'll have to use blockexplorer or something.

Tronlet
Full Member
***
Offline Offline

Activity: 224
Merit: 100


View Profile
June 24, 2011, 11:13:35 PM
 #10

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

The file isn't that big so far. When it does get bigger, there are potential solutions.

The block chain could be archived and distributed around the internet, then hashed and continued from there with nothing but the hash needed to confirm the new block chain's legitimacy.

deepceleron
Legendary
*
Offline Offline

Activity: 1512
Merit: 1025



View Profile WWW
June 25, 2011, 12:09:18 AM
 #11

You can have coins sent to your address, you just won't know about it until you have all the blocks.
Mr2001
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
June 25, 2011, 12:12:32 AM
 #12

What if I give out an address before I've downloaded all the blocks and someone sends something to it? Why would that be bad, I'll just see the balance change in my client once it catches up to the block with the transaction in it, surely?
Correct. They can send you coins before you've caught up, and you'll get them eventually.

Quote
Why do I have to wait until I get all the blocks before someone can send some bitcoins? What if I'm just one block behind?
Your client can't be sure those coins weren't already spent until it catches up to the end of the block chain.

Suppose you disconnect from the network for a few minutes, and when you come back you're one block behind. You receive a transaction from someone claiming to send you coins... but they already gave those coins to someone else while you were away, in a transaction that's in the block you're missing. If your client says you received those coins, it'll be lying, since the transaction where you received them is invalid and will never be confirmed.
bitcola
Full Member
***
Offline Offline

Activity: 210
Merit: 100



View Profile
June 25, 2011, 02:18:21 PM
 #13

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

And that's how security of Bitcoins works.  If you find a better way to implement a 'P2P currency' system, we're all ears.

Cheers,
Kermee

I don't care to make one.

Just because there's nothing better yet doesn't make the existing cumbersome nature excusable.

Why have all the blocks?

It's the equivalent of bring out movies on torrent by adding the movie onto the last one. It's not like everyone needs access to all the movies (or transactions). As long as there are enough seeders of the early ones then they will always be available.

All needs to happen is for someone break the blocks up, and MD5 hash them so that transactions can be archived and accessed with confidence.

But yeah, right now, the fact it has an ever expanding file is still pretty dumb.

kerogre256
Full Member
***
Offline Offline

Activity: 161
Merit: 100


View Profile
June 25, 2011, 02:29:19 PM
 #14

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

And that's how security of Bitcoins works.  If you find a better way to implement a 'P2P currency' system, we're all ears.

Cheers,
Kermee

I don't care to make one.

Just because there's nothing better yet doesn't make the existing cumbersome nature excusable.

Why have all the blocks?

It's the equivalent of bring out movies on torrent by adding the movie onto the last one. It's not like everyone needs access to all the movies (or transactions). As long as there are enough seeders of the early ones then they will always be available.

All needs to happen is for someone break the blocks up, and MD5 hash them so that transactions can be archived and accessed with confidence.

But yeah, right now, the fact it has an ever expanding file is still pretty dumb.
You dont get it...
luxgladius
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
June 25, 2011, 05:36:34 PM
 #15

It's pretty dumb that bitcoins has this ever expanding file that is necessary and contains details from day 1. But that's just the way it is.

And that's how security of Bitcoins works.  If you find a better way to implement a 'P2P currency' system, we're all ears.

Cheers,
Kermee

I don't care to make one.

Just because there's nothing better yet doesn't make the existing cumbersome nature excusable.

Why have all the blocks?

It's the equivalent of bring out movies on torrent by adding the movie onto the last one. It's not like everyone needs access to all the movies (or transactions). As long as there are enough seeders of the early ones then they will always be available.

All needs to happen is for someone break the blocks up, and MD5 hash them so that transactions can be archived and accessed with confidence.

But yeah, right now, the fact it has an ever expanding file is still pretty dumb.

The thing is that the latest movie doesn't require knowledge of all the past movies. However, in order to prevent double spending, you need at least knowledge of all the transactions between the time the funding transaction output was generated and the present.

The system is set up so that a future client can cut down to just the block headers (just 88 bytes each) and request the transactions that it needs to verify payment. However, because it won't have a full node and can't verify transactions by itself, this future client will have to take a wait-and-see approach to see if the transaction is accepted by the network or rejected because of a double-spend attempt. Either that or used some trusted third party that does have access to the full network history.
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!