Blokcheyn va kriptovalyuta texnologiyasi

|
Blokcheyn va kriptovalyuta texnologiyasi
|
bet | 2/4 | Sana | 11.12.2023 | Hajmi | 58,96 Kb. | | #115743 |
Bog'liq Raqamli iqtisodiyot fanidan mustaqil ishi1 Blokcheyn va kriptovalyuta texnologiyasi
Blokcheyn texnologiyasini xesh, xesh-funksiya va xesh-summa tushunchalarisiz tushunish imkonsiz. Ko‗pgina adabiyot manbalarida blokcheyn tushunchasi, birinchi navbatda, markazsizlashtirilgan tarmoqlar bo‗yicha taqsimlangan anonim tranzaksiyalar ro‗yxatlari sifatida ko‗rib chiqiladi. Blokcheyn shunday strukturaga ega bo‗lsa ham, blokcheyn texnologiyasi asosi - markazsizlantirish va anonimlik emas, balki kriptografiyaning o‗zidir. Blokcheyn tarmog‗idagi barcha kommunikatsiyalar kriptografiya tamoyillari bo‗yicha faoliyat yuritadi, ya‘ni ma‘lumotlar bazasiga har qanday o‗zgartirish kiritish haqiqiyligi tekshiriladi, soxtalashtirish imkonsiz, barcha axborot yuboruvchilar va oluvchilar identifikatsiya qilinadi, tarmoqqa yangi blokni sanksiyasiz qo‗shishning iloji yo‗q. Kriptografiyaning asosiy tushunchalari Kriptografiyaning asosiy vazifasi – axborotni o‗zgartirishlardan va uni saqlash hamda yuboruvchidan oluvchiga uzatish jarayonida sanksiyasiz kirishdan himoya qilishdir. Bunga ma‘lumotlarni saqlash, ishlov berish va almashish tizimida quyidagi elementlardan foydalanish yo‗li bilan erishiladi: Kriptografik kalitlar – belgilarning muayyan qoidalar bo‗yicha tartibga solingan tasodifiy ketma-ketligidir. Har bir kalit noyob bo‗lib, belgilar ketma-ketligi hech qachon takrorlanmaydi. Kalit bitta foydalanuvchiga yoki foydalanuvchilar guruhiga qarashli bo‗lishi mumkin. Maxfiylik siyosati (konfidensiallik) – maxsus algoritmlar va shifrlash usullari (simmetrik va asimmetrik), abonentlarning o‗zaro autentifikatsiyasi (parollar bilan almashish), raqamli sertifikatlar va imzolar, va hokazolardan foydalanish hisobiga erishiladi. Uzatiladigan ma‟lumotlar yaxlitligi va haqiqiyligi – shifrlash orqali saqlanadi, elektron imzo bilan tasdiqlanadi. Autentifikatsiya – tizimning faqat qonuniy ishtirokchilari o‗rtasida aloqani o‗rnatish, buzib kirishlardan himoya. Tizimga kirishga ruxsat olish uchun abonent tekshiruvdan o‗tib, o‗zining foydalanuvchi huquqlarini tasdiqlashi lozim. Ma‟lumotlarni shifrlash – shunday fundamentki, unda ma‘lumotlarni himoya qilishning butun tizimi quriladi. SHifr – bu dastlabki ma‘lumotning uni taqdim etishning boshqa shakliga o‗zgarishidir, lekin barcha dastlabki ma‘lumotlarni 8 saqlagan holda. Shifrsizlantirish – dastlabki xabarni shifrlash kaliti yordamida tiklash. Kriptografiyaning yuqorida ko‗rsatilgan elementlari asosida xesh-funksiya yotadi. Xesh-funksiya (ingl. hash – «aralashma‖) – muayyan algoritm bilan bajariladigan, ixtiyoriy uzunlikdagi kirish ma‘lumotlari massivini belgilangan uzunlikdagi chiqish satriga o‗zgartirishni amalga oshiradigan funksiya. Hozirgi vaqtda xesh-funksiyalar mexanizmi amaliyotda juda keng qo‗llaniladi. Xesh-funksiyalar yordamida quyidagilar amalga oshiriladi: Ma‘lumotlar yaxlitligini tekshirish (o‗zgartirishlarni topish); tekshirish mohiyati xesh-kodni saqlash va o‗sha ma‘lumotlar uchun takror hisoblab chiqarilgan xeshma‘noning etaloni bilan keyingi taqqoslashdan iborat. Taqqoslanadigan kattaliklarning tengsizligi yaxlitlikning buzilishini bildiradi. Autentifikatsiya tizimlari. Parollar xeshlantirilishi qo‗llaniladi. Elektron raqamli imzo (ERI) yaratish va tekshirish; xesh-funksiyalar mexanizmi imzoni generatsiya qilish va tekshirish uchun zarur bo‗lgan vaqtni kamaytirish, hamda imzo uzunligini qisqartirish uchun qo‗llaniladi. Blokcheyn texnologiyasi va Bitkoin kriptovalyutalari. Xesh-funksiya amalga oshiradigan o‗zgartirish xeshlashtirish deb ataladi. Dastlabki ma‘lumotlar kirish massivi, “kalit” yoki “xabar” deb ataladi. O‗zgartirish natijasi (kirish ma‘lumotlari) “xesh”, “xesh-kod”, “xesh-summa” deb nomlanadi. Kriptografik xesh-funksiya so‗z (yoki ma‘lumotlar) larni olib, ularni harf va raqamlardan iborat satrga aylantiradi: 4.1-rasm. Axborotni xeshlashtirish sxemasi Hosil bo‗lgan satr xesh deb ataladi. Xeshlar 256 bit yoki 64 belgidan iborat bo‗ladi: c4343462e59e23b60d93d13da46c1c0f7dfd5fb7f40444e7d11f28d9db106fd7 10 20 30 40 50 60 Xesh-funksiyaning asosiy xususiyatlari 1. Xesh-funksiya kirishida ixtiyoriy uzunlikdagi xabar yuboriladi; Ихтиёрий узунликдаги ахборот Хеш Хеш - функция 9 2. Xesh-funksiya chiqishida belgilangan uzunlikdagi ma‘lumotlar bloki shakllanadi; 3. Xesh-funksiya chiqishidagi belgilar yagona qonun bo‗yicha taqsimlangan; 4. Xesh-funksiya kirishidagi bironta bit o‗zgarishida chiqish ancha o‗zgarishlarga uchraydi. Agar xesh-funksiya sanab o‗tilgan xususiyatlarni qoniqtirsa, u shakllantiradigan belgi (ma‘no) xabarlarni betakror ravishda belgilab, xabarni uzatishda o‗zgartirishga bo‗lgan har qanday urinish xeshlashtirish orqali aniqlanadi. Misol 1. SHA-256[25, 26] xeshlashtirish algoritmi yordamida «Samarqand» so‗zi xeshini olamiz: c4 Endi yana shu algoritm yordamida «Samarkand» so‗zi xeshini olamiz: «Samarqand» so‗zidagi atigi ―q‖ harfini ―k‖ ga almashtirib, biz mutlaqo boshqa xeshga ega bo‗ldik. Bu kriptografiyaning asosiy qoidalaridan biri – ma‘lumot yaxlitligi buzilganiligi uchun sodir bo‗ldi. Xesh-funksiya uzatiladigan axborot xavfsizligiga kafolat beradi. Ma‘lumot yaxlitligini tekshirish tamoyiliga blokcheyn va elektron raqamli imzo texnologiyalari asoslangan. Axborotni xeshlashtirish hujjatni soxtalashtirishdan saqlaydi. Har qanday o‗lchamdagi ma‘lumotlarning kirish massivi xesh-funksiya yordamida harf va raqamlardan iborat belgilangan uzunlik (64 belgi) satriga o‗zgaradi. Misol 2. «Raqamli iqtisodiyot» so‗zini SHA-256[25, 26] kriptografiyasi algoritmi yordamida xeshlashtirish natijasi: 564f842e9935ca7baab85361bd296da8eb2628b3ce70244a9ef03e46727ea49d Ko‗rish mumkinki, «Raqamli iqtisodiyot» so‗zining xeshi ham 64 ta harfraqamli belgilardan iborat. Ulkan miqdordagi ma‘lumotlarning atigi 64 belgili noyob satrga ketma-ket o‗tkazilishi imkonsiz ko‗rinishi mumkin, biroq kriptografik funksiyalar aynan shu asnoda ishlaydi. Ushbu texnologiyalar yordamida matn bilan to‗lgan butun kitoblar 64 ta harf va raqamlardan iborat bitta satrga aylantirilishi mumkin. Misol 3. SHA-256 algoritmiga quyidagi matn parchasini kiritamiz: «Blokcheyin va kriptovalyuta texnologiyasi fanning asosiy maqsadi - blokchayining asosiy masalalarini o'rganish va uni iqtisodiyotning turli sohalarida qo'llash. Blokchayini biznes imkoniyatlarini yaxshilash, banklarning xarajatlarini 10 kamaytirish, xalqaro tranzaktsiyalarni osonlashtirishi, smart («aqlli») shartnoma asoslarini o'rganish mumkin» Natijada quyidagi xeshga ega bo‗lamiz: 3a3af051bb31ddb0027bce96ee1637cf9b54238aaf00eabc285f262c14688bb0 Ko‗rinib turgandek, xeshdagi belgilar soni matnning butun abzatsida ham, bitta so‗zda ham, masalan, «Samarqand» so‗zida c4343462e59e23b60d93d13da46c1c0f7dfd5fb7f40444e7d11f28d9db106fd7 64 belgidan iboratdir, faqat noyob ma‘noga ega. Kriptografik xesh-funksiyalarning har xil turlari mavjud bo‗lib, ularning har biri turlicha ishlaydi. Bitkoinda qo‗llanadigan yuqorida ko‗rsatilgan SHA-256 xeshlashtirish algoritmi murakkab formula asosida ishlaydi.
2 . Xesh-funksiyalarning qo’llanilish sohalari
Xesh-funksiyalar o‗zining keng rivojlanishi va qo‗llanilishiga axborot, kommunikativ va tarmoq texnologiyalari rivojlanishi bilan ega bo‗ldi. Hozirgi vaqtda ular kriptografiyaga, ma‘lumotlarni uzatish xavfsizligiga, axborotni himoya qilishga va boshqalarga asoslanadigan ko‗plab masalalarni echish uchun keng qo‗llaniladi. Quyida ulardan eng muhim va talab etilganlari ko‗rib chiqilgan: 1. Oddiy xesh-funksiyalar Internet tarmog‗ida paketlarni uzatishdagi yaxlitlikni TCP/IP va boshqa protokollar va algoritmlar bo‗yicha tekshirishda apparat xatolari va nosozliklarni aniqlash uchun qo‗llaniladi. Agar xeshsummaning hisoblab chiqarilgan ma‘nosi paket bilan yuborilgan nazorat summasi bilan bir xil bo‗lsa, bu paketda yo‗qotishlar yoki axborot o‗zgartirilishi bo‗lmaganini bildiradi. 2. Blokcheyn texnologiyasida ham o‗xshash sxema ishlatilib, unda xesh to‗lovlar zanjiri yaxlitligining kafolati bo‗lib chiqadi va uni sanksiya bo‗lmagan o‗zgarishlardan himoya qiladi. Xesh-funksiyalar tufayli blokcheyn yaxlitligini buzish juda mushkul. Shu sababli uning asosida ko‗plab kriptovalyutalar, shu jumladan, eng mashhur bo‗lgan kriptovalyuta – Bitkoin yaratilgan. Ta‘kidlash joizki, Bitkoin 2009 yildan beri mavjud bo‗lib, hozirgacha uning yaxlitligi buzilmagan. 3. Xeshlashtirish texnologiyasi tufayli elektron raqamli imzo (ERI) texnologiyasini yaratish imkoni paydo bo‗lib, u so‗nggi vaqtlarda keng rivojlanmoqda va qo‗llanilmoqda. Xesh yordamida elektron raqamli imzo bilan tasdiqlangan elektron hujjatning haqiqiyligi tekshiriladi. O‗zgaruvchan (odatda katta) hajmdagi qo‗l qo‗yiladigan hujjatlarda elektron raqamli imzo ko‗pincha hujjatning o‗ziga emas, xeshga qo‗yiladi. Xeshni hisoblab chiqarish uchun kriptografik xesh-funksiyalar ishlatiladi, bu esa imzoni tekshirishda hujjatning o‗zgarishi aniqlanishini kafolatlaydi. Xesh-funksiyalar elektron raqamli imzo algoritmi qismi emas, shuning uchun sxemada har qanday ishonchli xesh-funksiya qo‗llanilishi mumkin. 4. Login va parol bo‗yicha sayt va serverlarga kirish uchun ko‗pincha xeshlashtirish qo‗llaniladi. Parollarni ochiq holda saqlash ishonchli emas. SHuning uchun barcha parollar xeshlari saqlanadi. Foydalanuvchi o‗z paroli belgilarini kiritadi, maxsus dastur bir zumda uning xesh-summasini hisoblab chiqib, saytning ma‘lumotlar bazasida saqlanadigan xesh-summa bilan qiyoslanadi. Xeshlashtirishning bunday turi xesh bo‗yicha parolni tiklab bo‗lmasligi uchun juda yuqori kriptochidamli bo‗lgan murakkab funksiyalardan foydalanadi. Xesh-funksiyalardan foydalanish quyidagi afzalliklarni beradi: 12 Hisoblash murakkabligi. Odatda elektron hujjat xeshi dastlabki hujjat hajmiga qaraganda ko‗p marta kichik hajmda qilinadi, va xesh hisoblash algoritmlari elektron raqamli imzo algoritmlariga qaraganda ancha tezroqdir. SHu sababli xesh hujjatni shakllantirish va imzolash hujjatning o‗zini imzolashdan ancha tezroq bo‗ladi. Moslik. Ko‗p algoritmlar bit ma‘lumotlar satrlari bilan faoliyat yuritadi, ammo ba‘zilari boshqa taqdimotlarni ishlatadi. Xesh-funksiyani ixtiyoriy kirish matnini to‗g‗ri keladigan formatga o‗zgartirish uchun qo‗llash mumkin. Yaxlitlik. Xesh-funksiyadan foydalanmasdan katta elektron hujjatni elektron raqamli imzo qo‗llash uchun ancha kichik bloklarga bo‗lish kerak. Hujjatning haqiqiyligini tekshirishda barcha bloklar olinganligi va ular to‗g‗ri tartibdaligini aniqlab bo‗lmaydi. Mashhur xesh-funksiyalar CRC32 – aynan nazorat summalarini yaratish uchun qo‗llaniladi. Ushbu funksiya kriptografik emas. Hosil bo‗lgan xesh kerakli uzunligiga qarab, CRC dan keyingi raqam hoil bo‗ladigan xesh uzunligini bitlarda bildiradi. Funksiya juda sodda bo‗lib, uncha ko‗p xotirani egallamaydi. SHu bois ma‘lumotlar uzatishning turli protokollarida paketlar yaxlitligini tekshirish uchun qo‗llaniladi. MD5 – allaqachon kriptografik bo‗lgan algoritmning eski, ammo hozirgacha juda mashhur versiyasi bo‗lib, u 128 bit uzunlikdagi xeshni yaratadi. Uning kriptochidamliligi bugungi kunda uncha yuqori emas. SHunga qaramasdan, u baribir nazorat summaning yana bir varianti sifatida, masalan, tarmoqdan fayllarni yuklashda, qo‗llaniladi. SHA-1 – 160 bayt uzunlikdagi xesh-summani shakllantiradigan kriptografik funksiyadir. Saytning ma‘lumotlar bazasida parollar xeshlarini saqlash uchun ham ishlatiladi. HashTab – kompyuterdagi har qanday fayllar uchun xesh hisoblab chiqish. Xesh-funksiya tuzishning ba‘zi usullari Ko‗plab xesh-funksiyalar asoslanadigan bir nechta sodda va ishonchli usullar mavjud. 1. Bo‗lishga asoslanadigan xesh-funksiyalar. Usul xesh sifatida M ga bo‗lishdan qolgan qoldiq ishlatilishdan iborat bo‗lib, bu erda M – barcha mumkin bo‗lgan xeshlar soni: 2. Xeshlashtirishning multiplikativ sxemasi. Usul sodda ω bilan ba‘zi butun A konstantani tanlashdan iborat bo‗lib, bu erda ω – mashina so‗zi tomonidan taqdim etilgan belgilar soni (232). SHunda quyidagi turda xesh-funksiyani olish mumkin: 13 Bu holda ikkilamchi hisoblash tizimli kompyuterda M – ikkining darajasi bo‗lib, h(K) – A*K ko‗paytmani o‗ng yarmining katta bitlaridan iborat bo‗ladi. 3. Ko‗paytirish usuli. ( ) ( ) Bu erda kalitning [0..1] intervalida yotgan ba‘zi A konstantaga ko‗paytirilishi amalga oshiriladi. Bundan so‗ng ushbu ifodaning kasr qismi olinib, ba‘zi M konstantaga ko‗paytiriladi, bunda M shunday tanlanadiki, natija xeshjadval chegarasidan chiqmasligi lozim. Operator [ ] argumentdan kichik bo‗lgan eng katta butunni qaytaradi. O‗zini tekshirish uchun savollar 1. Kriptografiyaning asosiy vazifasi nima? 2. Xesh-funksiya nima? 3. Xesh-funksiya yordamida nimalarni amalga oshirish mumkin? 4. Xeshlashtirish deb nimaga aytiladi? 5. Xeshlashtirish natijasi bo‗lib nima hisoblanadi? 6. Xesh-funksiyaning asosiy xususiyatlarini ayting. 7. Kriptografik xesh-funksiyalarning xususiyatlarini ayting. 8. Xesh-funksiyalar qaerda qo‗llaniladi? 9. Xesh-funksiyalardan foydalanish qanday afzalliklar beradi? 10. Mashhul xesh-algoritmlar va ularning xususiyatlarini ayting. 11. Xesh-funksiyalar tuzishning qanday usullarini bilasiz? Ular nimadan iborat? 1.2. Tranzaksiyalar Blokcheyn texnologiyasi va kriptovalyutalarni tushunish uchun yana bir muhim tushuncha – tranzaksiyadir. Tranzaksiya (ingl. transaction, lot. transactio – kelishuv, shartnoma). [1] da tranzaksiyaga shunday ta‘rif berilgan – bu minimal mantiqan tushunilgan amaliyot bo‗lib, u mantiqqa ega va faqat to‗liq ravishda amalga oshirilishi mumkin. Tranzaksiyani bitimni amalga oshirish yoki shartnoma tuzish jarayoni sifatida tushunmoq lozim. Bunda eng asosiysi – tranzaksiya yarim holda yoki to‗rtdan bir qismga bajarilmaydi. Tranzaksiyaning ikki holatigina mavjud – yoki 14 bajarilgan, yoki yo„q. Aslida, bu mantiqan tugallangan amaliyotdir, u qanchalik uzun va necha bosqichdan iborat bo‗lishiga qaramasdan. Tranzaksiyaga misol – pul mablag‗larini bir hisobdan boshqasiga o‗tkazish: 1. tranzaksiyani boshlash; 2. 1234 raqamli hisobda pul mablag‗lari miqdorini o‗qish; 3. 1234 hisobi balansini 500 000 so‗mga kamaytirish; 4. 1234 hisobi balansini saqlash; 5. 4321 raqamli hisobda pul mablag‗lari miqdorini o‗qish; 6. balansni 500 000 so‗mga ko‗paytirish; 7. 4321 hisobida pul mablag‗larining yangi miqdorini yozib olish; 8. tranzaksiyani qayd qilish. Misoldan ko‗rinib turgandek, agar tranzaksiya to‗liq bajarilmasa, u mantiqli bo‗lmaydi. Tranzaksiyani tugatishning ikki varianti bo‗lishi mumkin (4.2.1-rasm). Agar barcha operatorlar muvaffaqiyatli bajarilgan bo‗lsa va tranzaksiyani bajarish jarayonida dasturiy yoki apparat ta‘minotida hech qanday nosozliklar bo‗lmagan bo‗lsa, tranzaksiya qayd etiladi. Tranzaksiyani qayd etish – ma‘lumotlar bazasidagi tranzaksiyani bajarish jarayonida qilingan o‗zgarishlarni diskga yozib olishni ta‘minlovchi harakatdir. Tranzaksiya qayd etilmaganiga qadar, ushbu o‗zgarishlarni bekor qilish, ma‘lumotlar bazasini tranzaksiya boshlanishidagi holatiga tiklash mumkin. Tranzaksiyani qayd etish tranzaksiyani bajarishning barcha natijalari doimiy bo‗lib qolishini bildiradi. Ular boshqa tranzaksiyalarga faqat joriy tranzaksiya qayd etilgandagina ko‗rinadi. Bunga qadar tranzaksiyaga tegishli barcha ma‘lumotlar foydalanuvchiga joriy tranzaksiya boshlanishi holatida ―ko‗rinadi‖. Agar tranzaksiyani bajarish jarayonida uning normal tugallanishini imkonsiz qiladigan biron hodisa ro‗y bersa, ma‘lumotlar bazasi dastlabki holatga qaytarilishi lozim (tranzaksiyani orqaga qaytarish). Tranzaksiyani orqaga qaytarish – bu ma‘lumotlarning joriy tugallanmagan tranzaksiyada qilingan barcha o‗zgarishlarni bekor qilishni ta‘minlovchi harakatdir. Tranzaksiyani qayta ishlash tizimlari ma‘lumotlar bazasining oraliq holatini uning o‗zgarilishidan oldin yozib olish yordamida ma‘lumotlar bazasini yaxlitligini ta‘minlab, so‗ng ushbu yozuvlardan foydalanib, tranzaksiyani tugatishni iloji bo‗lmaganda, ma‘lumotlar bazasini ma‘lum holatga tiklaydi. Misol uchun, ma‘lumotlar bazasida ma‘lumot nusxasini uning tranzaksiya tomonidan o‗zgartirilishidan oldin olish tizim orqali har qanday o‗zgartirish qila oladigan tranzaksiyadan avval qilinadi. Agar tranzaksiyaning biron qismi uning tugashidan oldin amalga oshmasa, ushbu nusxalar ma‘lumotlar bazasini uning tranzaksiya 15 boshlanishidagi holatiga qayta tiklash uchun ishlatiladi (tranzaksiyani orqaga qaytarish). 1.2.1-rasm. Tranzaksiyani tugatish variantlari Bundan tashqari, ma‘lumotlar bazasining barcha o‗zgarishlari jurnalini yuritish mumkin. Bu muvaffaqiyatsiz amaliyotlarni orqaga qaytarishni talab etmaydi, shu sababli tranzaksiyalarning ba‘zi qayta ishlash tizimlari ushbu funksiyani ta‘minlaydi. Agar ma‘lumotlar bazasi butunlay rad etsa, u so‗nggi zaxira nusxasidan tiklanishi lozim. Zaxira nusxalari ularni yaratishdan keyin bo‗lgan amaliyotlarni aks ettirmaydi. Biroq, ma‘lumotlar bazasi tiklanishi bilanoq, jurnal ma‘lumotlar bazasiga nisbatan, uni faol holatga keltirish uchun, qo‗llanadi. Nosozlik paytiga jarayonda bo‗lgan har qanday tranzaksiya to‗xtalishi mumkin. Natija rad etishgacha bo‗lgan barcha tranzaksiyalar natijalarini o‗z ichiga olgan ma‘lum kelishilgan holatdagi ma‘lumotlar bazasidan iborat. Tranzaksiyalarga bo‗lgan talablar Tranzaksiyalarga bo‗lgan talablardan eng keng tarqalganlardan biri – bu ACID (Atomicity, Consistency, Isolation, Durability) to‗plamidir. Bular har qanday tranzaksiya ega bo‗lishi kerak bo‗lgan xususiyatlar: Atomarlik (Atomicity) — hech qanday tranzaksiya qisman qayd etilmasligi lozim; Kelishilganlik (Consistency) — tizim tranzaksiya boshlanishidan oldin kelishilgan holatda bo‗lishi va tranzaksiya tugagandan keyin kelishilgan holatda qolishi lozim; Yakkalanganlik (Isolation) — tranzaksiyani bajarish vaqtida parallel tranzaksiyalar uning natijasiga ta‘sir ko‗rsatmasligi lozim; Ishonchlilik (Durability) — nosozlik holatida tranzaksiya tomonidan muvaffaqiyatli tugatilgan o‗zgarishlar tizim ishga qaytishidan so‗ng saqlanib qolgan bo‗lishi lozim.
|
| |