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





НазваниеРазработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии
страница7/10
Дата публикации01.08.2013
Размер1.43 Mb.
ТипАвтореферат
100-bal.ru > Информатика > Автореферат
1   2   3   4   5   6   7   8   9   10

4.3.2 Описание разработанных программ

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

    1. Допускается перестановка переменных, объявленных только в начале блока. Это согласуется с общепринятой практикой программирования на C++ – прежде чем использовать переменные, их необходимо объявить. Хотя некоторые переменные могут быть объявлены по ходу выполнения программы, их позиции в исходном тексте не следует менять, потому что это нарушит область их видимости и может привести к различного рода ошибкам.

    2. Не допускается перестановка инструкций, которые выглядят независимыми, если они содержат любой вызов функции. Это делается потому, что мы не можем гарантировать отсутствия каких-либо зависимостей или побочных эффектов у функции. При наличии таких эффектов замена позиции такой инструкции может вести к ошибкам. Например,

a = b + x();

c = 5 + y();

в данном случае функции могут использовать один общий объект (переменная, файл и др.), и возвращаемое значение может зависеть
от состояния этого объекта.

    1. Запрещается переставлять кажущиеся независимыми инструкции, если они содержат любую косвенную ссылку (указатель, массив). Проследить содержимое указателей по их имени, чтобы гарантировать независимость инструкции, не представляется возможным. Например, операции:

*p = 5;

*q = 4;

могут быть зависимы, когда указатели p и q ссылаются на одну
и ту же область памяти.

    1. Допускается переставлять только те выражения, которые содержат
      в себе переменные, объявленные локально. Глобальные переменные
      и, особенно, макросы не могут быть прослежены. Например:

#define a *g

int R()

{ int f,*g=new (int);

*g=6;

f=*g+1;

a=-9;



}

В таком случае, операции присваивания f1=*g+1; и a=5; являются зависимыми не смотря на то, что содержат различные имена переменных.

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

Для практической проверки работы предлагаемой схемы встраивания информации была создана программа, внедряющая и извлекающая секретное сообщение из исходных кодов программ на C\C++. На вход программе подается множество файлов с исходными кодами и внедряемое сообщение. В настоящий момент существуют две версии программы: консольная и с графическим интерфейсом. Обе программы внедряют
и извлекают водяной знак одинаковым образом.


Рис. 4.1. Консольная версия программы нанесения водяных знаков


Рис. 4.2. Графическая версия программы нанесения водяных знаков
Принципиальная схема работы программы сводится к следующим этапам.

  1. Предварительная обработка;

  2. Поиск входа в функцию;

  3. Обработка локальных переменных;

  4. Обработка операций присваивания;

  5. Переход к этапу 2 (или выход).

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

На следующем этапе необходимо, пропустив глобальные объявления различных объектов, найти описание первой функции, имеющей следующий шаблон: “<тип><идентификатор>(<набор параметров>) {. Стоит отметить, что особенностью разработанной программы является то,
что для внедрения сообщения не требуется весь исходный код (включая заголовочные файлы и др.). Программа определяет считанный идентификатор как описание типа, если он находится в начале ряда идентификаторов (не являющихся зарезервированными) идущих друг
за другом через пробел. Последний идентификатор в таком ряде (согласно стандарту ANSI C [48]) относится к имени объекта (переменной, функции
и др.). Например,

Sometype ttt( ){…

или

#define Sometype unsigned

#define x int

Sometype x ttt = …

В последнем случае, можно определить последовательность Sometype x
как описание типа, не анализируя директивы препроцессора (#define).

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

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

A = d + 1; // 1

C = F + 5; // 2

d = 17; // 3

a = x + 5; // 4

f = c + 1; // 5

Мы видим, что выражения 1 и 3 зависимы. Так образом, внедрение осуществляется перестановкой 1 и 2 выражений. Затем, пропускается присваивание 3, и производится перестановка 4 и 5 выражений. Таким образом, блок независимых операций присваивания заканчивается
при появлении зависимого выражения (как в рассмотренном примере), либо при появлении выражения неподходящего для перестановки (присваивание, имеющее вызов функции, указатели и др.).

На пятом этапе происходит переход на новую функцию или окончание анализа, если достигнут конец файла.

4.4 Описание результатов проведения эксперимента
Для практической проверки работы предложенной схемы были использованы 33 программы C\C++ для платформы Symbian. Проекты
с исходными текстами являются общедоступными и были взяты из сети Internet. Ниже приводятся результаты проведенного эксперимента
для некоторых проектов в табл. 4.2.
Таблица 4.2. Объем внедряемого водяного знака в исходные коды программ



Имя проекта

Размер кода18, байт

Длина внедрения, бит

Фактическая

Теоретическая

1

A_Game_for_ the_Nokia_9210

54952

1

14

2

ANSI_X931 _PRNG

72736

13

13

3

bmconv

114386

6

104

4

csvdata

58706

0

9

5

Culdaw

57878

2

52

6

DosBox

1549852

127

535

7

drep

2589

0

0

8

e32frodo-0.5.0

472695

6

119

9

e32nfs

9237

2

6

10

esidplay

250092

3

112

11

fb_s60_3rdv0.94_320x240

98185

1

10

12

gnubox

23156

0

5

13

hellu

1028

0

0

14

hexdump

7417

0

0

15

HView_v1_13beta_source

45300

27

32

16

lzma

72401

0

2

17

lzmaobfrec

2811

0

3

18

Mdictionary

147555

8

41

19

metronome

8867

0

2

20

OpenVideoHub

4820658

2205

2635

21

putty_src_1.5.1

2627950

1018

1360

22

rijndael

41439

0

0

23

screenshot_v3.03_src

52893

0

0

24

sdpbrowser

107284

2

28

25

SmartCam

630616

0

40

26

SymbianOsUnit1_04

1034778

0

6

27

SymDjvu_src

1648160

1

0

28

SymTorrent_1.30

440134

40

131

29

TaskSpy_0.96b

99310

0

10

30

vim

2546288

207

261

31

vncviewer_source_1.0

111265

9

73

32

whereami

2950267

0

131

33

xrickS60-src

1039586

2

35
1   2   3   4   5   6   7   8   9   10

Похожие:

Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconРоссийской федерации
Курс призван дать понимание принципов построения и функционирования сети Интернет, а также базирующихся на ней информационных технологий....
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconАналитический доклад Совету глав правительств СНГ о текущем состоянии,...
В настоящее время эффективное информационное взаимодействие невозможно представить без использования информационных технологий, телекоммуникационных...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconInformation technology. Security techniques. Methodology for it security evaluation
Информационная технология. Методы и средства обеспечения безопасности. Методология оценки безопасности информационных технологий
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconВыпускная работа по «Основам информационных технологий»
На современном этапе ни одни исследования в науке невозможно представить без использования информационных технологий. Данный реферат...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconОсновные направления внедрения средств информационных и коммуникационных...
Зация образования – это процесс обеспечения сферы образования методологией и практикой разработки и оптимального использования современных...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconДоклад по теме: «Внедрение технологий глонасс в интересах обеспечения...
«Внедрение технологий глонасс в интересах обеспечения безопасности граждан и социально-экономического развития Костромской области....
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconПрименение информационных технологий на уроках английского языка...
Возможности использования информационно-коммуникативных технологий в обучении английскому языку 17
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconМетодические рекомендации по организации месячникамедиабезопасности...
Мешиона от 24. 10. 13 №397-у «О проведении Интрнет-уроков «Имею право знать!», в целях обеспечения информационной безопасности обучающихся,...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconИсследование и разработка методов и средств обеспечения информационной...
Работа выполнена на кафедре прикладной информатики Московского государственного университета геодезии и картографии (миигаиК)
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconПрименение информационных технологий на уроках истории и обществоведения...
Возможности использования информационно-коммуникативных технологий в обучении истории 17
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconПрограмма по формированию навыков безопасного поведения на дорогах...
Изучение и разработка новых методов подготовки к егэ в 11 классе с учетом использования современных технологий
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconПрограмма по формированию навыков безопасного поведения на дорогах...
Изучение и разработка новых методов подготовки к егэ в 11 классе с учетом использования современных технологий
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconЭффективность использования информационных технологий в исследованиях...
Специальность 23. 00. 01 – теория и философия политики, история и методология политической науки
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconРабочая программа учебной дисциплины «Информационные системы в экономике»
Сформировать у студентов знаний и навыков в области использования информационных технологий и информационных систем для решения экономических...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconМетодические рекомендации по государственной регистрации и учету...
«Центр информационных технологий и систем органов исполнительной власти» (далее – фгну цитиС) в целях формирования национального...
Разработка методов обеспечения безопасности использования информационных технологий, базирующихся на идеях стеганографии iconПриходько Юлия Алексеевна Приложение №2 Белгородский региональный...
Необходимость внедрения новых информационных технологий в процесс обучения математики


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск