Скажите ведь с биткойном та же история, теоретически core-программисты могут изменить код и выпустить больше монет?
Теоретически можно сделать всё что угодно.
Но для того, чтобы это проканало, надо чтобы это "всё что угодно" приняло большинство узлов в сети.
Вернее, даже не так: любое изменение, несовместимое с общепринятым протоколом, приведет к разветвлению блокчейна. А дальше - дело ваше, на какой ветке блокчейна вам оставаться.
Вот недавний пример: Жан-Люк исправил некоторые вычисления. На блоке 54000 пошло разветвление: ноды 0.5.11 стали генерить блоки, которые не принимают ноды 0.5.10 (или наоборот, не суть важно). В итоге те, кто на 0.5.11 пошли в одну сторону, остальные - в другую. Если б сообщество отвергло эти изменения, ветка 0.5.11 загнулась бы.
Касаемо выпуска новых монет. Выпуск новых монет "изниоткуда" означает генерацию какого-то блока, в котором будет некая транзакция, берущая эти монеты, допустим, опять из генезис-аккаунта. Для того, чтобы такой блок был принят, в сети должны быть узлы, для которых этот блок будет корректным. Те, кому такая генерация не нравится, будут держать узлы, которые не будут принимать этот блок. Если их будет большинство - ветка с новой генерацией просто завянет.