<p>The short answer to your question is "no". The reason is actually pretty simple: Without the entire block chain, there is no way to know that funds that are claimed to have been sent to you weren't actually sent to someone else. There is no way to prove the absence of a conflicting transaction, other than to check <em>every</em> valid transaction.</p>

<p>With a bank, the bank clears your checks for you. Here, you clear your own checks. Without knowing every check an account has received or sent out, how can you know the account has sufficient balance to cover your check?</p>

<p>Of course, you don't have to run the Bitcoin client. Your alternative is trust someone else with your coins.</p>

CC BY-SA 3.0
2012-01-25T16:21:05.027Z
I suggest some links that clarify the phrase "Your alternative is trust someone else with your coins." When you just write it like that, it seems very stupid to do so.
ripper234
CC BY-SA 3.0
2012-01-26T07:25:39.267Z
I think the analogy with banks makes it clear. We all trust our money to banks, credit card companies, and so on.
David Schwartz
CC BY-SA 3.0
2012-09-16T19:08:20.413Z
I wonder, does this mean there will be a Bitcoin bank in the future (trusted to hold and manage transaction history?)
makerofthings7
CC BY-SA 3.0
2012-01-24T00:16:12.120Z
2012-01-24T00:16:12.120Z
David Schwartz
<p>Bitcoin is a new approach to security of money, offering nigh-full transparency. You can "audit" any account and see what transactions were performed without a problem. With traditional models, like Paypal or the banks, you can't do that. As Bitcoin is P2P, it needs to have all the data to be able to validate all of it. This way no single entity can take the whole network down, or freeze anyone's account.</p>

<p>There are works done, however, on a set of servers forming <a href="https://bitcointalk.org/index.php?topic=55842.0" rel="nofollow noreferrer">Stratum overlay network protocol</a> that will be handling almost all of data handling for very thin clients. In this model one would not need to download or validate the entire blockchain, but some people see this as giving up their security (this issue is addressed and debunked <a href="https://bitcoin.stackexchange.com/questions/2613/how-secure-are-various-models-of-bitcoin-clients">here</a>).</p>

<p>A third option is thin clients that validate all the data, but prune older blocks that they don't need themselves. This approach would save hard drive space, but not the initial validation time.</p>

<p>In short, if all Bitcoin data was stored on a single website, the system would be vulnerable to being taken down and trust would be centralized. With the standard client, one need not trust any single individual, so security is greater. There are are other solutions being developed that will be something in-between the two.</p>

CC BY-SA 3.0
2012-01-24T00:59:03.440Z
2012-02-07T10:02:50.597Z
2017-04-13T12:47:33.743Z
ThePiachu
<p>With paypal you trust paypal; here <em>you</em> check all history and ensure it is correct.</p>

<p>Still, you usually don't care about that, and that's why there are "thin clients" which only download the necessary data and check only the blocks regarding your transactions.</p>

CC BY-SA 3.0
2012-01-23T09:27:22.453Z
2012-01-25T13:23:46.103Z
2012-01-25T13:23:46.103Z
o0'.
<p>The bitcoin client devs has said they will be working on this very problem in the future versions of the client, possibly only downloading a subset of the blockchain. Because as years go by, the blockchain will grow very large, given the current amount of transactions plus some growth, in 10 years it will approach 50GB, this is simply unsustainable. </p>

CC BY-SA 4.0
2021-03-22T22:51:04.377Z
Oh, how we wish your prediction were true and the blockchain had only approached 50 GB by now :D
alkanen
CC BY-SA 3.0
2012-02-07T14:18:21.073Z
2012-02-07T14:18:21.073Z
KoKo
<p>The basic concept behind Bitcoin currency is <strong>distributed consensus</strong>. Being a P2P protocol, each and every node <strong>is required</strong> to obtain a full and global <strong>knowledge</strong> of every <em>account</em>'s (wallet) status.</p>

<p>The differences with PayPal are easy to explain: in a client-server model, like your contractual relationship with your regular bank, the bank holds the huge database of all accounts of their customers, plus the transaction history with other banks. You, as a client, act as a thin client with knowledge limited to only your account. When you arequest a cashier an extract of your accoun't activities, or log in to your internet banking, a view on a database is triggered to obtain only your data.</p>

<p>In Bitcoin, that's completely different: there is no central data warehouse and the security principle is that <em>nobody fully trusts nobody unless a message is signed with corresponding private key</em>. So, what else better storage rather than <strong>all</strong> network nodes?</p>

<p>In both cases, the database still exists, but is located differently. Central VS distributed.</p>

<p>Let me finish with a short answer, that may be the repetition of previous answers: In Bitcoin, when you receive a payment, <strong>you</strong> have to validate that the sender account has enough money for the transaction to be valid (anyone could send an uncovered check else). The only 100% sure way is to check the transaction history for the sender to see if he really received the money he's sending to you from someone or from mining.</p>

CC BY-SA 3.0
2012-02-09T10:20:23.877Z
Let me add a comment: someway, all banks hold in their DB a "blockchain" of their transactions. But it must be never be synchronized :) as it is only one in the world (for each bank), started when the bank started its activity and not shared with anyone
usr-local-ΕΨΗΕΛΩΝ
CC BY-SA 3.0
2012-02-09T10:14:11.450Z
2012-02-09T10:14:11.450Z
usr-local-ΕΨΗΕΛΩΝ
<p>There are clients that do not require the full blockchain.   </p>

<p>SPV (Simplified Payment Verification) clients like MultiBit and Bitcoin Wallet for Android are two examples.</p>

<p>There are client/server clients such as Electrum which are ready to use upon installation.  </p>

<p>There are hosted (shared) EWallet services such as Coinbase (Web-based) and Paytunia (Web-based or mobile client) which have no blockchain requirement.</p>

<p>There are hybrid EWallet services such as Blockchain.info/wallet which provide the conveniences of an EWallet with the security where your keys are kept locally and only an encrypted copy is kept on the host.</p>

CC BY-SA 3.0
2012-11-17T06:03:28.060Z
2012-11-17T06:03:28.060Z
Stephen Gornick
<p>You need to download the whole blockchain because <a href="https://en.bitcoin.it/wiki/Thin_Client_Security" rel="nofollow">any client which does not do so necessarily sacrifices some amount of security</a> -- though some much more than others.</p>

CC BY-SA 3.0
2012-11-19T03:05:17.903Z
SPV does sacrifice some security. An SPV client can be tricked into thinking a block that contains transactions that pay from already-spent outputs of prior transactions is a valid block when it is defined as invalid by the bitcoin specification. The bitcoin.org client running as a full node can reject those blocks as invalid. (Whether that security is important is another question.)
David Schwartz
CC BY-SA 3.0
2012-11-17T05:59:05.573Z
Not true.  SPV (Simplified Payment Verification) clients are no less secure than the Bitcoin.org client running as a full node.  The difference is that SPV doens't give all the functionality that the Bitcoin.org provides.  But for  consumer use, only a subset is needed.
Stephen Gornick
CC BY-SA 3.0
2012-01-23T23:01:11.463Z
2012-01-23T23:01:11.463Z
lamont cranston
<p>I started a wallet, and it is downloading and synchronizing lots of transactions. 
This takes time and network bandwidth. </p>

<p>Why is this necessary? Is this some form of accountability?</p>

<p>With Paypal, for example, this isn't done. 
And as you grow, I guess this becomes a huge -- will the amount of transaction data become too large? It is a bit scary to have my computer run off and synchronize, without it informing me  what kind of information it is getting and whey this is necessary.</p>

<p>Can't the whole transaction history be shown or available on a website, rather than loaded on my computer?</p>

CC BY-SA 3.0
2012-01-24T07:41:21.443Z
It should be noted that the whole transaction history _is_ shown and available on a website (eg blockexplorer.com and blockchain.info). But it doesn't exist only there, and it's generally a bad idea to rely on such a site exclusively to verify transactions that concern you.
Meni Rosenfeld
<transactions>
Why does my wallet need to download the whole transaction history?
marco
# Why does my wallet need to download the whole transaction history?

(Asked by: username_0 on 2012-01-23)

I started a wallet, and it is downloading and synchronizing lots of transactions.
This takes time and network bandwidth.

Why is this necessary? Is this some form of accountability?

With Paypal, for example, this isn't done.
And as you grow, I guess this becomes a huge -- will the amount of transaction data become too large? It is a bit scary to have my computer run off and synchronize, without it informing me what kind of information it is getting and whey this is necessary.

Can't the whole transaction history be shown or available on a website, rather than loaded on my computer?

**Tags:** transactions

> **Comments:**
> **username_1**: It should be noted that the whole transaction history _is_ shown and available on a website (eg blockexplorer.com and blockchain.info). But it doesn't exist only there, and it's generally a bad idea to rely on such a site exclusively to verify transactions that concern you.  

---

## 7 answers

### Answer by username_2 on 2012-01-24. Score: 14

The short answer to your question is "no". The reason is actually pretty simple: Without the entire block chain, there is no way to know that funds that are claimed to have been sent to you weren't actually sent to someone else. There is no way to prove the absence of a conflicting transaction, other than to check *every* valid transaction.

With a bank, the bank clears your checks for you. Here, you clear your own checks. Without knowing every check an account has received or sent out, how can you know the account has sufficient balance to cover your check?

Of course, you don't have to run the Bitcoin client. Your alternative is trust someone else with your coins.

> **Comments:**
> **username_3**: I suggest some links that clarify the phrase "Your alternative is trust someone else with your coins." When you just write it like that, it seems very stupid to do so.  
> **username_2**: I think the analogy with banks makes it clear. We all trust our money to banks, credit card companies, and so on.  
> **username_4**: I wonder, does this mean there will be a Bitcoin bank in the future (trusted to hold and manage transaction history?)  

---

### Answer by username_5 on 2012-01-24. Score: 8

Bitcoin is a new approach to security of money, offering nigh-full transparency. You can "audit" any account and see what transactions were performed without a problem. With traditional models, like Paypal or the banks, you can't do that. As Bitcoin is P2P, it needs to have all the data to be able to validate all of it. This way no single entity can take the whole network down, or freeze anyone's account.

There are works done, however, on a set of servers forming [Stratum overlay network protocol](https://bitcointalk.org/index.php?topic=55842.0) that will be handling almost all of data handling for very thin clients. In this model one would not need to download or validate the entire blockchain, but some people see this as giving up their security (this issue is addressed and debunked [here](https://bitcoin.stackexchange.com/questions/2613/how-secure-are-various-models-of-bitcoin-clients)).

A third option is thin clients that validate all the data, but prune older blocks that they don't need themselves. This approach would save hard drive space, but not the initial validation time.

In short, if all Bitcoin data was stored on a single website, the system would be vulnerable to being taken down and trust would be centralized. With the standard client, one need not trust any single individual, so security is greater. There are are other solutions being developed that will be something in-between the two.


---

### Answer by username_6 on 2012-01-23. Score: 2

With paypal you trust paypal; here *you* check all history and ensure it is correct.

Still, you usually don't care about that, and that's why there are "thin clients" which only download the necessary data and check only the blocks regarding your transactions.


---

### Answer by username_7 on 2012-02-07. Score: 2

The bitcoin client devs has said they will be working on this very problem in the future versions of the client, possibly only downloading a subset of the blockchain. Because as years go by, the blockchain will grow very large, given the current amount of transactions plus some growth, in 10 years it will approach 50GB, this is simply unsustainable.

> **Comments:**
> **username_8**: Oh, how we wish your prediction were true and the blockchain had only approached 50 GB by now :D  

---

### Answer by username_9 on 2012-02-09. Score: 1

The basic concept behind Bitcoin currency is **distributed consensus**. Being a P2P protocol, each and every node **is required** to obtain a full and global **knowledge** of every *account*'s (wallet) status.

The differences with PayPal are easy to explain: in a client-server model, like your contractual relationship with your regular bank, the bank holds the huge database of all accounts of their customers, plus the transaction history with other banks. You, as a client, act as a thin client with knowledge limited to only your account. When you arequest a cashier an extract of your accoun't activities, or log in to your internet banking, a view on a database is triggered to obtain only your data.

In Bitcoin, that's completely different: there is no central data warehouse and the security principle is that *nobody fully trusts nobody unless a message is signed with corresponding private key*. So, what else better storage rather than **all** network nodes?

In both cases, the database still exists, but is located differently. Central VS distributed.

Let me finish with a short answer, that may be the repetition of previous answers: In Bitcoin, when you receive a payment, **you** have to validate that the sender account has enough money for the transaction to be valid (anyone could send an uncovered check else). The only 100% sure way is to check the transaction history for the sender to see if he really received the money he's sending to you from someone or from mining.

> **Comments:**
> **username_9**: Let me add a comment: someway, all banks hold in their DB a "blockchain" of their transactions. But it must be never be synchronized :) as it is only one in the world (for each bank), started when the bank started its activity and not shared with anyone  

---

### Answer by username_10 on 2012-11-17. Score: 1

There are clients that do not require the full blockchain.

SPV (Simplified Payment Verification) clients like MultiBit and Bitcoin Wallet for Android are two examples.

There are client/server clients such as Electrum which are ready to use upon installation.

There are hosted (shared) EWallet services such as Coinbase (Web-based) and Paytunia (Web-based or mobile client) which have no blockchain requirement.

There are hybrid EWallet services such as Blockchain.info/wallet which provide the conveniences of an EWallet with the security where your keys are kept locally and only an encrypted copy is kept on the host.


---

### Answer by username_11 on 2012-01-23. Score: 1

You need to download the whole blockchain because [any client which does not do so necessarily sacrifices some amount of security](https://en.bitcoin.it/wiki/Thin_Client_Security) -- though some much more than others.

> **Comments:**
> **username_10**: Not true.  SPV (Simplified Payment Verification) clients are no less secure than the Bitcoin.org client running as a full node.  The difference is that SPV doens't give all the functionality that the Bitcoin.org provides.  But for  consumer use, only a subset is needed.  
> **username_2**: SPV does sacrifice some security. An SPV client can be tricked into thinking a block that contains transactions that pay from already-spent outputs of prior transactions is a valid block when it is defined as invalid by the bitcoin specification. The bitcoin.org client running as a full node can reject those blocks as invalid. (Whether that security is important is another question.)  

---

