Защита от несанкционированного копирования: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Mercury (обсуждение | вклад) |
|||
Строка 33: | Строка 33: | ||
* Привязка к серийным номерам компонентов компьютера. Её достоинство в том, что не требуется никакого специфического [[аппаратное обеспечение|аппаратного обеспечения]], и программу можно распространять даже через [[Интернет]]. Но если пользователь производит модернизацию компьютера, защита отказывает. Авторы многих программ, защищённых привязкой, в подобных случаях готовы дать новый регистрационный код. Например, [[Microsoft]] в [[Windows XP]] разрешает раз в 120 дней генерировать новый регистрационный код (но в исключительных случаях, позвонив в службу активации, можно получить новый код и до прошествия этого срока). В качестве привязки используются серийный номер [[BIOS]] материнской платы, серийный номер винчестера. |
* Привязка к серийным номерам компонентов компьютера. Её достоинство в том, что не требуется никакого специфического [[аппаратное обеспечение|аппаратного обеспечения]], и программу можно распространять даже через [[Интернет]]. Но если пользователь производит модернизацию компьютера, защита отказывает. Авторы многих программ, защищённых привязкой, в подобных случаях готовы дать новый регистрационный код. Например, [[Microsoft]] в [[Windows XP]] разрешает раз в 120 дней генерировать новый регистрационный код (но в исключительных случаях, позвонив в службу активации, можно получить новый код и до прошествия этого срока). В качестве привязки используются серийный номер [[BIOS]] материнской платы, серийный номер винчестера. |
||
* Сканирование [[локальная вычислительная сеть|сети]]. Это исключает одновременный запуск двух программ с одним регистрационным ключом на двух компьютерах в пределах одной локальной сети. Локальный [[брандмауэр]] можно настроить так, чтобы он не пропускал пакеты, принадлежащие защищённой программе. Правда, настройка брандмауэра требует некоторых пользовательских навыков. Кроме того, в большинстве реальных сетей «все друг другу доверяют» (это ускоряет доступ к ресурсам других компьютеров и [[сетевая игра|сетевую игру]]), и брандмауэр безусловно пропускает локальный [[трафик]]. |
* Сканирование [[локальная вычислительная сеть|сети]]. Это исключает одновременный запуск двух программ с одним регистрационным ключом на двух компьютерах в пределах одной локальной сети. Локальный [[брандмауэр]] можно настроить так, чтобы он не пропускал пакеты, принадлежащие защищённой программе. Правда, настройка брандмауэра требует некоторых пользовательских навыков. Кроме того, в большинстве реальных сетей «все друг другу доверяют» (это ускоряет доступ к ресурсам других компьютеров и [[сетевая игра|сетевую игру]]), и брандмауэр безусловно пропускает локальный [[трафик]]. |
||
* Если программа работает с каким-то централизованным [[сервер]]ом и без него бесполезна (например, [[MMOG|онлайн-игра]]), она может передавать серверу свой серийный номер; если номер неправильный, сервер отказывает в услуге. Это единственный стопроцентный способ защиты от копирования. Впрочем, [[Пиратство (компьютерное)|пираты]] могут создать сервер, который не делает такой проверки. Например, существовал сервер ''battle.da'', который по функциям был аналогичен [[Battle.net]], но пускал пользователей пиратских игр. |
* Если программа работает с каким-то централизованным [[сервер]]ом и без него бесполезна (например, [[MMOG|онлайн-игра]], [[антивирус]]), она может передавать серверу свой серийный номер; если номер неправильный, сервер отказывает в услуге. Это единственный стопроцентный способ защиты от копирования. Впрочем, [[Пиратство (компьютерное)|пираты]] могут создать сервер, который не делает такой проверки. Например, существовал сервер ''battle.da'', который по функциям был аналогичен [[Battle.net]], но пускал пользователей пиратских игр. |
||
== Устаревшие методы защиты программного обеспечения == |
== Устаревшие методы защиты программного обеспечения == |
Версия от 08:20, 23 мая 2007
Защита от несанкционированного копирования — система мер, направленных на противодействие несанкционированному копированию информации, как правило представленной в электронном виде (данных или программного обеспечения). При защите от копирования используются различные меры: организационные, юридические, программные и программно-аппаратные. Преимуществом технических мер защиты, т.е. программных и программно-аппаратных, является возможность обеспечения противодействия непосредственно в момент попытки эксплуатации нелегальной копии программ или данных.
К сожалению, защита от несанкционированного копирования зачастую не даёт проводить законное копирование (например, резервное).
Организационные меры защиты от несанкционированного копирования
Основная идея организационных мер защиты заключается в том, что полноценное использование программного продукта невозможно без соответствующей поддержки со стороны производителя: подробной пользовательской документации, «горячей линии», системы обучения пользователей, обновление версий со скидкой и т.п. Организационные меры защиты применяются, как правило, крупными разработчиками к достаточно большим и сложным программным продуктам.
Юридические меры защиты от несанкционированного копирования
Предусмотрена ответственность, в соответствии с действующим законодательством, как за использование контрафактных экземпляров программ для ЭВМ и баз данных, так и за преодоление применяемых технических средств защиты.
Защита при помощи ключевой дискеты
Есть четыре основных способа создания некопируемых меток на дискетах:
- Считывание конкретного сектора дискеты (возможно, пустого или сбойного). Это самый простой способ защиты, и при копировании «дорожка в дорожку» дискета копируется.
- Запоминание сбойных секторов дискеты. Перед тем, как записать на дискету информацию, её царапают (или прожигают лазером), после этого записывают номера сбойных секторов. Для проверки подлинности дискеты программа пытается записать в эти сектора информацию, затем считать её.
- Нестандартное форматирование дискеты. Известна программа FDA (Floppy Disk Analyzer), которая могла проводить исследование и копирование таких дискет.
- «Плавающий бит». Один бит записывается так, что в некоторых случаях он читается как «0», в некоторых как «1». Проводится многократное считывание дискеты; среди результатов считывания должны быть и нули, и единицы.
Защита при помощи компьютерных компакт-дисков
Как правило, этот способ защиты применяется для защиты программ, записанных на этом же компакт-диске, являющимся одновременно ключевым. Для защиты от копирования используется:
- запись информации в неиспользуемых секторах;
- проверка расположения и содержимого «сбойных» секторов;
- проверка скорости чтения отдельных секторов.
Первые два метода бесполезны при снятия полного образа с диска. Третий метод более надёжный. Он используется, например, в защите Star Force. В этой защите также делается попытка проверить возможность записи на вставленный диск. Если запись возможна, то диск считается нелицензионным. Но существуют программы, которые могут эмулировать диски с учётом геометрии расположения данных, тем самым обходя эту защиту, и, к тому же, возможно записать диск CD-R с её учётом, и он будет признаваться лицензионным. Также возможно скрыть тип диска, чтобы CD-R или CD-RW был виден как обычный CD-ROM. Но и системы защиты тоже (используя специальный драйвер) борятся с ними, пытаясь обнаружить наличие эмуляции.
Защита программ, установленных на жёстком диске
Для программ, установленных на жёстком диске, могут применяться такие меры защиты:
- Программа может требовать вставленную дискету или компакт-диск. В частности, это широко применяется в играх. Но для многих программ такие меры недоступны (например, shareware-программы или программы повседневного пользования).
- Электронный ключ (донгл), вставленный в один из портов компьютера (обычно LPT или USB, редко — COM). Достоинство ключа в том, что его можно вставлять в любой компьютер, на котором намереваетесь запустить программу. Кроме того, электронный ключ быстр и не занимает дисковода. Но электронные ключи дороги (5—15 долларов), и применяются лишь в дорогостоящем ПО. Также теоретически возможны конфликты периферийных устройств с ключом. Типичный пример электронного ключа — HASP.
- Привязка к серийным номерам компонентов компьютера. Её достоинство в том, что не требуется никакого специфического аппаратного обеспечения, и программу можно распространять даже через Интернет. Но если пользователь производит модернизацию компьютера, защита отказывает. Авторы многих программ, защищённых привязкой, в подобных случаях готовы дать новый регистрационный код. Например, Microsoft в Windows XP разрешает раз в 120 дней генерировать новый регистрационный код (но в исключительных случаях, позвонив в службу активации, можно получить новый код и до прошествия этого срока). В качестве привязки используются серийный номер BIOS материнской платы, серийный номер винчестера.
- Сканирование сети. Это исключает одновременный запуск двух программ с одним регистрационным ключом на двух компьютерах в пределах одной локальной сети. Локальный брандмауэр можно настроить так, чтобы он не пропускал пакеты, принадлежащие защищённой программе. Правда, настройка брандмауэра требует некоторых пользовательских навыков. Кроме того, в большинстве реальных сетей «все друг другу доверяют» (это ускоряет доступ к ресурсам других компьютеров и сетевую игру), и брандмауэр безусловно пропускает локальный трафик.
- Если программа работает с каким-то централизованным сервером и без него бесполезна (например, онлайн-игра, антивирус), она может передавать серверу свой серийный номер; если номер неправильный, сервер отказывает в услуге. Это единственный стопроцентный способ защиты от копирования. Впрочем, пираты могут создать сервер, который не делает такой проверки. Например, существовал сервер battle.da, который по функциям был аналогичен Battle.net, но пускал пользователей пиратских игр.
Устаревшие методы защиты программного обеспечения
В прошлом применялись и другие методы защиты ПО от копирования.
- Некоторые старые программы для DOS создавали некопируемые метки на жёстком диске. Например, файл длиной 1 байт занимает на диске один кластер (не менее 512 байт), и в оставшиеся 511 байт можно записать некоторую информацию. Сейчас эта практика не используется, так как она чревата потерями данных.
- Привязка к руководству пользователя. Например, программа выводит: «Введите 5-е слово на 12-й сверху строке 26-й страницы». Более изощрённый способ защиты — в руководстве находится важная информация, без которой невозможно пройти игру, этим известна серия Space Quest. Распространение сканеров и многозадачных операционных систем положило конец этой практике.
- Привязка к некоторому механическому устройству. Игра Another World поставлялась с «кодовым колесом». В системе защиты от копирования Lenslok, применявшейся в играх для ZX Spectrum, надо было, посмотрев на картинку через систему призм, увидеть двухбуквенный код.
Внешний модуль против API
Некоторые защиты пристыковывают к программе защитный модуль (как это делают вирусы). Преимущество этой защиты в том, что её можно «надеть» на любую программу. Недостаток в том, что защита, как правило, легко отключается.
Более прочные защиты имеют свой API, с помощью которого можно сделать весьма сложную логику защиты. Весь защитный код оказывается «размазанным» по программе, и взлом оказывается трудным или невозможным.
Защита аудио компакт-дисков
Компакт-диски делают не полностью соответствующими спецификации Red Book, из-за чего (теоретически) диск должен читаться на плеерах и не читаться на компьютерных приводах CD-ROM. На практике такие диски читаются на некоторых приводах и, наоборот, не читаются на некоторых плеерах. Фирма Philips, владеющая знаком «Compact Disc Digital Audio», отказалась ставить эту марку на защищённых дисках. Из таких защит известны Cactus Data Shield и Copy Control.
В 2005 фирма Sony использовала свой метод защиты компакт-дисков, известный как Extended Copy Protection (XCP). Диски с XCP имеют дополнительную дорожку с данными, и при первой установке в системах семейства Microsoft Windows устанавливают скрытую программу, запрещающую копирование дисков. Поскольку эта программа ставится независимо от желания пользователя, маскируется и препятствует своему удалению, многие независимые исследователи сочли её троянским конём, то есть, зловредной программой, перехватывающей контроль над компьютером и создающей проблемы безопасности. В результате скандала Sony предложила программу-деинсталлятор и бесплатную замену дисков с XCP, но все проблемы не были решены. Системы не на основе Windows не подвержены этой опасности.
У аудиодисков, видео, книг и подобных носителей есть «аналоговая брешь»: если музыку можно воспроизвести, то её можно и записать. Если текст можно распечатать, то его можно и отсканировать.
Защита программного обеспечения на мобильных платформах
Способы защиты мобильного ПО от копирования обычно связаны с тем фактом, что пользователь не может изменять хранящиеся в ППЗУ аппарата данные, или может изменять лишь ограниченно.
Подробнее см. Мобильная игра.
Методы взлома
Для взлома защищённого программного обеспечения применяются такие методы:
- Копирование защищённого диска специальными программами.
- Эмуляция диска – специальный драйвер делает логический диск, который программа принимает за лицензионный. Во многих играх применяется вариант этого метода под названием «Mini Image», когда подставной диск имеет маленький размер (несколько мегабайт), тем не менее, игра признаёт его лицензионным.
- Эмуляция электронного ключа.
- Генерация регистрационного кода по серийным номерам аппаратного обеспечения.
- «Отключение» защиты взломом программного кода.
Почти во всех защитах есть методы противодействия взлому: дестабилизация отладчика; шифрование кода, исключающее работу дизассемблером; «ложные ветви», сбивающие хакера с толку; проверка целостности файла, не дающая накладывать патчи; виртуальная машина с собственной системой команд. Эти методы не дают узнать, как защита работает (или хотя бы оттягивают этот момент настолько, насколько можно).
Подробнее см. Взлом программного обеспечения.
Проблема «лучше, чем легальное»
Это одна из фундаментальных проблем защиты от копирования. Заключается она в том, что, с точки зрения пользователя, пиратская программа в каком-то смысле лучше, чем оригинальная. Например:
- С винчестера программа загружается быстрее, чем с компакт-диска. Кроме того, не нужно искать компакт-диск и всё время его вставлять,от чего он изнашивается.
- Если не использовать компакт-дисков, время работы ноутбука существенно увеличивается. Кроме того, на некоторых моделях ноутбуков устройство чтения компакт-дисков можно оставить дома, уменьшив вес ноутбука.
- При защите по руководству, не нужно обращаться к руководству.
- Электронный ключ мешает носить ноутбук в сумке; его надо вставлять перед началом работы и вынимать в конце.
По этой причине даже владельцы лицензионных копий иногда устанавливают поверх лицензионной копии взломщик.
Программистский фольклор
Существует три способа распространения программного обеспечения: воровство, грабёж и обмен краденым.
Ссылки
См. также
- Пиратство (компьютерное)
- Взлом программного обеспечения
- Кряк
- Технические средства защиты авторских прав
- Shareware
Это заготовка статьи об информационных технологиях и вычислительной технике. Помогите Википедии, дополнив её. |