I see the source code was added.
From Main.cpp line 899 to 907
// A coinbase transaction vouts
if (tx.IsCoinBase()) {
BOOST_FOREACH(const CTxOut& out, tx.vout) {
CTxDestination out_dest;
if (nHeight >= Params().GetConsensus().GetFirstEnforcedMinerLicenseBlockHeight() && ExtractDestination(out.scriptPubKey,out_dest) && !Params().IsLicensedMiner(EncodeDestination(out_dest)))
return state.DoS(100, error("CheckTransaction(): coinbase unlicensed miner"),
REJECT_INVALID, "bad-cb-miner");
}
}
Looks like you are only allowing specific addresses to add blocks to the chain.
From chainparams.cpp lines 184 to 207
vLicensedMiners = {
"V1gUNHs9Ae2t6hCA7MkVqghe2GWsJvB8exM",
"V1oUJSYnwUoeowB2CykMBMg9RKRt6uUPoj2",
"V1brKJBb8Q3HxPk3by7o6aNFjTtDhMWtEmX",
"V1iQ8LDi8QS7PJjpDWnyPyaCA93sC1NZL5f",
"V1TgZrkism6Zj7RPh4NoZbbXEdEWLpa6SMp",
"V1fSF2pbMdDCE6tgG1waCG7e71NWSpKcYiX",
"V1e7vjV8esvkdvokVqdwR7Bui3bD9YLZFWT",
"V1RVmTC7mCHFM9iGQ5yZKYEDMynhw3bDFJ2",
"V1gsR99Sd2azGwM5wNarCEFF4SvESL7yxjf",
"V1SXJJn6mhD6CE7W8jXdS4rxc3B9dMkYghK",
"V1R7AFHw6U5btTrxkVkeq2ZMS5KN7HrNj5A",
"V1j957XzHXDRdz9ainnnjrnRqfSf3XBGvL4",
"V1b7wFTbsuQBhGgAF5f5Dt8paPazSsrFTg4",
"V1fgNT2qyA9G8VnEHCtMV1SFsJhWVgAEgoc",
"V1YxmmRWxTKBNSB6Pv235o16ffgWRk9ZqrY",
"V1YuCVe2ufQHUu3NS67bcbixUY9TbfmpNaW",
"V1Y5g3Pm2Wn7QTzytrzFxiydKwdLVV9GXip",
"V1hNZdZVjyUcfXYfu71R2RBjmyN8kZoRE7r",
"V1at7HqpMbffzkxCeGRZk4nrK9rsWtGdo4M",
"V1h7Fc3XxgCYS8CW26oDf5idQiNgCQMcMqm",
"V1bwTWLiwe23K1avvYQzGt7Ffxr1p4KeAih",
"V1Zrkrrh3BDWqnuBfS8Y5tBAse7xM3F1wAS"
};
Beware, this code gives the team behind this complete control over the chain. They can easy shut off their "authorized pool" and continue to add blocks without competition. They can put up a private non-rate limited pool and mine as much as they want. They don't need a premine cause they can mine as much as they want whenever they want.
I'm out, I prefer my decentralized networks to be decentralized.