So I was thinking the other day about this, and by asking, I will either expose my ignorance, and/or also perhaps learn something that I'm missing.
So here is the setup. You set up a bitcoin node, and it downloads all the transactions and your computer has to verify every block. It is my understanding that each transaction is checked to make sure there are no double spends, etc, in addition to performing a hash of the block to make sure no data has been changed.
Now, some people run a pruned node so this way, you aren't storing over 500Gb of data. This pruned node still has to download the whole thing for the initialization, but then it can delete the old blocks.
But here comes the question. When it comes to MultiSig setups, the script details how the bitcoin has to be unlocked. So it is my understanding that when a transaction comes in for a certain UTXO, the node will go find this UTXO, read the script of how it was locked, and then look for the signatures to make sure that the conditions of unlocking are met. (ie. 2 signatures of 3 are produced)
But here is the question. What if the coins are years old, and hence in a block that the pruned node already deleted? How will your node verify this transaction? Maybe your node is just doing a hash of all the transactions in the block and making sure this hash matches up with the proposed hash to ensure that nothing was shared. So maybe its the miner who has to verify the fact that UTXO is unlocked properly and hence those coins can be moved. So maybe the nodes aren't actually verifying the individual transactions, but I thought they were. It likely has to be this way of else there would be no way to look up the locking script for pruned blocks.
Hmmm.. I think I just answered my own question.... LOL
So here is the setup. You set up a bitcoin node, and it downloads all the transactions and your computer has to verify every block. It is my understanding that each transaction is checked to make sure there are no double spends, etc, in addition to performing a hash of the block to make sure no data has been changed.
Now, some people run a pruned node so this way, you aren't storing over 500Gb of data. This pruned node still has to download the whole thing for the initialization, but then it can delete the old blocks.
But here comes the question. When it comes to MultiSig setups, the script details how the bitcoin has to be unlocked. So it is my understanding that when a transaction comes in for a certain UTXO, the node will go find this UTXO, read the script of how it was locked, and then look for the signatures to make sure that the conditions of unlocking are met. (ie. 2 signatures of 3 are produced)
But here is the question. What if the coins are years old, and hence in a block that the pruned node already deleted? How will your node verify this transaction? Maybe your node is just doing a hash of all the transactions in the block and making sure this hash matches up with the proposed hash to ensure that nothing was shared. So maybe its the miner who has to verify the fact that UTXO is unlocked properly and hence those coins can be moved. So maybe the nodes aren't actually verifying the individual transactions, but I thought they were. It likely has to be this way of else there would be no way to look up the locking script for pruned blocks.
Hmmm.. I think I just answered my own question.... LOL
