I stake a Cryptocurrency based of Peercoin on a Server since years. Multiple months ago this stopped because of the following error:
Coind: kernel.cpp:372: unsigned int GetStakeModifierChecksum(const CBlockIndex*): Assertion `pindex->pprev || pindex->GetBlockHash() == (!fTestNet ? hashGenesisBlock : hashGenesisBlockTestNet)' failed.
This Error often comes when your Blockchain is corrupted. The cause of my problem was an unexpected downtime.