Yaxlitligini ta’minlashning ahamiyati juda muhimdir. Axborot butunligini nazorat qilishning ko’proq maqbul bo’lgan metodlaridan biri xesh-funksiyadan foydalanish hisoblanadi



Download 49,94 Kb.
bet4/5
Sana07.01.2022
Hajmi49,94 Kb.
#327510
1   2   3   4   5
Bog'liq
mta.maruza.mustaqil ish

1-rasm. MAC tizimlari

Kalitsiz xesh funksiyalar xatolarni topish kodi (modification detection code(MDC) yoki manipulation detection code, massage integrrity code(MIC) deb ataladi. Ushbu kod qo‘shimcha vositalar (masalan: himoyalangan aloqa tarmog‘i, shifrlash yoki ERI algoritmlari) yordamida berilgan ma’lumot to‘laligini kafolatlaydi. Bu turdagi xesh funksiyalardan bir-biriga ishonch bildiruvchi va ishonchi bo‘lmagan tomonlar foydalanishlari mumkin.

Odatda kalitsiz xesh funksiyalardan quyidagi xossalarni qanoatlantirishi talab qilinadi:

1) bir tomonlilik;


2) kolliziyaga bardoshlilik;
3) xesh qiymatlari teng bo‘lgan ikkita ma’lumotni topishga bardoshlilik.

Birinchi shart bajarilganda, berilgan xesh qiymatga ega bo‘lgan


ma’lumotni topishning murakkab ekanligini, ikkinchi shart bajarilganda
bir xil xesh qiymatga ega bo‘lgan ma’lumotlar juftini topishning
murakkab ekanligini, uchinchi shart xesh qiymati ma’lum bo‘lgan berilgan
ma’lumot uchun xesh qiymati shunga teng bo‘lgan ikkinchi ma’lumotni
topishning murakkab ekanligini bildiradi.

Masalan, nazorat yig‘indini topuvchi SRC xesh funksiyasi chiziqli


akslantirish bo‘ladi va shuning uchun ham bu uchta shartdan birontasini ham qanoatlantirmaydi.

Ma’lumotlarni uzatishda yoki saqlashda ularning to‘laligini


nazoratlashda har bir ma’lumotning xesh qiymati (bu xesh qiymat
ma’lumotni autentifikatsiya qilish kodi yoki “imitoqo‘yish”-ma’lumot
bloklari bilan bog‘liq bo‘lgan qo‘shimcha kiritilgan belgi deyiladi)
hisoblaniladi va bu qiymat ma’lumot bilan birga saqlaniladi yoki
uzatiladi. Ma’lumotni qabul qilgan foydalanuvchi ma’lumotning xesh
qiymatini hisoblaydi va uning xesh qiymati bilan solishtiradi. Agar
taqqoslashda bu qiymatlar mos kelmasa, ma’lumot butunligi buzilganligini
anglatadi.
“Imitoqo‘yish”lar hosil qilish uchun foydalaniladigan xesh
funksiyalar nazorat yig‘indisidan farqli ravishda ma’lumotni saqlash va
uzatishda ro‘y beradigan tasodifiy xatolarni aniqlabgina qolmasdan, raqib
tomonidan qilingan aktiv hujumlar to‘g‘risida ham ogohlantiradi. Buzg‘unchi
xesh qiymatni osonlik bilan o‘zi hisoblab topa olmasligi va muvaffaqiyatli
imitatsiya qilishi yoki ma’lumotni o‘zgartira olmasligi uchun xesh funksiya 70
buzg‘unchiga ma’lum bo‘lmagan maxfiy kalitga ega bo‘lishi kerak. Bu maxfiy
kalit faqatgina ma’lumotni uzatuvchi va qabul qiluvchi tomonlarga ma’lum
bo‘lishi kerak. Bunday xususiyatga ega xesh funksiyalarga kalitli xesh
funksiyalar deyiladi. Kalitli xesh funksiyalar yordamida hosil qilinadigan
“imitoqo‘yish”lar imitatsiya (impersonation) turidagi hujumlarda qalbaki
ma’lumotlarni hosil qilishga (fabrication) va “o‘zgartirish” (substitution)
turidagi hujumlarda uzatiladigan ma’lumotni modifikatsiya (modification)
qilishga yo‘l qo‘ymaslikda foydalaniladi.

Ma’lumot manbaining autentifikatsiyalash masalasi axborot-


kommunikatsiya tizimlarining bir-biriga ishonmaydigan ikki tomoni
orasida ma’lumot almashinuvida yuzaga keladi. Bu masalani hal qilishda
ikkala tomon ham biladigan maxfiy kalitdan foydalanib bo‘lmaydi. Bu
holatda ma’lumotning manbaini autentifikatsiya qilishga imkon beradigan
elektron raqamli imzo sxemasi qo‘llaniladi. Bunda odatda
foydalanuvchining maxfiy kalitiga asoslangan imzo qo‘yishdan oldin
xatolik kodini aniqlovchi xesh funksiya yordamida ma’lumot siqiladi. Bu
holda xesh funksiya maxfiy kalitga ega bo‘lmaydi hamda u fiksirlangan
bo‘lishi va hammaga ma’lum bo‘lishi mumkin. Unga qo‘yilgan asosiy talab
imzolangan hujjatni o‘zgartirish hamda bir xil xesh qiymatga ega bo‘lgan ikkita har xil ma’lumotni tanlash imkoniyati yo‘qligining kafolatidir.
Agar bir xil xesh qiymatga ega bo‘lgan ikkita har xil ma’lumot mavjud
bo‘lsa, bu ma’lumotlar jufti kolliziya hosil qiladi deyiladi.

Xesh funksiyalarda kolliziya – ikkita har xil ma’lumotdan bir xil xesh qiymat hosil bo’lib qolishi. Kolliziyaning oldini olish yo’llaridan biri bu xesh jadval hisoblanadi. Xeshlash algoritmlarining bardoshliligi xa xavfsizliligi kolliziyaga chidamliligi bilan aniqlanadi.

Misollar

C ++ da xeshlash yoki xash jadvali amalga oshiriladi:



Dastur:

#include

#include

using namespace std;

/*

Bu ochiq manzilda chiziqli tekshirish uchun kod. Agar siz kvadrat probirovka qilishni va ikkilamchi xashlashni xohlasangiz, ular ham mavjud



xash funktsiyasidan foydalanganda (kod + 1)% hFn-ni boshqa funktsiya bilan almashtirganimda ushbu koddagi manzilni ochish usullari.

*/


void Insert(int ary[],int hFn, int Size){

int element,pos,n=0;

cout<<"Qo'shish uchun asosiy elementni kiriting\n";
cin>>element;

pos = element%hFn;

while(ary[pos]!= INT_MIN) { // INT_MIN va INT_MAX hujayralar bo'shligini bildiradi. Agar hujayra bo'sh bo'lsa, tsikl buzilib, elementning qo'shilishi uchun pastdan pastga tushadi if(ary[pos]== INT_MAX)

break;


pos = (pos+1)%hFn;

n++;


if(n==Size)

break; // Agar jadval to'la bo'lsa, bizsindirishimiz kerak, agar buni tekshirmasak, pastadir cheksiz ko'chaga o'tadi.

}

if(n==Size) cout<<"Xash jadvali elementlarga to'la edi\n Bu elementni kiritish uchun joy yo'q\n\n";



else

ary[pos] = element; //Element qo'shilmoqda

}

void Delete(int ary[],int hFn,int Size){



/*

o'chirish paytida juda ehtiyotkorlik bilan kuzatish talab etiladi. Ushbu o'chirish funktsiyasining kodini tushunish uchun dastur oxiridagi yozuvga qarang

*/

int element,n=0,pos;



cout<<"O'chirish uchun elementni kiriting\n";

cin>>element;

pos = element%hFn;

while(n++ != Size){

if(ary[pos]==INT_MIN){

cout<<"Element xash jadvalda topilmadi\n";

break;

}


else if(ary[pos]==element) {

ary[pos]=INT_MAX;

cout<<"Element o'chirildi\n\n";

break;


}

else{


pos = (pos+1) % hFn;

}}

if(--n==Size)



cout<<"Element xash jadvalda topilmadi\n”;}

void Search(int ary[],int hFn,int Size){

int element,pos,n=0;

cout<<"Qidirmoqchi bo'lgan elementni kiriting\n";

cin>>element;

pos = element%hFn;

while(n++ != Size){

if(ary[pos]==element){

cout<<"Element indeksda topildi "<


brek;

}

else



if(ary[pos]==INT_MAX ||ary[pos]!=INT_MIN)

pos = (pos+1) %hFn; }

if(--n==Size)

cout<<"Element xash jadvalda topilmadi\n";

}

void display(int ary[],int Size){



int i;

cout<<"Indeks\tQiymat\n";

for(i=0; I

cout<

}

int main(){



int Size,hFn,i,choice;

cout<<"Xash jadvalining hajmini kiriting\n";

cin>>Size;

int ary[Size];

cout<<"Xash funktsiyasini kiriting[if mod 10 enter 10]\n";

cin>>hFn;

for(i=0;i

ary[i]=INT_MIN; //INT_MINni tayinlash katakning bo'shligini bildiradi

do{

cout<<"O'zingizning tanlovingizni kiriting\n”;



cout<<" 1-> Kiritmoq\n 2-> O'ch irish\n 3-> Displey\n 4-> Qidir rilmoqda\n 0-> Chiqish\n";

cin>>choice;

switch(choice){

case 1:


Insert(ary,hFn,Size);

Break;


case 2:

Delete(ary,hFn,Size);

break;

case 3:


display(ary,Size);

break;


case 4:

Search(ary,hFn,Size);

break;

default:


cout<<"To'g'ri tanlovni kiriting\n";

break;


}

}while(choice);

return 0;

}

/*



Izoh: O'chirish funktsiyasi va qidirish funktsiyasi uchun tushuntirish

xash jadvalida 22, 32, 42 elementlari 2, 3, 4 indeks holatlarida bo'lsa deylik.

Endi o'chirib tashlang (22). Belgilangan xash funktsiyasi bo'yicha biz avval 2-indeksni tekshiramiz. Topildi, shuning uchun o'chirildi. Va bu ko'rsatkichni nillga aylantiring. Keyin o'chirishni qo'llang (32). Bu safar u birinchi navbatda 2-indeksni tekshirdi, ammo uning hech narsasi yo'qligini aniqladi, keyin biz to'xtab, 32-element emas deymiz xash jadvalda topilgan. Ammo u 3-indeksda mavjud. Ammo boshqa indeksni tekshirishni yoki qilmaslikni qanday bilishimiz kerak? Buning uchun har qanday elementni o'chirib tashlaganimizda, INT_MAX bilan belgilaymiz, bu esa ilgari ba'zi bir elementlar hozirda mavjudligini bildiradi u o'chirildi. Shuning uchun bu erda to'xtamang, kerakli element keyingi indeksda ko'rsatilishi mumkin. */ Natija: Xash jadvalining hajmini kiriting 10 Xash funktsiyasini kiriting[if mod 10 enter 10] 10 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 1 Qo'shish uchun asosiy elementni kiriting 12 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 1 Qo'shish uchun asosiy elementni kiriting 22 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 1 Qo'shish uchun asosiy elementni kiriting 32 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 3 Indeks Qiymat 0 -2147483648 1 -2147483648 2 12 3 22 4 32 5 -2147483648 6 -2147483648 7 -2147483648 8 -2147483648 9 -2147483648 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 2 O'chirish uchun elementni kiriting 12 Element o'chirildi O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 4 Qidirmoqchi bo'lgan elementni kiriting 32 Element indeksda topildi 4 O'zingizning tanlovingizni kiriting 1-> Kiritmoq 2-> O'chirish 3-> Displey 4-> Qidirilmoqda 0-> Chiqish 0 To'g'ri tanlovni kiritin

Xulosa

Bugungi jamiyat taraqqiyoti insoniyat tafakkurining maxsuli bo’lgan rivojlangan ilm-fan yutuqlariga asoslangan texnika va texnologiyalar bilan bir qatorda, keng ma’noda, axborotlarning muhim ahamiyatga egaligi orqali xam belgilanadi. Faoliyat maqsadlarining turlicha bo’lishi tabiiy ravishda axborotlardan turli maqsadlarda foydalanish asoslariga sabab bo’ladi. Shuning uchun bugungi, axborotlarni saqlash va uzatish tizimlari bir tomondan takomillashib murakkablashgan va ikkinchi tomondan axborotdan foydalanuvchilar uchun keng qulayliklar vujudga kelgan davrda, axborotlarni maqsadli boshqarishning qator muhim masalalari kelib chiqadi. Bunday masalalar qatoriga katta xajmdagi axborotlarning tez va sifatli uzatish xamda qabul qilish, axborotlarni ishonchliligini ta’minlash, axborotlar tizimida axborotlarni begona shaxslardan(keng ma’noda) muxofaza qilish kabi ko’plab boshqa masalalar kiradi. Yuqoridagi keltirilgan asosli muloxazalardan kelib chiqib, axborotlarni asli xolidan o’zgartirilgan xolda, ya’ni shifrlangan xolda, saqlash va uzatish masalalarining muhim ekanligiga shubxa yo’qdir.



Xesh funksiyalar asosan ma’lumotning butunliligini ta’minlashda ya’ni axborot xavfsizligini ta’minlashda keng ko’lamda qo’llaniladi.


Download 49,94 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish