Вы должны прочитать «Тайное программное обеспечение» от Коллберга и Награ. Эта книга действительно полезна, чтобы помочь вам понять, как работают механизмы защиты программного обеспечения (такие как запутывание кода, создание водяных знаков, маркировка рождения и т. Д.).
Как сказал Лоренцог, полной безопасности не существует, а безопасность программного обеспечения напоминает постоянную гонку между поставщиками программного обеспечения и пиратами.
Вы должны использовать дешевые обфусцирующие преобразования (чтобы накладные расходы, которые они несут, не убивали производительность), чтобы предотвратить как можно больше атакующих (помните, что большинство из них - детишки сценариев), чтобы "украсть" ваши алгоритмы убийцы или любые секретные данные.
Если вы хотите еще больше повысить уровень безопасности, вы можете пометить свои алгоритмы по рождению и водяные знаки своих копий, чтобы найти, кто слил ваше творение. Но даже если вы это сделаете, это не значит, что ваше программное обеспечение защищено на 100%. Кроме того, время, потраченное на добавление этих механизмов, может не стоить усилий.
Эти понятия действительно хорошо объяснены в упомянутой мной книге, которую стоит прочитать.