Это невозможно сделать. Если ваш код может быть запущен, то он может быть прочитан и перепроектирован. Все, что вы можете сделать, это сделать это немного сложнее, и, поверьте мне, это будет только на немного сложнее. Вам может не понравиться тот факт, но большинство взломщиков гораздо лучше взломать, чем кто-либо другой в том, чтобы усложнить взлом. Усилия по защите вашего кода обычно не стоят того, особенно если это ставит в невыгодное положение ваших платящих клиентов. Станьте свидетелем потрясающих неудач DRM.
Мой совет - не беспокоиться об этом. Если ваш алгоритм действительно новый, ищите патент (хотя с решением Билски это немного сложнее, если вы не привязываете его к конкретной аппаратной реализации). Полагаться на коммерческие секреты также бесполезно, если только вы не распространяете свое программное обеспечение среди тех, кто подписывает контракты, которые гарантируют, что они не разрешат беспрепятственный доступ. И затем, у вас должен быть способ контролировать это. Я полагаю, что в ту минуту, когда вы разместите двоичные файлы в Интернете или распространите их без контракта, вы потеряете статус коммерческой тайны.
Опора на лицензирование также сопряжена с опасностью - вы можете подумать, что вы можете вставить в свою лицензию положения, запрещающие реверс-инжиниринг, но многие юрисдикции по всему миру специально запрещают эти положения. И российские бандиты, которые несут ответственность за большую часть взлома, вряд ли будут соблюдать упомянутые положения в любом случае.
Почему бы вам просто не сконцентрироваться на том, чтобы сделать свой продукт максимально качественным? Цель состоит в том, чтобы оставаться впереди толпы, а не блокировать их вообще. Быть первым, кто предоставит вам лучший продукт в конкурентной группе, и обеспечит вам процветание гораздо больше, чем бесполезные усилия по бесполезной защите (IMNSHO).
Это только мое мнение. Я могу ошибаться Я был не прав прежде, вам нужно только спросить мою жену: -)