lbryio / lbcd

An alternative full node implementation of LBRY's blockchain written in Go (golang)
https://lbry.com/
ISC License
38 stars 25 forks source link

`submitblock` reject blocks due to missing witness in coinbase. #83

Closed roylee17 closed 2 years ago

roylee17 commented 2 years ago

This only happens if the blocks contain any segwit transactions.

2022-08-06 17:47:34.657 [INF] RPCS: Rejected block efdddd30ac5679011ce90efe74a382f1865ef2211a941ba08de8c2a922545126 via submitblock: the coinbase transaction has 0 items in its witness stack when only one is allowed. Height: 1204880
2022-08-06 17:48:00.351 [INF] RPCS: Rejected block eae65b6c2e2ff032452b3d4d05713b774d47096599fada63f5a7d5b69a6aaf46 via submitblock: the coinbase transaction has 0 items in its witness stack when only one is allowed. Height: 1204880

lbcd checks the presence of witness_commitment in the coinbase.TxOut, and asserts the dummy witness (32 bytes of 0s) must also presented in the coinbase.TxIn[0].