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

Автор: Пользователь скрыл имя, 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 Кб (Скачать)

         mov  al, 0

         mov  cx, 1

         mov  dx, 248

         mov  bx, offset buffer1

         int  25h                     ;Считываем сектор

         pop  dx 

         mov  bx, 0

         mov  ax, 0

pr_ent2:

         mov  dh, protect[bx]   ;3-яя проверка. Проверяется

         cmp  buffer1[bx], dh     ;наличие на диске

         jne  g1                       ;закодированной информации

         jmp  g2

g1:

         inc  ax

g2:

         inc  bx

         cmp  bx, len_enter2

         jb  pr_ent2

         cmp  ax, 0

         jne  no_disk

         mov  al, 0

         mov  cx, 1

         mov  dx, 244

         mov  bx, offset buffer

         int  26h                  ;Попытка записи на сектор

         pop  dx 

         mov  al, 0

         mov  cx, 1

         mov  dx, 244

         mov  bx, offset buffer1

         int  25h                ;Попытка чтения с сектора

         pop  dx 

         cld                                       ;df=0

         lea  si, buffer

         lea  di, buffer1

         mov  cx, 512

         mov  ax, 0

l:

         cmpsb                                  ;Сравнение записанной и

         jne  l1                          ;считаной информации

         jmp  l2

l1:  inc  ax

l2: loop  l

         cmp  ax, 5

         jl  no_disk 

         fat  bufrez              ;Запись FAT

         pop  ds 

         pop  es

         db  0cbh                   ;RetF. Перейти на программу 

no_disk:                                          ;Это не ключевая дискета

         mov  ah, 2

         mov  bx, 0

pr_ent1:

         mov  dl, dsk_key[bx] ;Вывод сообщения

         sub  dl, 10h

         int  21h

         inc  bx

         cmp  bx, len_enter1

         jb  pr_ent1 

         fat  bufrez               ;Запись FAT

         mov  ah, 4ch              ;Выход в DOS

         mov  al, 0

         int  21h 

copyright db       'Copyright(C) Юзефович Артем ( МГВРК,'

      db       ' Минск ), 1996'

                db       0Dh, 0Ah, 'Ключевая'

                db       ' дискета.', 0Dh, 0Ah

                db       0Dh, 0Ah, 0Dh, 0Ah, '$' 

code     ends

end  start 

;****************************************************************************

;****************************************************************************

;**                                                                        **

;**                     КП "ЗАЩИТА ДАННЫХ ОТ НСД"                          **

;**         Выполнили учащиеся гр.46491 ЕГАНОВ МАКСИМ и ЮЗЕФОВИЧ АРТЕМ     **

;**                                 1996                                   **

;**                                                                        **

;**                          Защита винчестера                             **

;****************************************************************************

;****************************************************************************

keybd_flags_1_  equ     417h                     ;Флаги клавиатуры

data_10e        equ     0 

seg_a           segment byte public

                assume  cs:seg_a, ds:seg_a 
 

                org     100h                     ;Счетчик команд 

Block           proc    far 

start: 

                jmp     real_start

data_1          db      1

data_2          dw      7241h, 6574h

data_4          dw      2E6dh, 2020h

data_6          dw      2020h, 2020h

flag1           db      0

flag2           db      0

flag3           db      0

allf            db      0

nameF           db      'C:\sub_rosa\block.com', 0

Block           endp 

int_09h_entry   proc    far                      ;Процедура обработки 09h

                push    ax                       ;прерывания

                push    ds

                mov     al,cs:allf

                xor     al,1

                mov     cs:allf,al

                jmp     k2

k:

                mov     cs:allf,1

k2:

                in      al,60h                   ;Обращение к порту клавиатуры

                cmp     al,32h                   ;Проверка на нужную

                je      l1                       ;комбинацию

                cmp     al,08h

                je      l2

                cmp     al,1eh

                je      l3

                jmp     loc_1 

l1:

                mov     cs:flag1,1

                jmp     loc_2

l2:

                cmp     cs:flag1,0

                je      loc_1

                mov     cs:flag2,1

                jmp     loc_2

l3:

                cmp     cs:flag2,0

                je      loc_1

                mov     cs:flag3,1

                jmp     loc_2

loc_1:

                pop     ds

                pop     ax

                cmp     cs:allf,1

                jne     r2

                mov     cs:flag1,0

                mov     cs:flag2,0

                mov     cs:flag3,0

r2:

                jmp     dword ptr cs:data_2

loc_2:

                sub     ax,ax

                mov     ds,ax

                test    byte ptr ds:keybd_flags_1_,8

                jz      loc_1                    ;Alt нажата ?

                in      al,61h

                mov     ah,al                    ;Слудующий код необходим для

                or      al,80h                   ;отработки аппаратного

                out     61h,al                   ;прерывания

                xchg    ah,al

                out     61h,al 

                mov     al,20h                   ;Послать сигнал "конец

                out     20h,al                   ;прерывания" контроллеру

                                                 ;прерываний 8259

                push    bx

                mov     ah,0Fh

                int     10h                      ;Video display

                                                 ;ah=functn 0Fh

                                                 ;get state, al=mode, bh=page

                                                 ;ah=columns on screen

                cmp     cs:flag1,1

                jne     loc_6

                cmp     cs:flag2,1

                jne     loc_6

                cmp     cs:flag3,1

                jne     loc_6 

                cmp     al,1

                je      loc_3                    ;Jump if equal

                cmp     al,3

                jne     loc_6                    ;Jump if not equal

loc_3:

                mov     ax,0B800h

                mov     ds,ax                    ;Установка ключа проверки

                mov     al,cs:data_1             ;для 13h прерывания

                xor     al,1

                mov     cs:data_1,al

                test    al,1

                jz      loc_4                    ;Jump if zero

                mov     ax,7458h                 ;Вывод символа

                jmp     short loc_5

                db      90h

loc_4:

                mov     ax,744Fh                 ;Вывод символа

loc_5:

                mov     cs:flag1,0

                mov     cs:flag2,0

                mov     cs:flag3,0

                mov     ds:data_10e,ax

loc_6:

                mov     cs:allf,1

                pop     bx

                pop     ds

                pop     ax

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