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

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

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

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

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

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

от 25%

Подписываем

договор

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

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

{   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. Арттерапия использование художественного творчества с терапевтической целью
4. тема ориентированная на сбор хранение поиск и обработку текстовой и-или фактографической информации
5. Медикопрофилактическое дело І курс Анатомия 360 тест ~Количество шейных позвонков- - 7 - 5 - 4 - 8
6. эндогенные залежи полезных ископаемых источником минеральных веществ которых служит магма; образуются п
7. Еволюція та існування зачісок у 80-х роках ХХ століття
8. Лизинг4
9. Реферат- Финансовая деятельность
10. Хвойная долгожительница