Единственно возможная невзламываемая защита - это реализация части функционала программы г-на Dmitry на отдельном физическом устройстве, защищённом от считывания.
Это может быть и не кусок программы, а какое-то техническое устройство, ноу-хау, доп. контроллер и пр. В этом направлении, если будет интерес, я могу подсказать пару приёмов. Пишите на plc_prog@owen.ru

Любые другие защиты - не проблема для мало-мальски знающих специалистов.
Защита в CoDeSys тут откровенно слаба. Пароль - это сервис протокола GetWay, защита от дурака и оператора производства, можно и без него работать, как и сделано в PLC_IO. Нормальный (не супер) специалист взломает протокол GetWay, имея контроллер, за 1-2 дня.

Но, как и пиратство, копирование можно сделать экономически невыгодным.