Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

; - преобразование ключа шифрования выравнивание его длины с длиной магической строки - ifstrlen

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.5.2024

{   if (* (char*)a<*(char*)b)   return  -1; else   if (* (char*)a==*(char*)b)   return  0; else   return   1;    } void main()

{   char  tmp[MAXLEN],   //   упорядоченный ключ шифрования key[MAXLEN],    //   ключевая фраза

res[MAXLEN],   //  результирующее  хеш-значение   (шифро //текст)

str[MAXLEN]   = .MAGICTEXT;   //  магическая  строка /* проверка количества параметров командной строки при попытке запуска приложения и копирование ключевой фразы */

if(_argc>l)   strncpy(key,   _argv[l],   MAXLEN); else  strcpy(key,"");

/*   преобразование   ключа  шифрования   (выравнивание   его длины с длиной магической строки)   */ if(strlen(MAGICTEXT)<strlen(key)) strncpy(tmp,   key,   strlen(MAGICTEXT)); else   strcpy(tmp,   key);

while (strlen(tmp)<strlen(MAGICTEXT))   strncat(tmp," ",1) ; char  Key[MAXLEN];   //   преобразованный ключ strcpy(Key,   tmp);

//   сортировка  символов  ключа шифрования qsort(tmp,   strlen(tmp),   sizeof (char),   It); unsigned Perm[MAXLEN];   /* ключ шифрования для перестановки * /

//  цикл шифрования магической строки for(unsigned  i=0;   i<strlen(MAGICTEXT);   i++) {   Perm[i]=strchr(tmp,   Key[i])-tmp; tmp[Perm[i]]=' \1' ; res[i]=str[Perm[i]];    } res[strlen(MAGICTEXT)]='\0';

//   сравнение полученного и эталонного хеш-значений if(!strcmp(res,   HASHVALUE)) //   продолжение работы приложения при совпадении

/* завершение работы защищенного приложения при несанкционированном запуске  */ else  exit (-1);    }

Для скрытия процедуры санкционированного запуска приложения создается контейнер — документ в текстовом процессоре Microsoft Word с произвольным содержанием, но включающий в себя три макроса.

1. Играющий роль скрываемого сообщения макрос с произвольным именем для ввода пути к защищаемому приложению и

 параметра его запуска (ключевой фразы), запуска программы, завершения работы текстового процессора Microsoft Word:

Sub  CallProgO

'   CallProg Макрос

'   Макрос  создан 26.03.2004  Павел Б.   Хорев

s = InputBox("Параметры запуска",   "Инициализация",   "") If  s  о  ""  Then  Shell  s Application.   Quit End  Sub

Этот макрос с помощью команды меню Microsoft Word Сервис | Настройка | Клавиатура связывается с ключевой комбинацией клавиш на клавиатуре (например, Alt+Ctrl+P).

2. Макрос со стандартным именем для блокировки команды
меню
Microsoft Word Сервис | Настройка:

Sub ToolsCustomize()

' ToolsCustomize Макрос

' Настройка интерфейса пользователя Word (меню,

' клавиатура и " панели инструментов)

г

' Dialogs(wdDialogToolsCustomize).Show End Sub

3. Макрос со стандартным именем для блокировки команды
меню (и дублирующей ее кнопки панели управления) Сервис |
Макрос | Макросы:

Sub  ToolsMacroO г

'   ToolsMacro  Макрос

'   Запуск,   создание,   удаление или изменение макроса

'   Dialogs(wdDialogToolsMacro).Show End  Sub

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

• ключевую комбинацию клавиш для выполнения запускающего макроса (просмотр списка макросов документа и назначенных комбинаций клавиш будет заблокирован);




1. технического прогресса НТП Сущность и основные направления научнотехнического прогресса НТП НТП это
2. варіанти системи розвивального навчання розроблені науковими колективами під керівництвом російських псих
3. Отчет по лабораторной работе 1 по курсу ldquo;Железобетонные конструкцииrdquo; ldquo;Испытание железобетонной
4. Судова психіатрія Галузь знань 0304 право Напрям підготовки спеціальність 6
5. САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИМЕНИ Н
6. Чистые вещества и смеси Цели урока- Изучить чистые вещества и смеси
7. экономического развития города РостованаДону до 2005 года за период 19951997 годов Приложение к решению город
8. Реферат- Возникновение и общественная природа сознания
9. Взаимоотношения полов принято рассматривать в контексте различий между мужчиной и женщиной
10. На тему 9- Государство как политический институт Выполнила- студентка 2 курса заочной формы обуч
11. одна из основных отраслей народного хозяйства страны
12. ті роки в СРСР Місце взаємодії в структурі спілкування
13. Литовский мирный договор Все строение возводимое ныне германскими империалистами в несчастном догово
14. тематике 1 семестр Роль математики в образовании инженера
15. тема источников уголовноисполнительного права Уголовноисполнительные правоотношения их характеристи
16. воспитание одно из ведущих в педагогике
17. своїх і чужих
18. Эпидемиология для студентов 3 курса факультета Общая медицина При ВГА какой возможен путь передачи--
19. Роль ГА Захарьина в разработке учения об анамнезе
20. доклад требует краткого предисловия.