My question is quite simple, why can't every node in the network follow the same principle for verifying transactions:
-
Check that the transaction has a unique ID
-
Check that the digital signature is correct using the public key of the person sending money
No one can fake sending money on the behalf of someone else because they do not have that person's private key and hence cannot create a valid digital signature for that transaction. No one can copy a previous transaction with a valid digital signature and broadcast it to other nodes again because the ID must be unique. This would also remove the notion of "blocks" in a "chain" and lead to a simple ledger.
I am aware that blockchains already implement this simple system of digital signatures. What I don't understand is, what is the necessity of further verification through proof-of-work? How could someone possibly create an illegitimate block (with one or more illegitimate transactions) which would require this further layer of security? What am I missing here?