Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
защита билеты.docx
Скачиваний:
89
Добавлен:
21.09.2019
Размер:
346.96 Кб
Скачать

Введение межсекторных связей

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

Суть метода в следующем. На выделенной дорожке дистрибутивной дискеты путем применения специальной программы организуется несколько секторов с одинаковым номером и в них записываются некоторые различные данные. Пусть, например, номера на 79 дорожке заданы как 2,2,1,4,5,6,7,8,9 и в первом секторе с номером 2 записано "C", а во втором секторе 2 - "B". Берется еще одна дорожка, например, 78, и сектор на ней, например, 1-ый, и в него записывается некоторая информация, пусть "А". В контролирующей части защищаемой программы организуется чтение сектора 1 на 78 дорожке и сразу же запрос чтения сектора 2 на 79 дорожке. Тем самым всегда обеспечивается переход к чтению информации из второго сектора с номером 2 на дорожке 79, то есть мы прочитаем биграмму "AB" с дистрибутивной дискеты.

Пусть было произведено "пиратское" копирование дискеты с защищаемой программой на обычно отформатированную дискету. Контролирующая часть программы считывает 1-ый сектор с 78 дорожки. Далее идет запрос чтения сектора 2 на 79 дорожке. Так как сектора на "пиратской" дискете пронумерованы стандартно, то есть 1,2,3,4,5,6,7,8,9, то после запроса сектора 2 будет получено значение "C". Следовательно, будет прочитана биграмма "AC".

Таким образом, контролирующая часть защищаемой программы устанавливает, что если дискета не дистрибутивная, то прочитывается биграмма "AC", означающая, что считан сектор 2 с 79 дорожки, который находится на ином физическом расстоянии от начала дорожки по сравнению с расстоянием для сектора 2 на дистрибутивной дискете, когда считывается биграмма "AB". Программа прерывается.

Изменение длины секторов

Еще одна схема защиты, основанная на методе нестандартного форматирования, использует изменение длины сектора. Напомним, что стандартная длина сектора, с которой работает MS DOS по умолчанию, - 512 байт, при этом на дорожке размещается 9 секторов. В процессе специального форматирования дискеты на заданной дорожке длина секторов устанавливается либо 128, либо 256 байт.

Введенное изменение длины секторов на заданной дорожке определяется контролирующей частью защищаемой программы. Это осуществляется, например, путем обращения к сектору с максимальным номером, либо проверкой того, что длина секторов на указанной дорожке 128 (или 256) байт.

Стандартно отформатированная дискета, на которую проведено "пиратское" копирование защищаемой программы, имеет длину секторов на всех дорожках 512 байт (по 9 секторов на дорожке). В ходе выполнения защищаемой программы ее контролирующая часть осуществляет проверку длины секторов на заданной дорожке. Если контролирующая часть использует способ обращения к сектору с максимальным номером (большим 9), то такой сектор найден не будет (так как их только 9) и выполнение программы прекращается.

Аналогично работает контролирующая часть и в способе, в котором осуществляется проверка, что длина секторов 128 (или 256) байт.