Шифрлеу әдісі


Жоспар

Кіріспе . . . 3

Орын ауыстыруларды қолдану . . . 4

Блогтық шифрлау туралы . . . 5

Симметриялы жүйені шифрлеу . . . 9

Хабарды шифрлау . . . 16

Қорытынды . . . 22

Қолданылған әдебиеттер тізімі . . . 24

Кіріспе

Компьютерлер және құралдардың автоматты мәлiметтерi пайда болумен және таратумен мәлiметтiң сақталатын компьютерлерiмен тағы басқалар файлдардың автоматты қорғау құралдарындағы қажеттiгi пайда болды. Қорғау құралдарындағы қажеттiк әсiресе өткiр көп қолданушы жүйелер, уақытты бөлуi бар сондай жүйелерде, сонымен бiрге байланыстың кәдiмгi телефон сызықтары немесе ашық компъютер желiлерi бойынша рұқсат алуға болған жүйелердегi сезiледi. Хакер әдiстер және құралдардың жиынтығы, мәлiметтердiң қорғаныстығы және қарсы әрекеттiң сипаттамалары үшiн сондықтан, компьютер қауiпсiздiгi терминдi қолданыла бастады. Абзалы, өзi маңызды желiнiң автоматты қорғау құралдары және коммуникациялар шифрлау болып табылады. Оңаша берiлу талап ететiн қатынас ашық мәтiнмен деп аталуға қабылдалған. Мақсаты бар ашық мәтiннiң өрнектеуiнiң процессi үшiн оның мағынасы бөтен тұмандандырсын (шифрлаумен ) шифрлаумен деп аталады. Қатынастар шифрлаудың нәтижесiнде шифртекст пайда болады. Ашық мәтiнге шифртекстаның керi өзгеруiн процесс (айыбын ашумен ) шифрын анықтаумен деп аталады. Заңсыз қолданушыларданғы оның қорғауының мақсаты бар мәлiметiнiң (шифрлау ) өрнектеуiнiң әдiс үйрететiн ғылым кртипографией деп аталады.

Сурет 1 - Криптожүйе дәстүрлі үлгісі

Орын ауыстыруларды қолдану

Әдiстер барлық қарастырылған жоғары шифрлалған мәтiннiң әр түрлi нышандарының ашық мәтiннiң нышандарының орнын басуларында тұрақтанды. Өрнектеулердiң принциптi басқа сыныбы ашық мәтiннiң әрiптерiнiң орын ауыстыруларын қолдануда салу. Шифрлар орын ауыстырулар арқылы жасалған орны ауысатын шифрлармен деп атайды.

Орны ауысатын шифрды өте оңай айырып тануға тұрып қал, ондағы әрiп өйткенi жиiлiкпен, ашық мәтiндегi не сол кездеседi. Мысалы, шифрдың талдауының бағаналарының орын ауыстыруымен шифрлаулары осы кәзiр қарастырылған әдiс үшiн орындасын жай ғана жеткiлiктi - матрицаның түрiндегi шифрлалған мәтiндi жазып алып және бағаналар үшiн болуы мүмкiн орын ауыстыруларды варианттар сұрыптауға керек.

Орны ауысатын шифры қорғал қалғанырақ шифрлау орын ауыстыруларды қолданып әлденеше орындап айтарлықтай жасауға болады.

Блогтық шифрлау туралы

Блоктық шифрлеу кезінде бастапқы мәтін ұзындығы тұрақты бекітілген блоктарға бөлінеді. Блок мәтіндері бір-біріне қатыссыз бөлек шифрленеді. Шифрлеу үшін барлық блоктарға бір ғана кілт қолданылады. Шифрлеу тәсілдері ауыстыру, алмастыру, құрастырма шифрлар болып бөлінеді. Ауыстыру шифрі белгілі бір ереженің көмегімен бастапқы мәтін символдарын басқа символдармен ауыстыру арқылы анықталады. Егер шифрлеу үшін бір әліпби қолданылса, онда шифр бір әліпбилі немесе моноәліпбилік деп аталады. Егер бірнеше әліпби қолданылса, онда ол көп әлипбилі немесе полиәліпбилі деп аталады. Бір әліпбилі шифрдің ең қарапайым мысалы Вижинер шифры.

Қазақ алфавитіне пробел символын қосып, сәйкес келетін ретпен жазып шығайық.

“ А Ә Б В Г Ғ Д Е Е Ж З И Й К Қ Л М Н Ң О Ө П Р С Т У Ұ

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

Ү Ф Х Һ Ц Ч Ш Щ Ъ Ы І Ь Э Ю Я

28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

Вижинер хаттарды келесі формуланың көмегімен шифрлеген :

(әріп) = ((әріп) +N) mod 43 Мұндағы 1<=N<43

N - шифрлеу кілті.

Вижинер шифрімен түрлендірілген хабарламаға мысал:

Б М С Б Т Б Ұ Ә Б Н Ң Б У Ү N=0, 2

А Қ П А Р А Т А Л М А С У

Әйгілі Вижинер шифры да көп әліпбилі ауыстыру шифріне жатады. Шифрлеу өлшемі n*n матрицасының көмегімен жүргізіледі. Кестенің бірінші жолында әліпбидің символдары түгелдей жазылады. Келесі жолдары алдыңғы жолды бір символға солға жылжыту арқылы табылады.

Хабарды шифрлеу үшін:

  1. Түйінді сөз таңдайды. Мысалға «ақпарат» сөзін таңдайық.
  2. Ашық мәтін символдарының астына кілт символдарын жазады. Егер кілт хабардан қысқа болса, оны бірнеше рет қайталайды.

О Р Ы Н А Л М А С Т Ы Р У Ш И Ф Р І (*)

А қ п а р а т а қ п а р а т а қ п а (**)

3) Шифрмәтін символы Вижинер кестесі көмегімен ізделінеді. Ол үшін (*) тізбегіндегі символды кесте жолынан, ал (**) тізбегіндегі символды кесте бағанынан іздейсіз. Шифрланған символ сол бағана мен жолдың қиылысында орналасқан.

Сонда келесі шифрмәтін аламыз:

Кесте 1 Вижинер кестесі

21

Мәтінді шифрлеуде сенімділік жоғары болуы үшін Вижинердің жетілдірілген кесте түрі ұсынылады, ол келесіде :

  1. Алфавит әріптері барлық (біріншісінен басқа) кесте жолдарында өз еркімен орналасады;
  2. 0-ден 9-ға дейінгі натурал сандармен нөмірленген он (біріншісін есептемегенде) жол таңдалады;
  3. Кілт ретінде шамалар қолданылады.

Ақпаратты сенімді шифрлеуді қамтамасыз ететін ауыстыру әдісінің жеке жағдайы матрицалардың алгебрада (мысалы, векторға матрицаны көбейту) қолдануы болып табылады.

22

Осы ережеге сәйкес A={a ij } матрицасын шифрлеуге арналған негіз ретінде пайдалануға болады, B={b i } вектор белгілері шифрленген мәтін символдары бола алады, ал вектор белгілерінің нәтижесі C={с i } шифрланген мәтін символдары болып табылады.

Әріптік ақпаратты шифрлеу үшін ең алдымен алфавитте әріптің реттік нөмірі бола алатын цифрлік эквиваленттерін алфавит белгілеріне ауыстыру керек.

Дешифрлеу үшін векторға матрицаны көбейту ережесі қолданылады, тек қана негіз ретінде кері матрица алынады, ал көбейткішті вектор ретінде шифрленген мәтіннің лайықты сандар жиынынан алады.

Шифрлау және шифрді ашу процедуралары қатал формализацияланған, бұл автоматты орындаулар үшін салыстырмалы жеңіл бағдарламмалауға рұқсат етеді. Осы әдістің кемшілігі әрбір әріпті шифрлау және шифрді ашу үшін бірнеше арифметикалық әрекеттер орындау керек, бұл ақпаратты өңдеу уақытын үлкейтеді.

Орын алмастыру шифрлері символдардың орналасу позицияларын ған өзгертеді. Ең қарапайым шифр - жай бағаналық орын алмастыру шифрын келтірейік. Шифрдің бұл түрінде мәтін ұзындығы біркелкі блоктарға алдын ала бөлініп горизантал бағытта бірнеше рет жазылады. Шифрмәтінді алу үшін мәтінді вертикал бағытта оқу керек. Дешифрлеу үшін шифрмәтін вертикал бағытта жазылып, ашық мәтін горизонтал бағытта оқылады.

Мысал. Ашық мәтін ретінде келесі сөйлемді алайық:

СИММЕТРИЯЛЫ ЖҮЙЕНІ ШИФРЛЕУ

Сөйлемді алты жолы, төрт бағанасы бар кесте түрінде жазайық:

С И М М Е Т

Р И Я Л Ы Ж

Ү Й Е Н І Ш

И Ф Р Л Е У

Шифрмәтін алу үшін кестедегі символдарды бағана бойымен (жоғарыдан төменге) оқып мысалға бес-бестен топқа бөліп жазамыз.

Сонда шифрмәтін аламыз: срүии ийфмя ермлн леыіе тжшу.

Орын алмастыру шифры хабарлаудың шифрлауына арналған символдардың n ұзындығымен өзгеруін қарастырамыз. Оны кесте көмегімен көрсетуге болады.

23

мұндағы i 1 - шифрмәтінінің нөмірі, i 2 - екінші әріп үшін орын нөмірі және т. с. с. Кестенің жоғарғы жолында 1-ден n-ге дейінгі сандар ретпен жазылған, ал төменгі жолында сол сандар, тек сандар өз бетінше орналасқан. Осындай кесте n дәрежесінің ауыстырылуы деп аталады.

Келесі бағдарлама кодының (Object Pascal тілінде) үзіндісі негізгі хабарлауды шифрлеу және шифрді ашуда оның орын алмастыру шифрын қолдануды демонстрациялайды:

const Lmax=100;

type TArr=array[1. . Lmax] of integer;

{процедура-мәтінді шифрлеу функциясы

Кіру параметрі: txt - негізгі мәтін, password - кілт

Функцияның нәтижесі - шифрленген мәтіннің жолы}

function SH_TO(txt:string; password:TArr) :string;

var i, l:integer ;

shifr:array[1. . Lmax] of char;

s:string;

begin

l:=length(txt) ;

for i:=1 to l do

shifr[password[i] ] :=txt[i] ;

for i:=1 to l do

s:=s+shifr[i] ;

result:=s;

end;

{процедура-шифрді ашу функциясы

Кіру параметрі: txt - шифрленген текст, password - кілт

Функцияның нәтижесі - шифрі бұзылған мәтіннің жолы }

function SH_FROM(txt:string; password:TArr) :string;

var i, l:integer;

s:string;

begin

l:=length(txt) ;

for i:=1 to l do

s:=s+txt[Password[i] ] ;

result:=s;

end.

Құрастырма шифрлар. Бұл шифрдің негізінде, сенімді криптожүйе құрастыру үшін ауыстыру және орын алмастыру сияқты қарапайым шифрларды алма - кезек бірнеше рет қолдану идеясы жатыр. DES (Data Encryption Standard, АҚШ), FEAL-1 (Fast Enciphering Algoritm, Жапония), IDEA/IPES (International Data Encryption Algorithm/Improved Proposed Encryption Standard, Ascom-Tech AG фирмасы, Швейцария), B-Crypt (British Telecom фирмасы, Ұлыбритания), АES (АҚШ), ГОСТ 28147-89, Skipjack (АҚШ) және басқа көптеген алгоритмдер шифрдің осы түріне жатады.

Құрастырма шифрларына мінездеме 2-кестеде көрсетілген.

Кесте 2 Құрастырма алгоритмдері

Алгоритмдердің аты
Кілттің өлшемі, бит
Блоктың өлшемі, бит
Инициализация векторының өлшемі, бит
Шифрлеу циклінің саны
Алгоритмдердің аты: Lucipher
Кілттің өлшемі, бит: 128
Блоктың өлшемі, бит: 128
Инициализация векторының өлшемі, бит:
Шифрлеу циклінің саны:
Алгоритмдердің аты: DES
Кілттің өлшемі, бит: 56
Блоктың өлшемі, бит: 64
Инициализация векторының өлшемі, бит: 64
Шифрлеу циклінің саны: 16
Алгоритмдердің аты: FEAL-1
Кілттің өлшемі, бит: 64
Блоктың өлшемі, бит: 64
Инициализация векторының өлшемі, бит: 4
Шифрлеу циклінің саны:
Алгоритмдердің аты: B-Crypt
Кілттің өлшемі, бит: 56
Блоктың өлшемі, бит: 64
Инициализация векторының өлшемі, бит: 64
Шифрлеу циклінің саны:
Алгоритмдердің аты: IDEA
Кілттің өлшемі, бит: 128
Блоктың өлшемі, бит: 64
Инициализация векторының өлшемі, бит:
Шифрлеу циклінің саны:
Алгоритмдердің аты: ГОСТ 28147-89
Кілттің өлшемі, бит: 256
Блоктың өлшемі, бит: 64
Инициализация векторының өлшемі, бит: 64
Шифрлеу циклінің саны: 32

Соның ішінде DES алгоритіміне кеңінен тоқталайық.

1972 жылы NBS (National Bureau of Standards, АҚШ) стандартты криптографиялық алгоритм құрастыруға сынақ жариялады. Бірақ келіп түскен бір де бір ұсыныс қойылып отырған талаптарға сай келмеді. Тек 1974 жылы Lucifer атты алгоритм IBM корпорациясында жұмыс істеуші криптографтар атынан ұсынылды. Олар - Рой Адлер, Дон Копперсмит, Хорст Файстель, Эдна Кроссман және басқалары. NBS бюросы NSA ұйымынан алгоритмді бағалауда көмек сұрады. 1976 жылы DES федералдық стандарт ретінде бекітілді.

Енді DES-ті сипаттауға көшейік. DES блоктық алгоритм болып табылады. Ашық мәтін ұзындығы - 64 бит. Кілт ұзындығы - 56 бит. Алгоритмде 16 бөлім орындалады, яғни бірдей тәсілдердің комбинациясы ашық мәтінге 16 рет қолданылады. Алгоритмнің негізгі қадамдарын қарастырайық.

Бастапқы орын алмастыру.

Алгоритм басталмас бұрын ашық текст биттері үшін орын алмастыру процедурасы орындалады. P k деп к -ші жаңа позицияға орналасатын ашық текст битінің нөмірін белгілейік. Р 0 = 0, Р 1 = 58болсын. Алдыңғы төрт байттың құрамындағы бірінші бит позициясына келесі бит орналасады.

Р 8i+1 = Р 1 + Р 8i , i=0, 3 (1)

Бесінші байттың бірінші битінің позициясы былай есептеледі:

Р 8i+1 = Р 1 - 1, i = 4

i=5, 6, 7 болғандағы 8i+1 позицияларына орналасар бит нөмірлері (1) формуласы арқылы есептеледі. Қалған позицияларға келесі нөмірлі биттер орналасады:

Р ­ 8i+j+1 = Р 8i+1 -8j, i=0, 7, j=1, 8

Ақыры мынандай орын алмастыру кестесін аламыз.

Кесте 3 Бастапқы орын алмастыру

58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4

62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8

57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3

61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7

Кілт түрлендіру

а) 64-биттік кілттің әрбір сегізінші биті ескерілмейді. Олар тақтық қасиетін тексеру үшін қолданылады. Сонымен кілттің ұзындығы 56 битке шейін қысқарылады.

б) 56 биттік кілт екі тең бөлікке бөлінеді. Раунд нөміріне байланысты кілт бөліктері бір немесе екі битке солға жылжытылады. 1, 2, 9, 16-шы бөлімдерде кілт 1 битке жылжиды. Қалған жағдайларда 2 битке жылжиды

в) 56 биттің 48 таңдап алынады. Бит орналасу реті де өзгертіледі. Бұл операция сығылатын орын алмастыру деп аталады.

Кесте 4 Шифрлау алгортмінің сүлбесі

25

Сонымен әрқайсысының ұзындығы 48 бит 16 бөлімдік кілт жасалады.

Кесте 5 Сығылатын орын алмастыру

14 17 11 24 1 5 3 28 15 6 21 10

23 19 12 4 26 8 16 7 27 20 13 2

41 52 31 37 47 55 30 40 51 45 33 48

44 49 39 56 34 53 46 42 50 36 29 32

Кесте 6 Кілт түрлендіру алгоритмі

26

Хабарды шифрлау

Демек сіз ұзындығы 64 бит бастапқы мәтін және ұзындығы 48 бит кілтке иесіз. Бастапқы хабар іспеттес тең екі бөлікке бөлінеді. Оң бөлік кілт ұзындығына дейін кеңейтіледі. Биттердің орын алу реті де өзгереді. Бұл қадамның негізгі мақсаты - әр шифрмәтін битінің әрбір шифрмәтін және кілт биттеріне тәуелділігін арттыру.

Кесте 7 Кеңейтетін орын алмастыру

32 1 2 3 4 5 4 5 6 7 8 9

8 9 10 11 12 13 12 13 14 15 16 17

16 17 18 19 20 21 20 21 22 23 24 25

24 25 26 27 28 29 28 29 30 31 32 1

Деректердің оң жағы R i және бөлімдік кілт K i үшін қосу операциясы орындалады, яғни R i +K i мәні есептелінеді.

48 бит сегіз 6 биттік блокшаға бөлінеді. Әрқайсысына S-блок деп аталатын кестелердің көмегімен ауыстыру операциясы қолданылады. DES алгоритмінде S-блоктардың атқаратын маңызы зор. Алгоритмнің сенімділігін арттыратын осы блоктар. Барлығы 8 S-блок қолданылады. Кірісіндегі 6 бит S-блок көмегімен 4 битке дейін сығылады. Бастапқы блоктың бірінші және алтыншы битінің конкатенациясы 0-ден 3-ке шейінгі сан құрайды, ол сан кесте жолын анықтайды. Ортасындағы төрт бит конкатенацияланып 0-ден 15-ке шейінгі сан құрайды, ол сан кесте бағанасын анықтайды. Яғни, 4-биттік нәтиже сәйкес жол мен бағананың қиылысуында орналасады.

Кесте 8 S-блоктар

1-ші S-блок:

14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7

0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8

4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0

15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13

2-ші S-блок:

15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10

3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5

0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15

13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9

3-ші S-блок:

10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8

13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1

13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7

1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12

4-ші S-блок:

7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15

13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9

10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4

3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14

5-ші S-блок:

2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9

14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6

4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14

11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3

6-шы S-блок:

12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11

10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8

9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6

4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 3

7-ші S-блок:

4 14 2 14 15 0 8 13 3 12 9 7 5 10 6 1

13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6

1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2

6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12

8-ші S-блок:

13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7

1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2

7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8

2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11

Енді 32 биттік блок үшін Р блогының көмегімен тікелей орын алмастыру орындалады. Блок биттері қай позицияға жылжитыны 9-кестеде көрсетілген.

Кесте 9 Р блок

16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10

2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25

Алынған нәтиже блоктың сол бөлігімен қосылады.

Оң және сол бөліктер алмастырылып, келесі соңғы орын ауыстыруға көшеміз. Соңғы орын ауыстыру бастапқы орын ауыстыру операциясына кері операция болып табылады. Соңғы бөлімнің алдыңғы бөлімдерден айырмашылығы одан кейінгі блоктың сол және оң жақтары орын алмастырмайды.

Кесте 10 Соңғы орын ауыстыру

40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31

38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29

36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27

34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25

Дешифрлау. Бұл алгоритмде шифрлау және дешифрлау процедуралары бірдей. Дешифрлау кілттері болып К 16 , К 15 , …, К 1 табылады.

Диффи мен Хеллман 1976-1977 жылдары DES алгоритмінің кілтін бір күннің ішінде анықтап бере алатын арнайы параллель есептеулерге негізделген компьютер құрастыруға болады және ол 20 миллион доллар тұрады деп айтқан еді.

Electronic Frontier Foundation (EFF) ұйымы 1998 жылы осындай есептеуіш машинаны ойлап тапты. Оның бағасы $250. 000 еді. Кілт анықтау үшін 3 күн керек болды.

Бүгін DES стандарты келесі себептерге байланысты қолайсыз деп табылды:

1) Кілттің ұзындығы - 56 бит бүгін қауіпсіздік үшін тым аз;

2) Алгоритм құрастырылғанда ол программалық емес, аппараттық қолдану үшін жасалған, сондықтан микропроцессорда оның кейбір операциялары тым көп уақыт алады.

Қазір DES-пен қатар 3DES алгоритмі көп қолданылады. Ол DES негізінде жасалған алгоритм. Шифрлаудың сенімділігін арттыру үшін мұнда шифрлау операциясы үш рет қайтара орындалады. Алгоритмде 256 биттік кілт қолданылады, яғни кілттің ұзындығы 112 бит. 2. 1. 2 Ағындық шифрлар

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Ашық кілтті жүйе
Ақпаратты қорғаудың әдістері.
Компьютерлік анықтамалы-ақпараттық жүйелер
Ақпаратты қорғаудың криптографиялық жүйелері
Ақпаратты қауіпсіздендіру және обьектілері. Шифр және ақпаратты шифрлау жүйелері
АҚПАРАТТЫҚ ЖҮЙЕНІ КРИПТОГРАФИЯЛЫҚ АЛГОРИТМДЕРМЕН ҚОРҒАУ
Ақпараттық қауіпсіздік жайлы
АЖ-ді қорғаудың криптографиялық құралдары
Криптография жайлы
Мәліметтердің криптографиялық өзгеру әдістері
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz