ҚҰрастырушылар: Шайхин Б. М., Байжанова Д. О. Ақпарат қауіпсіздігінің негіздері: 5В070400 Есептеу техникасы және бағдарламалық қамтамасыз ету мамандығының студенттері үшін дәрістер жинағы. Алматы: аэжБУ, 2013. 52 б



бет7/19
Дата02.02.2023
өлшемі329.01 Kb.
#469066
1   2   3   4   5   6   7   8   9   10   ...   19
Жүйелік қауіпсіздік

SHA алгоритмi
Қауiпсiз хэштеу алгоритмi SHA (Secure Hash Algorithm) АҚШ-та 1992 жылғы SHS (Secure Hash Standard) қауiпсiз хэштеу стандарты құрамында жасалған. SHA хэштеу алгоритмi DSA цифрлық қолтаңба алгоритмiмен бiрге пайдалануға арналған [Романец].
Ұзындығы 264 биттен кем М хабарды енгiзгенде SHA алгоритмi 160 биттiк шықпа хабарын жасап шығарады. Ол хабардың дайджестi MD (Message Digest) деп аталады. Содан соң хабардың дайджестi DSA алгоритмiнiң кiрмесi ретiнде пайдаланылады. DSA алгоритмi М хабарының цифрлық қолтаңбасын есептеп шығарады. Хабардың дайджестi хабардың өзiне қарағанда қысқа болғандықтан, цифрлық қолтаңбаны хабардың дайджестi үшiн қалыптастыру қол қою процесiнiң тиiмдiлiгiн арттырады.
Хабардың осындай дайджестiн қолтаңбаны тексерушi пайдаланушының өзiде де есептеп шығаруы керек. SHA алгоритiмiне кiрме ретiнде алынған М хабары пайдаланылады.
SHA хэштеу алгоритмi қауiпсiз деп аталған себебi: берiлген дайджестке сәйкес келетiн хабарды есептеу арқылы қайтадан қалпына келтiру мүмкiн еместей, сондай-ақ, бiр түрлi дайджест беретiн екi түрлi хабар табуға болмайтындай етiлiп жасалған. Тасымалдау кезiнде хабарға енгiзiлген кез келген өзгерiс дайджестте өзгерiс туғызады. Сондықтан қабылданып алынған қолтаңба тексеруден өтпей қалады.
SHA алгоритмi былай жұмыс iстейдi. Ең алдымен бастапқы М хабары 512 битке еселенетiндей етiп толықтырады. Хабарды қосымша толтыру келесi түрде жүзеге асырылады: алдымен 1 қосылады, одан соң 512 еселенген биттерден 64 битi кем болатын хабар құрастыру үшiн қанша 0 керек болса сонша нөл қосылады. Ең соңында бастапқы хабардың ұзындығының 64-биттiк көрсетiмi қосылады.
Бес 32-биттiк (оналтылық санау жүйесiнде берiлген) айнымалылар алынады:

A

=

6

7

4

5

2

3

B

=

E

F

C

D

A

B

C

=

9

8

B

A

D

C

D

=

1

0

3

2

5

4

E

=

C

3

D

2

E

1

Осыдан соң алгоритмнiң бас циклі басталады. Мұнда хабардағы 512 биттiк блоктар бiрiнен соң бiрi кезекпен өңделедi. Алғашқы бес А, В, С, Д, Е айнымалылар басқа a, b, c, d, e айнымалыларға көшiрiледi: a=A, b=B, c=C, d=D, e=E.
Бас цикл әрқайсысында 20 операция бар төрт циклден тұрады. Әрбiр операция бес a, b, c, d, e айнымалылардың үшеуiнiң бейсызықтық функциясын жүзеге асырады, одан соң ығыстыру мен қосуды орындайды.
SHA алгоритмiнде бейсызықтық функциялар жиыны бар:
ft (X,Y,Z) = (X Ù Y) Ú ((Ø X) Ù Z) t=0, ..., 19 үшiн;
ft (X,Y,Z) = X Å Y Å Z t=20, ..., 39 үшiн;
ft (X,Y,Z) = (X Ù Y) Ú (X Ù Z) Ú (Y Ù Z) t=40, ..., 59 үшiн;
ft (X,Y,Z) = X Å Y Å Z t=60, ..., 79 үшiн;
мұнда t - операция нөмiрi.
Алгоритмде төрт (оналтылық санау жүйесiнде берiлген) тұрақты шама пайдаланылады:
K= 5 A 8 2 7 9 9 9 t=0, ..., 19 үшiн;
K= 6 E D 9 E B A 1 t=20, ..., 39 үшiн;
K= 8 F 1 B B C D C t=40, ..., 59 үшiн;
K= C A 6 2 C 1 D 6 t=60, ..., 79 үшiн;
Хабар блогы 32-биттiк он алты сөзден (М... М15) 32 биттiк сексен сөзге (W0 ... W79) келесi алгоритм көмегiмен түрлендiрiледi:
Wt = Mt, t=0, ..., 15 үшiн;
Wt = (Wt-3 Å Wt-8 Å Wt-14 Å Wt-16) <<<1 t=16, ..., 79 үшiн;
мұнда t - операция нөмiрi (t=1, ..., 80); Wt - кеңейтiлген хабардың t-шi субблогы; <<< S - S-битке солға циклдiк ығысу.
Жоғарыда келтiрiлген шартты белгiлердi ескере отырып, 80 операциядан тұратын бас циклдi келесi түрде жазуға болады:
FOR t = 0-ден 79-ға дейiн
TEMP = (a<<<5) Å ft (b,c,d) Å e Å WÅ Kt
e = d
d = c
c = (b <<< 30)
b = a
a = TEMP
Бас цикл аяқталған соң, a, b, c, d, е мәндерi А, В, С, Д, Е мәндерiмен қосылады, содан соң алгоритм деректердiң келесi 512-биттiк блогын өңдеуге кiрiседi. Ең соңында, нәтиже А, В, С, Д, Е мәндерiнiң конкатенциясы түрiнде қалыптастырылады.
Дәріс 7. Қорғау және қауіпсіздендіру жүйелерін практикалық іске асырудың мысалдары


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   ...   19




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет