I'm creating an altcoin for research proposal based on bitcoin v0.21. I added two fields to the block header:
1. Address ID (bech32/base58)
2. Signature
Both fields are string type.
I'm creating new blocks by using cpuminer (solo mining). The mining is done by calling submitblock RPC call. During the mining I'm getting the exception: Block decode failed which means that the server cannot deserialize the block.
When I'm printing the exception at DecodehexBlk the error that printed is
CDataStream::read(): end of data: iostream error
When I'm creating a block by calling generatetoaddress RPC call, the block is accepted to the blockchain.