<blockquote>
<p>First, we can verify or validate the transaction on the website. I don't understand why do we need a full blockchain if we are not mining.</p>
</blockquote>
<p>What website? There's no website that defines the blockchain. All blockchain explorers just show the information. If you are relying on a website to check that your transaction is valid, then that is a central point of failure. What if whatever website you are using mistakenly says an invalid transaction is valid? Do you just blindly trust the website? This has happened many times in the past, especially with blockchain.info.</p>
<p>The whole point of the blockchain is to remove central points of failure and to remove trust in third parties. Relying on a website to tell you what is correct defeats that purpose.</p>
<blockquote>
<p>Second, doesn't miner verify the transactions before including into the block? In addition to that, the process of validating the block served like a double validation?</p>
</blockquote>
<p>Miners are <em>supposed</em> to verify transactions before including them in a block. Just because they are <em>supposed</em> to verify does not mean that they actually do. Just accepting a transaction that has been included in a block does not guarantee that the transaction is valid. What if a miner included an invalid transaction?</p>
<p>Again, the point of a blockchain is to remove trust in third parties. By trusting miners to have validated transactions, you are trusting a third party. Verifying a block after you receive it from someone else removes that trust in a third party because you yourself has checked that the block is valid.</p>
<blockquote>
<p>Third, when the block is added to the network, isn't it a third validation?</p>
<p>Forth, when the block has several more confirmations, isn't that a forth validation?</p>
</blockquote>
<p>Kind of (to both). But again, you yourself are not verifying the blocks if you are not running a node. You are trusting that <em>someone else</em> has verified the blocks. That is trust in a third party, which is what the blockchain is designed to avoid.</p>
<blockquote>
<p>A light node, although doesn't have the full ledger since the genesis block, keeps a section of the most recent blocks, isn't that sufficient?</p>
<p>Why would a light node be riskier?</p>
</blockquote>
<p>No. If I had sufficient hash rate, I could produce a block that has an invalid transaction and send it directly to your light node. This block with the invalid transaction that spends a nonexistent input and could be something that defrauds you. If you have not verified the entire blockchain and constructed the UTXO set, then you do not know that the transaction is invalid because it spends an nonexistent input. You cannot verify this for yourself. You are trusting a miner that the transactions is valid. This is riskier because you could inadvertently accept an invalid transaction and thus lose money.</p>
<blockquote>
<p>Realistically, what are the chances of receiving incomplete or invalid blocks?</p>
</blockquote>
<p>Pretty low. But the whole point of the blockchain is to remove centralization and trust in third parties. By using a light node, you are now trusting third parties and this increases your risk for being defrauded.</p>

CC BY-SA 4.0
2018-11-22T05:34:34.677Z
I understand your point on 'trust' and eliminate 'intermediary' but realistically, isn't that duplicating effort and a waste of resources?
Samantha
CC BY-SA 4.0
2018-11-22T06:18:26.967Z
@Samantha yes, it is a duplicate effort relative to a centralized system where you just trust the central third party to behave honestly (eg Paypal), but I wouldn't say it is therefore wasteful - it just uses more resources in order to achieve a different goal. Building a networked system of value where you *don't have to trust a third party* is non-trivial, and the solution provided by Bitcoin allows users to independently validate the state of the network. As a user, you can trust someone else to do this validation for you, or you can do it yourself.
chytrik
CC BY-SA 4.0
2018-11-22T07:50:11.707Z
I understand this is based on the concept of blockchain. Let's not take into consideration to trust or not to trust. Technically, based on the validation protocols, is there a need to use the full ledger to validate?
Samantha
CC BY-SA 4.0
2018-11-22T07:54:41.663Z
Also, don't forget that the reason you *can* trust miners (by using light clients) is because they have an incentive to validate transactions before including them in a block. The *reason* that they have that incentive is because people (but perhaps not you) do run full nodes and would reject their blocks. While you, personally, may not actually have much reason to run a full node, the ecosystem as a whole very much does.
Pieter Wuille
CC BY-SA 4.0
2018-11-22T08:03:36.890Z
@PieterWuille I was thinking along this line too. From what I read, I am fairly new to this, the protocols are sufficient to prevent fraudulent transactions and that is the whole point of these protocols. The full ledger is only an additional/optional step, it is not a needed step.
Samantha
CC BY-SA 4.0
2018-11-22T09:08:19.383Z
It is certainly not a needed step for everyone. But it is absolutely essential that enough parties do, otherwise the protections for everyone disappear.
Pieter Wuille
CC BY-SA 4.0
2018-11-22T14:41:42.053Z
These comments need to be wrapped up into an answer - either into Andrew's or as a new one.
RedGrittyBrick
CC BY-SA 4.0
2018-11-22T05:27:02.157Z
2018-11-22T05:27:02.157Z
2020-06-16T11:10:03.350Z
Ava Chow
<p>I've been reading on light node and many have pointed out that the light node doesn't have the full blockchain and is riskier because they can't verify the transactions fully. </p>

<p>First, we can verify or validate the transaction on the website. I don't understand why do we need a full blockchain if we are not mining. </p>

<p>Second, doesn't miner verify the transactions before including into the block? In addition to that, the process of validating the block served like a double validation? </p>

<p>Third, when the block is added to the network, isn't it a third validation? </p>

<p>Forth, when the block has several more confirmations, isn't that a forth validation?</p>

<p>In this case, why do we need a full ledger? After a certain time lapse, many of the preceding blocks are seem redundant. </p>

<p>A light node, although doesn't have the full ledger since the genesis block, keeps a section of the most recent blocks, isn't that sufficient? </p>

<p>Why would a light node be riskier? Realistically, what are the chances of receiving incomplete or invalid blocks? </p>

CC BY-SA 4.0
2018-11-22T08:08:16.253Z
I am not implying full node is not necessary. I am wondering why is it riskier as a light node and the need of having a full ledger if you are not mining. Shouldn't the validation protocols sufficient to prevent fraudulent transactions? The full ledger is only an additional/optional step and without that will not actually make you riskier than a full node.
Samantha
<blockchain><mining-theory><nodes><full-node>
Why would running a light node riskier and subject to more frauds than a full node? We don't NEED a full ledger, do we?
Samantha
# Why would running a light node riskier and subject to more frauds than a full node? We don't NEED a full ledger, do we?

(Asked by: username_0 on 2018-11-22)

I've been reading on light node and many have pointed out that the light node doesn't have the full blockchain and is riskier because they can't verify the transactions fully.

First, we can verify or validate the transaction on the website. I don't understand why do we need a full blockchain if we are not mining.

Second, doesn't miner verify the transactions before including into the block? In addition to that, the process of validating the block served like a double validation?

Third, when the block is added to the network, isn't it a third validation?

Forth, when the block has several more confirmations, isn't that a forth validation?

In this case, why do we need a full ledger? After a certain time lapse, many of the preceding blocks are seem redundant.

A light node, although doesn't have the full ledger since the genesis block, keeps a section of the most recent blocks, isn't that sufficient?

Why would a light node be riskier? Realistically, what are the chances of receiving incomplete or invalid blocks?

**Tags:** blockchain, mining-theory, nodes, full-node

> **Comments:**
> **username_0**: I am not implying full node is not necessary. I am wondering why is it riskier as a light node and the need of having a full ledger if you are not mining. Shouldn't the validation protocols sufficient to prevent fraudulent transactions? The full ledger is only an additional/optional step and without that will not actually make you riskier than a full node.  

---

## 1 answers

### Answer by username_1 on 2018-11-22. Score: 3

> First, we can verify or validate the transaction on the website. I don't understand why do we need a full blockchain if we are not mining.

What website? There's no website that defines the blockchain. All blockchain explorers just show the information. If you are relying on a website to check that your transaction is valid, then that is a central point of failure. What if whatever website you are using mistakenly says an invalid transaction is valid? Do you just blindly trust the website? This has happened many times in the past, especially with blockchain.info.

The whole point of the blockchain is to remove central points of failure and to remove trust in third parties. Relying on a website to tell you what is correct defeats that purpose.

> Second, doesn't miner verify the transactions before including into the block? In addition to that, the process of validating the block served like a double validation?

Miners are *supposed* to verify transactions before including them in a block. Just because they are *supposed* to verify does not mean that they actually do. Just accepting a transaction that has been included in a block does not guarantee that the transaction is valid. What if a miner included an invalid transaction?

Again, the point of a blockchain is to remove trust in third parties. By trusting miners to have validated transactions, you are trusting a third party. Verifying a block after you receive it from someone else removes that trust in a third party because you yourself has checked that the block is valid.

> Third, when the block is added to the network, isn't it a third validation?
>
> Forth, when the block has several more confirmations, isn't that a forth validation?

Kind of (to both). But again, you yourself are not verifying the blocks if you are not running a node. You are trusting that *someone else* has verified the blocks. That is trust in a third party, which is what the blockchain is designed to avoid.

> A light node, although doesn't have the full ledger since the genesis block, keeps a section of the most recent blocks, isn't that sufficient?
>
> Why would a light node be riskier?

No. If I had sufficient hash rate, I could produce a block that has an invalid transaction and send it directly to your light node. This block with the invalid transaction that spends a nonexistent input and could be something that defrauds you. If you have not verified the entire blockchain and constructed the UTXO set, then you do not know that the transaction is invalid because it spends an nonexistent input. You cannot verify this for yourself. You are trusting a miner that the transactions is valid. This is riskier because you could inadvertently accept an invalid transaction and thus lose money.

> Realistically, what are the chances of receiving incomplete or invalid blocks?

Pretty low. But the whole point of the blockchain is to remove centralization and trust in third parties. By using a light node, you are now trusting third parties and this increases your risk for being defrauded.

> **Comments:**
> **username_0**: I understand your point on 'trust' and eliminate 'intermediary' but realistically, isn't that duplicating effort and a waste of resources?  
> **username_2**: @username_0 yes, it is a duplicate effort relative to a centralized system where you just trust the central third party to behave honestly (eg Paypal), but I wouldn't say it is therefore wasteful - it just uses more resources in order to achieve a different goal. Building a networked system of value where you *don't have to trust a third party* is non-trivial, and the solution provided by Bitcoin allows users to independently validate the state of the network. As a user, you can trust someone else to do this validation for you, or you can do it yourself.  
> **username_0**: I understand this is based on the concept of blockchain. Let's not take into consideration to trust or not to trust. Technically, based on the validation protocols, is there a need to use the full ledger to validate?  
> **username_3**: Also, don't forget that the reason you *can* trust miners (by using light clients) is because they have an incentive to validate transactions before including them in a block. The *reason* that they have that incentive is because people (but perhaps not you) do run full nodes and would reject their blocks. While you, personally, may not actually have much reason to run a full node, the ecosystem as a whole very much does.  
> **username_0**: @PieterWuille I was thinking along this line too. From what I read, I am fairly new to this, the protocols are sufficient to prevent fraudulent transactions and that is the whole point of these protocols. The full ledger is only an additional/optional step, it is not a needed step.  
> **username_3**: It is certainly not a needed step for everyone. But it is absolutely essential that enough parties do, otherwise the protections for everyone disappear.  
> **username_4**: These comments need to be wrapped up into an answer - either into Andrew's or as a new one.  

---

