- •Практикалық ж±мыс №1
- •Ќарапайым алмастырып ќою шифры
- •Практикалық ж±мыс №2 т¦раќты периодты транспозиция шифры
- •Практикалық ж±мыс №3 виженер шифрыныњ жєне оныњ н¦сќалары
- •Практикалық ж±мыс №4
- •Практикалық ж±мыс №5 матрицалыќ ж‡йелер
- •Практикалық ж±мыс №6 шифратор және керішифратор жұмысын қарастыру
- •Мазмұны
- •Жулдыз Кенесхановна Алимсеитова аќпаратты ќорѓаудыњ теориялыќ негіздері
Практикалық ж±мыс №2 т¦раќты периодты транспозиция шифры
Ж±мыс маќсаты: т±раќты периодты транспозиция шифрыныњ ж±мысын ќарастыру.
D – кілттіњ ±зындыѓы. Хабар топтарѓа бµлінеді. Топтардыњ ±зындыѓы D тењ. Алмастыру кілті беріледі. Сол кілт арќылы єр топты ауыстырамыз.
Мысалы:
D=5. Алмастыру кілті 53142. Сонда COMET GEL FLASH хабары з топќа бµлінеді. Єр топ 53142 кілтпен ауыстырылады. Єр топтыњ бірінші символыныњ орнына бесінші символ келеді, екіншініњ орнына ‰шінші .... Сонда криптограмма: TMCEO E LGHAFSL.
Егер
ќатар екіден кµп транспозиция ќолданса,
онда б±л ќос транспозиция болады. Олардыњ
кілттері
болады.
Сонда ќос транспозицияныњ кілтініњ
±зындыѓы
болады.
Транспозиция шифрына мысал ретінде берілген программа листингі:
Program transpozicia;
Uses crt;
Label m1;
Type
Arr=array [1..20] of integer;
Var
Key:arr;
Text:string;
C,k,i:integer;
Begin
Clrscr;
Writeln(‘Vvedite text’);
Read (text);
M1:
Writeln(‘Vvedite period klusha’);
Read (key);
If length(text) mod k<>0 then
Begin
Writeln(‘Vvedite dlinu klusha’);
Goto m1;
End;
Writeln(‘Vvedite klush’);
For i:=1 to k do
Begin
Write (‘k[‘,I,’]=’);
Read (kilt[i]);
End;
C:=0;
Repeat
For i:=1 to k do
Write(text[c+kilt[i]]);
C:=c+k;
Until c=length(text);
Readkey;
End.
Тапсырмалар
Теориялық материалды оқу.
Берілген шифрмен мәтінді шифрлау және керішифрлау.
Берілген программа листигі бойынша блокті сұлбасын сызу.
Шифрдың тұрақтылығына баға беру.
Практикалық ж±мыс №3 виженер шифрыныњ жєне оныњ н¦сќалары
Ж±мыс маќсаты: Виженер шифрыныњ ж±мысын ќарастыру.
Шифрлау кестесі Вижинер кестесі деп аталады. Вижинер кестесі n2 элементтен т±ратын квадраттыќ матрица болып табылады. Б±л жерде n – ќолданылатын єліпби символдарыныњ саны. Бірінші ќатарда єліпбидіњ барлыќ єріптері жазылады. Єрбір келесі ќатарда бір єріпке ыѓыстырылады. Осындай єрекетті аяѓына дейін ќайталаудыњ нєтижесінде ќатар саны баѓанныњ (єліпби єріптерініњ) санына тењ квадрат кесте ќ±рылады. Кестеніњ екі кірісі бар: негізгі ашыќ мєтінніњ єрпін аныќтайтын жоѓарѓы ќатардыњ символдары жєне кілттіњ сол жаќтаѓы шеткі баѓаны.
Шифрлау (жєне кері шифрлау) ‰шін Вижинер кестесін ќолдануѓа болады. Шифрлауды орындау ‰шін єріптерден т±ратын кілт тањдап алынады. Шифрлау былайша ж‰ргізіледі. Толыќ кестеден бірінші ќатар жєне бірінші єріптері кілттіњ єріптеріне сєйкес келетін ќатарлар іріктеліп алынады.
Шифрлау былайша ж‰зеге асырылады:
Кілт
d єріптер жинаѓынан т±рады. Кілт хабардыњ
астына ќайталанып жазылады, содан кейін
хабар єріпініњ жєне кілт єріпініњ
нµмірлері ќосыладыда одан алфавиттіњ
модулі алынады.
- аѓылшын алфавитіне.
Мысалы: аѓылшын алфавиті
А |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
Y |
X |
Z |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
1 0 |
1 1 |
1 2 |
1 3 |
1 4 |
1 5 |
1 6 |
1 7 |
1 8 |
1 9 |
2 0 |
2 1 |
2 2 |
2 3 |
2 4 |
2 5 |
2 6 |
COMET деген хабарды WAS кілтімен шифрлаймыз. Сонда криптограмма ZPFBU болады.
Хабар |
C |
O |
M |
E |
T |
Ќайталанатын кілт |
W |
A |
S |
W |
A |
Криптограмма |
3+23=26=Z |
15+1=16=P |
13+19=32mod26=6=F |
5+23=28mod26=2=B |
20+1=21=U |
Егер
ќатар екіден кµп Виженер шифры ќолданса,
онда б±л ќос Виженер шифры болады.
Олардыњ кілттері
болады.
Криптограмма
формуласымен
табылады. Сонда ќос транспозицияныњ
кілті
болады.
Бофор
шифры. Бофор
шифры Виженер шифрына құсас. Бофор
шифрында криптограмма мына формуламен
табылады:
.
Түрі
өзгертілген Бофор шифры.
Виженер шифрына құсас. Киптограмма мына
формуламен табылады:
.
Вернам
шифры. Шексіз
қайталанбайтын кілтті Виженер шифры
Вернам шифры болады.
1,...,26 сандарынан кездей соқ таңдалады.
«Қума кілт» шифры. Виженер шифрында кілт ретінде мағынасы бар мәтін қолданса онда «Қума кілт» шифры болады.
Виженер шифрына мысал ретінде берілген программа листингі:
program vizhiner;
uses crt;
var
str,alf,key,keyc,res,keyc1,keyc2:string;
i,j,d,k,r,pk,ps,pr,l,s,ch,h,pm,chd,chm:integer;
begin
clrscr;
writeln('input alf');
readln(alf);
writeln('input str');
readln(str);
writeln('input key');
readln(key);
l:=length(alf);
k:=length(key);
s:=length(str);
if (s>k) then
begin
chd:=s div k;
chm:=s mod k;
if chd>1 then d:=1;
repeat
insert(key,keyc,k+1);
d:=d+1;
until d>chd;
if chm<>0 then
keyc1:=copy(key,1,chm);
keyc2:=concat(keyc,keyc1);
r:=length(keyc2);
end;
for j:=1 to r do
begin
for i:=1 to l do
if str[j]=alf[i] then ps:=i;
for i:=1 to l do
if keyc2[j]=alf[i] then pk:=i;
pr:=ps+pk;
if pr>l then
begin
pm:=pr-l;
res:=copy(alf,pm,1);
end
else
res:=copy(alf,pr,1);
writeln(res);
end;
end.
Тапсырмалар
Теориялық материалды оқу.
Берілген шифрмен мәтінді шифрлау және керішифрлау.
Берілген программа листигі бойынша блокті сұлбасын сызу.
Шифрдың тұрақтылығына баға беру.
