The problem is the subsidy lacks proper validation. Seeing how the project is open source, nothing stops someone from changing these values:
https://github.com/zyrkproject/zyrk-core/blob/master/src/chainparams.cpp#L132 dynamicRewardSystem = {
{0 , 25 * COIN},
{5 * 1e9, 28 * COIN},
{15 * 1e9, 35 * COIN},
{25 * 1e9, 42 * COIN},
{50 * 1e9, 50 * COIN},
{100 * 1e9, 65 * COIN},
{500 * 1e9, 80 * COIN},
{1000 * 1e9, 95 * COIN},
{5000 * 1e9, 110 * COIN},
{20000 * 1e9, 125 * COIN},
};
to
dynamicRewardSystem = {
{0 , 2500 * COIN},
{5 * 1e9, 2800 * COIN},
{15 * 1e9, 3500 * COIN},
{25 * 1e9, 4200 * COIN},
{50 * 1e9, 5000 * COIN},
{100 * 1e9, 6500 * COIN},
{500 * 1e9, 8000 * COIN},
{1000 * 1e9, 9500 * COIN},
{5000 * 1e9, 11000 * COIN},
{20000 * 1e9, 12500 * COIN},
};
and mining 100 times the amount of coins as everyone else.
Making the checkpoint for the premine block would be for your protection and to further validate that everyone is on the correct chain.
Digging further into the code, I have come up with another question. Is there any plan to move ZYRK to Proof of Stake?