Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Demon's Souls |#10| Мaneater (part 1)
Demon's Souls |#9| Heart of surprises
Demon's Souls |#8| Maiden Astraea
Demon's Souls |#7| Dirty Colossus

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Долгин А.Е. Весь текст 223.76 Kb

Как защитить информацию (пособие по борьбе с хакерами)

Предыдущая страница Следующая страница
1 2 3 4  5 6 7 8 9 10 11 12 13 14 ... 20
мире, но понятной. И в принципе реализуемой - что стоит для хорошего
компьютера учесть несколько тысяч величин? Лишь бы были тщательно
проработаны математические формулы и введены числовые значения всех
факторов, влияющих на человека.


3(

                  ОПРЕДЕЛЕНИЕ ОСОБЕННОСТЕЙ КЛАВИАТУРНОГО ПОЧЕРКА.

           1) Темп набора тестового материала в целом:
                               Tm = T/n
              где T - время набора, n - число символов.

           2) Темп набора каждого слова:
                           Ts[i] = T[i]/k[i]
                  где T[i] - время набора i-того слова,
                      k[i] - число символов в нем.

           3) Средняя пауза между словами:
                         i=L
               Tp = (T -    (T[i]) ) / L
                         i=1
                  где L - число слов в тексте.

           4) Степень связности набора (вычисляется после исключения
         грубых ошибок):
                        ДДДДДДДДДДДДДДДДД¬
                  S =   (t[j] - M) /(n-1)
             где  t[j] - время между набором j и j+1 символа в
                         слове (пробелы исключаются),
                      i=L
                  M =    (T[i])/n.
                      i=1

           5) Общий рисунок почерка:
               dX[i] = t[i] - t[i+1] для всех i.




                                   рис. 2.1


                                                          Таблица 2.1

                  СООТВЕТСТВИЕ КЛАВИАТУРНЫХ И РУКОПИСНЫХ
                           ХАРАКТЕРИСТИК ПОЧЕРКА
         ЪДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДД¬
         ¦ На клавиатуре ¦    В рукописи      ¦Особенность характера¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Длительный  по-¦Отсутствие    связи ¦Душевный разлад (если¦
         ¦иск клавиши.   ¦между буквами слова.¦за ПЭВМ не новичок). ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Одинаковые пау-¦Равномерные интерва-¦Уверенность  в  себе,¦
         ¦зы между слова-¦лы между словами.   ¦отсутствие    отрица-¦
         ¦ми.            ¦                    ¦тельных  переживаний.¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Длительность   ¦Неравномерность  ин-¦Неустойчивость харак-¦
         ¦пауз между сло-¦тервалов  между сло-¦тера,   несогласован-¦
         ¦вами изменяется¦вами                ¦ность чувств,  актив-¦
         ¦в широких  пре-¦                    ¦ность     проявляется¦
         ¦делах.         ¦                    ¦только  в  результате¦
         ¦               ¦                    ¦отдельных вспышек во-¦
         ¦               ¦                    ¦левой энергии.       ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Ровный темп на-¦Равномерность напи- ¦Способность к регуля-¦
         ¦бора    каждого¦сания как первых так¦рной  систематической¦
         ¦слова при  вво-¦и последних строк   ¦работе.   Привычки  к¦
         ¦де всего тесто-¦рукописного текста. ¦порядку, пунктуально-¦
         ¦вого материала.¦                    ¦сти и аккуратности.  ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Пауза     между¦Плотное    написание¦Истеричность.        ¦
         ¦словами  много-¦слов  с  чрезмерными¦                     ¦
         ¦кратно превыша-¦интервалами    между¦                     ¦
         ¦ет паузы  между¦ними.               ¦                     ¦
         ¦отдельными бук-¦                    ¦                     ¦
         ¦вами.          ¦                    ¦                     ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Высокий    темп¦Более правильное и  ¦Быстрая утомляемость.¦
         ¦в начале теста,¦четкое написание на-¦                     ¦
         ¦заметно снижаю-¦чала текста по срав-¦                     ¦
         ¦шийся к его за-¦нению с заключением ¦                     ¦
         ¦вершению.      ¦                    ¦                     ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Темп ввода  от-¦                    ¦Тестируемый ранее не-¦
         ¦дельных    слов¦                    ¦однократно набирал их¦
         ¦значительно вы-¦                    ¦на клавиатуре.       ¦
         ¦ше среднего.   ¦                    ¦                     ¦
         ГДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДґ
         ¦Отдельные слова¦                    ¦Тестируемый   никогда¦
         ¦вводятся гораз-¦                    ¦не встречался с  дан-¦
         ¦до    медленнее¦                    ¦ными словами, возмож-¦
         ¦остальных.     ¦                    ¦но, даже не знает  их¦
         ¦               ¦                    ¦правописания.        ¦
         АДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДЩ


                  3. КАК ЗАЩИТИТЬСЯ ОТ "РАЗМНОЖЕНИЯ"
                        (идентификация ПЭВМ).
     С развитием отечественного рынка программ возрастает значение их
защиты от несанкционированного копирования (НСК). Разработчики просто
опускают руки перед фатальной неизбежностью пиратского распространения
своего детища, ведь кража этой интеллектуальной собственности проста,
занимает считанные минуты и остается незаметной, хотя доходы приносит
вполне приличные. Правда, корпорации-монстры все же предпочитают не
защищать собственную продукцию, ибо общий оборот их средств намного
превышает убытки от воровства, которые, кстати, частично покрываются
такой "бесплатной рекламой". Однако, для подавляющего большинства фирм
и организаций, занимающихся разработкой ПО, продажа копий (зачастую с
единственной "товарной" программы) - основное средство существования.
"Пираты" же изменяют не только название продукта, но и
фирму-изготовителя, тем самым добавляя к моральным потерям появление
конкурирующего товара с аналогичными потребительскими свойствами.
Поэтому каждый разработчик, несомненно, рано или поздно сталкивается с
проблемой защиты ПО от НСК.
    Первая дилемма, возникающая на этом пути: придумывать ли защиту
самому или же приобрести существующий пакет "контрдействий", которых,
к слову сказать, появилось у нас великое множество. Обычно выбор
определяется важностью и стоимостью защищаемой информации, но,
пожалуй, решающее значение играет квалификация программиста.
Профессионал чаще приступает к созданию оригинальной защиты, ибо
большинство ныне существующих представляют собой так называемый
пристыкованный блок, который, чего греха таить, является чистым
надувательством. Ведь опытные хакеры снимают его за считанные минуты,
даже не удостаивая изучением (например, с помощью утилиты CATCHER,
рекламируемой центром САПР Ассоциации "Наука"). Кроме того,
профессионал никогда не отдаст на откуп другому такую интересную
задачу, как создание защиты. А любитель выберет уже существующие
охранные программы. Бывают еще случаи привлечения программистов "со
стороны", но, поскольку передача исходных текстов сопряжена с утечкой
информации (от которой как раз и стремятся застраховаться), это не
типично для нашего рынка.
     Сейчас, выражаясь на жаргоне программистов, существуют три типа
пресечения НСК: "по дискете", "по машине" и "по пользователю". Первый
- проверяет характеристики и информацию ключевой дискеты, которая
служит, как правило, и носителем защищаемого ПО. Второй - следит за
совпадением некоторых заранее определенных характеристик допущенного
для работы компьютера. О третьем и, пожалуй, самом интересном способе
охраны речь шла в двух предыдущих главах.
     Наиболее эффективен второй путь, так как проверка компьютера
проста и непродолжительна, может часто повторяться по ходу работы, не
снижая общего быстродействия. Если же режим реального времени не
обязателен и возможны многократные обращение к "медленным устройствам"
типа гибких дискет или проверка клавиатурного почерка пользователя
(конечно, когда он участвует в работе программы), то и остальные типы
охраны могут быть встроены в блок защиты.
     Разберем алгоритмы проверки компьютера. Программу удобнее
привязать к следующим характеристиками машины:
    1) быстродействие: процессор, память, контроллеры и т.д.; скорость
вращения двигателей дисководов; скорость реакции на внешние
воздействия;
    2) конфигурация: тип микропроцессора (МП) и разрядность шины
данных; наличие и тип контроллеров для внешних устройств и самих
устройств (жесткие и гибкие диски, сопроцессор);
    3) особенности: контрольная сумма BIOS; содержимое CMOS памяти;
длина конвейера шины данных; аномальные явления в ходе его работы.
    Их разделение на группы обусловлено лишь похожими алгоритмами
определения и применения, а вообщем-то, оно весьма условно.
    Легко заметить, что быстродействие (первая группа) в наибольшей
степени отражает индивидуальные отличия машин - они, пожалуй,
эффективнее других привяжут ПО к компьютеру. Правда, из-за
нестабильности электронных элементов схемы, нестабильны и показатели
его узлов. Незнание способов корректировки таких накладок чаще всего и
отпугивает программистов.
    Один из методов определения быстродействия компьютера представлен
в процедуре "Sample" (рис. 3.1), который фиксирует отсчет таймера за
время выполнения фрагмента 16 - 20. В регистр AX заносится для
дальнейшего использования результат. Напомним, непосредственное его
сравнение с некоторой эталонной величиной может привести к ошибке
из-за нестабильности задающего генератора ПЭВМ. Отметим также, что
реализация аналогичного алгоритма на языке BASIC даст еще больший
разброс значений - это общий недостаток почти всех языков высокого
уровня. Для исключения грубых ошибок и повышения точности необходимо
провести многократные измерения и воспользоваться алгоритмом на рис.
1.1 (глава "Идентификация пользователя: "свой"-"чужой?").
     Время выполнения одного и того же участка программы на разных
компьютерах скорее всего будет отличаться, что и позволит выделить
определенную ПЭВМ из ряда аналогичных.
     Тот же пример (рис. 3.1) годится и для измерения скорости работы
оперативного запоминающего устройства (ОЗУ). Его электрическая схема
набирается из микросхем (МС), объемом по 16, 32 или 64 Кб (килобит). В
зависимости от типа, 8 - 16 таких МС составляют 1 блок (электронщики
называют их "блоком", а программисты "страницей"), емкостью 64 КБ
(килобайт). Значит, в стандартном адресном пространстве IBM PC/XT в
640 КБ - 10 блоков МС, причем каждый имеет собственные характеристики,
чуть-чуть отличающиеся от других. То есть быстродействие страниц ОЗУ у
каждого компьютера различно. На участке 16 - 20 осуществляется простая
перезапись содержимого области памяти (ее регенерация). Время
регенерации всех страниц составит ряд из 10 чисел, значения и
последовательность которых характерны только для данной ПЭВМ.
    Скорость вращения двигателей дисководов определяется аналогично
(например, замер по таймеру операции чтения/записи некоторого сектора
или дорожки дискеты, как это делает COPYLOCK).
    Под скоростью реакции на внешние воздействия понимается время,
необходимое компьютеру на отклик после получения команды внешнего
устройства, или размер паузы между выдачей команды, например, в
контроллер накопителя гибких магнитных дисков (НГМД), и приходом
сигнала готовности (аппаратное прерывание IRQ7 для НГМД). Измерения
проводятся по отсчетам таймера, но можно использовать и свой
программный счетчик, как это делает BIOS при дисковых операциях.
     Если речь идет о компьютерах одной партии, то информация о типе и
конфигурации не уникальна, хотя, как дополнительный элемент привязки к
характеристикам ПЭВМ, не повредит. Ее можно получить через прерывание
BIOS 11h (или по адресу 40h:0010h ОЗУ), а более исчерпывающую - из
CMOS-памяти. Гораздо сложнее определить программным путем тип МП.
Предыдущая страница Следующая страница
1 2 3 4  5 6 7 8 9 10 11 12 13 14 ... 20
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 
Комментарии (4)

Реклама