Query on block propagation

Trying to understand the ouroboros whitepaper. Can someone please help me with these doubts:

  1. Does the block producer include all transactions in the block body or just transaction hashes (since other nodes already have the transactions in their mempool)
  2. Does a transaction need to be validated by ALL nodes? What happens if an attacker node joins the network and keeps marking all transactions invalid, thereby halting propagation.

All the transactions are included in the block body. Once they are included in the block body, they are removed from mempool. Not all nodes have all transactions in the mempool (this might happen when there is not much activity on the blockchain, but this is not the case in the last months).
Every node receiving a block will validate each transaction from that block. And an invalid transaction will not be accepted in the mempool by the nodes.

1 Like