Защита данных от несанкционированного доступа

Автор: Пользователь скрыл имя, 26 Декабря 2011 в 13:54, курсовая работа

Краткое описание

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

Оглавление

Введение . . . . . . . . . . . 3
1. Постановка задачи . . . . . . . . . 4
1. 1. Организационно-экономическая сущность задачи . . . . 4
1. 2. Входные данные . . . . . . . . . 6
1. 3. Постоянная информация . . . . . . . . 6
1. 4. Выходная данные . . . . . . . . . 6
2. Вычислительная система . . . . . . . . 7
2. 1. Операционная система . . . . . . . . 7
2. 2. Технические средства реализации задачи . . . . . . 8
2. 3. Программные средства . . . . . . . . 8
3. Алгоритм задачи . . . . . . . . . 10
4. Описание программы . . . . . . . . . 14
5. Описание применения программы . . . . . . 16
6. Заключение . . . . . . . . . . 17

Файлы: 1 файл

KP_MAX.DOC

— 201.50 Кб (Скачать)

         jmp  use

d_t_2:

         inc  si

         call  det_type

         pop  ax

         cmp  ax, 0

         je  test_end

c_b_2:

         jmp  use

test_end:

         add  si, 2

         cmp  cx, si

         jb  c_b_2

         mov  byte ptr [si+1], 0 

OPEN_F:                                          ;Открыть, определить длину

         mov  ah, 3dh                  ;и прочитать в буфер файл

         mov  al, 2                      ;source_file

         mov  dx, NameSouOff

         int  21h

         jnc  yes_open

         int  20h

yes_open:                                         ;Определить длину

         mov  bx, ax

         mov  hand_2, ax

         mov  ah, 42h

         xor  cx, cx

         xor  dx, dx

         mov  al, 2

         int  21h

         jnc  yes_p_1

cn_mov_2:

         int  20h

yes_p_1:

         mov  word ptr len_s, ax

         mov  ah, 42h

         xor  cx, cx

         xor  dx, dx

         mov  al, 0

         int  21h

         jc  cn_mov_2

         mov  ah, 3Fh

         lea  dx, buff

         mov  cx, word ptr len_s

         int  21h

         jnc  open_targ

         int  20h 

OPEN_TARG    ;Открыть target_file

         mov  ah, 3Dh

         mov  al, 2

         mov  dx, NameTarOff

         int  21h

         jnc  det_len_1

         int  20h

det_len_1:

         mov  hand_1, ax

         mov  bx, hand_1

         mov  ah, 42h

         xor  cx, cx

         xor  dx, dx

         mov  al, 2

         int  21h

         jnc  rest_len

         jmp  cn_mov_1

rest_len:

         mov  len_t_1, dx

         mov  len_t_2, ax 

TO_PROC:           ;Если target_file - COM,

         cmp  type_t, 0          ;то CALL WR2COM.

         je  c_com                 ;Если target_file - EXE,

         call  wr2exe                 ;то CALL WR2EXE.

         jmp  short CLOSE_F

c_com:

         call  wr2com 

CLOSE_F:                                          ;Закрыть файлы

         mov  ah, 3Eh              ;source_file и target_file

         mov  bx, hand_1

         int  21h

         jnc  cl_2

         int  20h

cl_2:

         mov  ah, 3Eh

         mov  bx, hand_2

         int  21h

         jnc  OK

         int  20h

OK:

         mov  ah, 9

         int  20h 
 

det_type proc                            ;Подпрограммы

         mov  bp, sp

         push  ax

         push  cx

         push  di

         xor  ax, ax

         lea  di, ext_a

loo_1:

         push  si

         push  di

         mov  cx, 3

         repe  cmpsb

         jne  end_loo_1

         pop  di

         pop  si

         mov  [bp+2], ax

         jmp  d_ret

end_loo_1:

         inc  al

         pop  di

         add  di, 3

         pop  si

         cmp  al, 2

         jb  loo_1

         mov  [bp+2], ax

d_ret:

         pop  di

         pop  cx

         pop  ax

         ret

det_type endp 

wr2exe  proc

         push  ax

         push  bx

         push  cx

         push  dx

         push  si

         push  di

         jmp  st_2exe

     hdr  label byte

         dw  ?

PartPag  dw  ?

PageCnt dw  ?

         dw  ? 

HdrSize  dw  ?

         dw  5 dup(?)

ExeIP  dw  ?

ReloCS  dw  ?

len_hdr  equ  $-hdr    ;Команды, записываемые

imit  label  byte                     ;в конец файла

         mov  ax, es              ;Команды записи в стек

I_1:                                              ;адреса начала EXE-файла

         add  ax, 0

         add  ax, 10h

         push  ax

I_2:

         mov  ax, 0

         push  ax                     ;Команды пердачи управления

         mov  ax, 100h              ;source_file, как и для COM

         push  ax                            ;файла

         db  0C3h

len_imit  equ  $-imit

st_2exe:

         mov  ah, 42h              ;Читать заголовок EXE-файла

         mov  bx, hand_1        ;Установить указатель на

         xor  cx, cx            ;начало файла

         xor  dx, dx

         mov  al, 0

         int  21h

         jc  cn_mov_1

         mov  ah, 3Fh

         lea  dx, hdr

         mov  cx, len_hdr

         int  21h

         jnc  prep_end

cn_r_1:

         int  20h

prep_end:                                         ;Настроить команды, дописываемые

         mov  ax, ReloCS            ;в конец файла target_file

         mov  word ptr i_1[1], ax ;Записать в стек адреса

         mov  ax, ExeIP             ;начала EXE-файла

         mov  word ptr i_2[1], ax ;Передать управление файлу

         mov  cx, len_t_1          ;source_file по соглашениям

         mov  dx, len_t_2       ;системы DOS

         mov  si, cx                 ;Записать команды в конец

         mov  di, dx                  ;EXE-файла

         mov  ah, 42h

         mov  al, 0

         mov  bx, hand_1

         int  21h

         jnc  yes_wr

cn_mov_1:

         int  20h

yes_wr:

         mov  ah, 40h

         lea  dx, imit

         mov  cx, len_imit

         int  21h

         jnc  wr_sour

cn_w_1:

         int  20h

wr_sour:                                      ;Записать source_file в конец

         mov  cx, si                  ;EXE-файла

         mov  dx, di

         add  dx, len_imit

         jnc  m1

         inc  cx

m1:

         add  dx, 15

      jnc  m2

         inc  cx

m2:

         and  dx, 0FFF0h

         mov  si, cx

         mov  di, dx

         mov  ah, 42h

         mov  al, 0

         int  21h

         jc  cn_mov_1

         mov  ah, 40h

         lea  dx, buff

         mov  cx, len_s

         int  21h

         jc  cn_w_1

         mov  ax, si

         mov  bx, di

         add  bx, ax

         mov  cl, 4

         ror  bx, cl

         sub  bx, 10h

         sub  bx, HdrSize

         mov  ReloCS, bx

         mov  ax, PartPag

         and  ax, 000Fh

         mov  bx, ax

         add  ax, len_imit

         add  ax, 15

         and  ax, 0FFF0h

         add  bx, 100h

         sub  bx, ax

         mov  ExeIP, bx

         mov  ax, si

         mov  bx, di

         add  bx, len_s

Информация о работе Защита данных от несанкционированного доступа