Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: sarat on October 25, 2017, 08:39:29 AM



Title: transaction edit done by mining nodes
Post by: sarat on October 25, 2017, 08:39:29 AM
Hi,
I'm reading through bitcoin manuals and I got this question, please help me to correct my understanding.

I'm aware that changing the transaction output amount value can make the transaction unusable. What happens if the mining nodes lowers the output value to get more transaction fee, in such scenarios how the bitcoin protocol counterfeit that?

Thank You.


Title: Re: transaction edit done by mining nodes
Post by: HCP on October 25, 2017, 10:13:07 AM
Because the transaction has been cryptographically signed... once they alter anything (addresses, amounts etc.) inside that transaction, it'll break the signature and the transaction will no longer be considered valid and will be rejected by pretty much everyone. This would then render the entire block invalid.


Title: Re: transaction edit done by mining nodes
Post by: sarat on October 25, 2017, 12:15:17 PM
Because the transaction has been cryptographically signed... once they alter anything (addresses, amounts etc.) inside that transaction, it'll break the signature and the transaction will no longer be considered valid and will be rejected by pretty much everyone. This would then render the entire block invalid.

Can you please provide me some source, from where I can get to know on what are all the fields the signature is computed and verified.


Title: Re: transaction edit done by mining nodes
Post by: DannyHamilton on October 25, 2017, 12:25:16 PM
Because the transaction has been cryptographically signed... once they alter anything (addresses, amounts etc.) inside that transaction, it'll break the signature and the transaction will no longer be considered valid and will be rejected by pretty much everyone. This would then render the entire block invalid.

Can you please provide me some source, from where I can get to know on what are all the fields the signature is computed and verified.

The signature is computed and verified on ALL of the data except the signature.  It would not be possible for a signature to sign itself.


Title: Re: transaction edit done by mining nodes
Post by: sarat on October 25, 2017, 01:03:11 PM
Because the transaction has been cryptographically signed... once they alter anything (addresses, amounts etc.) inside that transaction, it'll break the signature and the transaction will no longer be considered valid and will be rejected by pretty much everyone. This would then render the entire block invalid.

Can you please provide me some source, from where I can get to know on what are all the fields the signature is computed and verified.

The signature is computed and verified on ALL of the data except the signature.  It would not be possible for a signature to sign itself.


Thank you, Does that mean when the block is mined, and it published over bitcoin network, does the other nodes verify the transaction validity along with the block hash validity?


Title: Re: transaction edit done by mining nodes
Post by: amaclin1 on October 25, 2017, 02:27:02 PM
Thank you, Does that mean when the block is mined, and it published over bitcoin network,
does the other nodes verify the transaction validity along with the block hash validity?
Yes. The nodes verify transactions in block.
For more information refer to: https://en.bitcoin.it/wiki/Protocol_rules#.22block.22_messages
(I am not sure that this article is 100% up-to-date)

Of course, there can be some "caching tricks": node does not need to validate already seen and validated txs.


Title: Re: transaction edit done by mining nodes
Post by: sarat on October 25, 2017, 03:46:18 PM
Thank you, Does that mean when the block is mined, and it published over bitcoin network,
does the other nodes verify the transaction validity along with the block hash validity?
Yes. The nodes verify transactions in block.
For more information refer to: https://en.bitcoin.it/wiki/Protocol_rules#.22block.22_messages
(I am not sure that this article is 100% up-to-date)

Of course, there can be some "caching tricks": node does not need to validate already seen and validated txs.

Thank you.