сможет найти то место (те места) в Вашей программе, где принимается решение о легальности копии, и, изменив несколько байт в коде программы, лишить ее возможности к самозащите. Именно по этой причине ведущие фирмы—производители массового программного обеспечения практически никогда не ставят защиту на свои программы, справедливо полагая, что не стоит тратить силы и средства на создание систем защиты (тем более, что эти системы, как правило, причиняют пользователю определенные неудобства), если все равно программа будет «вскрыта». Эти фирмы получают свои дивиденды за счет массовости объема продаж при сравнительно низкой цене за каждую копию. Они делают ставку на «цивилизованных» покупателей и, что примечательно, таким способом воспитывают их! Более того, в последнее время получили распространение программы, которые как раз рассчитаны на механизм «пиратского» копирования и распространяются преимущественно именно таким способом:

обычно эти программы сопровождаются «электронным письмом» (файлом с текстом), в котором содержится краткая инструкция по работе с программой и указываются необходимые координаты автора с просьбой выслать небольшую сумму в случае, если пользователь считает, что дос — тоинства программы заслуживают этого.

Несколько иначе обстоит дело с программами, которые не рассчитаны на массового пользователя. К таким относятся различного рода системы автоматизированного проектирования, предыздательские системы, специализированные базы данных и т.п. Как правило, это весьма наукоемкие товары, т.е. в них особенно велик вклад высококлассных специалистов в конкретных прикладных областях. Труд таких специалистов обычно высоко ценится, поэтому общие затраты на создание подобного рода программ могут быть весьма велики, что в сочетании со сравнительно небольшим кругом потенциальных пользователей делает цену каждой копии очень большой. Такие программы обычно снабжаются защитой, так как ограниченный спрос на них формирует весьма специфичный (и чаще всего «цивилизованный») рынок: покупателями этих программ являются специалисты в конкретной прикладной деятельности, которые не имеют нужных навыков и, главное, желания заниматься «вскрытием» программ.

Будем считать программу защищенной от нелегального копирования, если в ней есть встроенные средства, позволяющие проверить саму программу и/или характерные признаки ПК, на котором она выполняется, с целью определить, была ли копия программы сделана с соблюдением всей необходимой технологии. Если технология создания копии была нарушена, программа перестает работать нормальным образом. Таким образом, легальное копирование подразумевает использование некоторой особой технологии создания копий, в необычности которой и заключается весь фокус. Лишь посвященный в этот секрет человек с помощью специального оборудования или особой программы может создать легальную копию — на это и делается ставка.

Любая копия защищенной программы должна содержать в себе или во внешнем файле «ключ» — одно или несколько кодовых чисел. В момент проверки программа сравнивает некоторые специфические признаки рабочей среды с заранее закодированными в ключе и по результатам