
- •Практикалық ж±мыс №1
- •Ќарапайым алмастырып ќою шифры
- •Практикалық ж±мыс №2 т¦раќты периодты транспозиция шифры
- •Практикалық ж±мыс №3 виженер шифрыныњ жєне оныњ н¦сќалары
- •Практикалық ж±мыс №4
- •Практикалық ж±мыс №5 матрицалыќ ж‡йелер
- •Практикалық ж±мыс №6 шифратор және керішифратор жұмысын қарастыру
- •Мазмұны
- •Жулдыз Кенесхановна Алимсеитова аќпаратты ќорѓаудыњ теориялыќ негіздері
Практикалық ж±мыс №4
N-граммдыќ алмастырып ќою
Ж±мыс маќсаты: N-граммды алмастырып ќою шифрыныњ ж±мысын ќарастыру.
N-граммды алмастырып қоюда бір әріптің орнына N әріпті қоюға болады. Мысалы, жалпы түрде N екіге тең болса онда екіграммды алмастырып қою болады және оған ағылшын алфавиты үшін 262 екіграммалы алмастыру кілті керек болады.Кілтті кесте ретінде көрсетуге болады. Кестенің жолында екіграмманың бірінші әріпі болады, ал бағанында екінші әріпі болады.
Алмастырып қою шифрына мысал ретінде берілген программа листингі:
program almastiru;
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.
Тапсырмалар
Теориялық материалды оқу.
Берілген шифрмен мәтінді шифрлау және керішифрлау.
Берілген программа листигі бойынша блокті сұлбасын сызу.
Шифрдың тұрақтылығына баға беру.
Практикалық ж±мыс №5 матрицалыќ ж‡йелер
Ж±мыс маќсаты: матрицалыќ шифрыныњ ж±мысын ќарастыру
Бұл шифрда кілт ретінде матрица болады. Матрицада аралыстырылған алфавит жазылады. Матрицаның көлемін алфавиттің ұзындығына байланысты таңдау керек. Мысалы, ағылшын алфавитінде 26 әріп бар J әріпінің орныны I әріпін қолданып 25 әріпті 5х5 матрицаға жазамыз. Шифрлаған кезде мәтіннің әріпін алып матрицадан табамызда оның жолының нөміріман бағанның нөмірін криптограмма ретінде қолданамыз. Мысалы:
Мєтін COMET
-
0
1
2
3
4
0
L
Z
Q
C
P
1
A
G
N
O
U
2
R
D
M
I
F
3
K
Y
H
V
S
4
X
B
T
E
W
Криптограмма 03 13 22 43 42
Матрицалық жүйесіне мысал ретінде берілген программа листингі:
Program matrizsystem;
Uses crt;
Type
Arr=array [0..4,0..5] of string;
Var
a:arr;
f:Text;
I, j, e:integer;
M:string;
Begin
Clrscr;
Assign(f,’c:\text1.txt’);
Reset(f);
Begin
For i:=0 to 4 do
For j:=0 to 5 do
Readln (f,a[i,j]);
End;
Close(f);
For i:=0 to 4 do
begin
For j:=0 to 5 do
Write (‘’,a[i,j],’-‘,i,j);
End;
Writeln(‘Vvedite text’);
Read (m);
For e:=1 to length(m) do
Begin
For i:=0 to 4 do
For j:=0 to 5 do
If (m[e]=a[i,j]) then write(i,j);
End;
Readkey;
End.
Тапсырмалар
Теориялық материалды оқу.
Берілген шифрмен мәтінді шифрлау және керішифрлау.
Берілген программа листигі бойынша блокті сұлбасын сызу.
Шифрдың тұрақтылығына баға беру.