Post
Topic
Board Speculation
Re: Wall Observer BTC/USD - Bitcoin price movement tracking & discussion
by
AZwarel
on 14/11/2017, 05:07:05 UTC
Could you explain why you think that users don't need to run network nodes?
I don't agree, but I would like to understand your point of view.

The design of Bitcoin is such that users can just be users.  

For example, if I transfer a coin to you, you can immediately verify my signature.  You do not need to trust me or trust anyone else -- the transaction itself contains cryptographic proof that I transferred ownership of my coin to you.  You can even follow the chain of signatures backwards and confirm that the person who I received the coin from also signed the transfer, and so on and so forth, as far back as you want to go.  You do not need a network node to do this!

The only risk to you is that I may have also signed that same bitcoin over to someone else.  This is the double-spend problem that had not been solved until Satoshi.  Satoshi's revolutionary solution was to use proof-of-work to time stamp transactions into a chain such that -- if his proof-of-work conjecture held --  that the same coin could not be spent twice.

As a user then, the only additional piece of information you need, is whether the transaction I gave to you was accepted into the blockchain.  A network node can provide you this proof (that you can trustlessly verify for yourself!) with a few kilobytes of information.

Here is a talk I gave (only about 10 min long) that explains how SPV works in more detail (sorry about the crappy audio!)  

https://youtu.be/m7cvPvtGIUI?t=459

That is a contradiction (bolded parts).

I can only prove it with a 100% chance, that the "provided" hash of the transaction from an untrusted node is valid, if i can reproduce that final few kilobyte hashed data myself from scratch.
For that, i MUST HAVE every single previous hashes starting from the first iteration of said transaction (the coinbase tx), and recreate the chain of proof myself.

For that, i need to have my own independent copy of the complete transactional history of the past utxos, not depending on it to be provided by an untrusted node on request - and in a trustless system, i must presume by default every other node is untrusted.

SPV can and does work, but it can not be a 100% proof of a valid state. Of course, for everyday low cost transactions, an SPVs probability for validity is enough, but it is not trustless, as you argue, and the problem will escalate with time:
if the ratio of SPV/full validating nodes drops below a treshold, the chance for a malicious collusion between said full nodes increases exponentially.