On Wed, Aug 19, 2015 at 8:15 AM, Hector Chu <hectorchu@gmail.com> wrote:
On 19 August 2015 at 13:08, Jameson Lopp <jameson.lopp@gmail.com> wrote:
> If operating as an SPV node then it can check the transactions by querying
> other nodes.

SPV is for checking validity of transactions that have already entered
the blockchain, as I understand it. My proposal requires nodes to
validate transactions that are unconfirmed, and to commit to the
validation by doing a POW on it.

It's possible to check that a transaction is cryptographically valid without having any blockchain data available; are you referring to a different type of validation?

If you're running an SPV node that is listening to full nodes on the network, you can request an unconfirmed transaction from connected peers after receiving the inventory message they send - that's how unconfirmed transactions propagate through the node network. This is not 100% proof that the transaction is valid for inclusion in the blockchain, but it's a very good indicator.

- Jameson
 
> On an unrelated note, it sounds like your proposal will significantly
> increase the data size of every transaction, which will create even more
> contention for block space.

If we stipulate that the coinbase fields only hold space for a single
pubkey, then the entire block header including the two coinbases
should only take an extra 100 bytes or so. Transactions are already
routinely 250 bytes+. So an increase of roughly 33%.