Why aren't Bitcoin transactions processed and verified by normal Bitcoin clients?

2

My understanding is that the blockchain is exclusively built by miners. My question is, why isn't that verification done by every Bitcoin client - kinda like p2p file sharing programs allowed people to use the network (download) and support the network (upload)?

Update:

What is the difference between "verifying" the transaction, and the "proof of work"? My understanding of verifying transactions is that all inputs to and outputs from an address are added up, ensuring along the way that there is enough that has in-come before-hand to allow each output. If each node in the network does this, all nodes will agree and blockchain spoofers would be drowned out by the masses. Is this not sufficient proof?

fresheneesz

Posted 2014-02-24T05:13:01.803

Reputation: 21

Answers

2

Transactions are in fact verified by every network node (computer running bitcoin-qt). A transaction which is not valid will not be propagated and the client will not display it to the user as a payment.

However, a transaction being valid doesn't mean there are no contradicting transactions. What miners do is synchronize the transactions using proof of work as a signal.

Meni Rosenfeld

Posted 2014-02-24T05:13:01.803

Reputation: 18 542

Interesting. You lost me though at "using proof of work as a signal" tho. I updated my question with some questions relating to your answerfresheneesz 2014-02-24T23:29:58.177

@fresheneesz: The problem miners exist to solve is called "double spending" (http://bitcoin.stackexchange.com/questions/4974/what-is-a-double-spend).

Meni Rosenfeld 2014-02-25T07:13:26.797

Alright, thanks. I'm still wondering about the additional questions i put in my question tho..fresheneesz 2014-02-26T02:07:00.420

0

Without miners there would be no consensus, anybody could present a false reality to other users and isolate them from the truth. Building blocks is difficult, which makes it impossible for a malicious user to fabricate history. In actuality every node verifies every bit of the transaction history, and also provides data ("seeding") to other nodes in a mesh fashion. It's a distributed as it needs to be.

user13413

Posted 2014-02-24T05:13:01.803

Reputation: 890

No, that's not right. I'm not suggesting the blockchain be taken as truth from a single individual. I'm suggesting that the act of verifying transactions could be done by every client - not just mining clients.fresheneesz 2014-02-24T09:04:14.867

@fresheneesz It is done by every client. But that doesn't help when there are two transaction that try to send the same funds to two different places. We need to somehow agree on only one of those and persist that agreement for all time. Mining is how bitcoin does that.David Schwartz 2017-10-20T00:15:32.530