1. Блокчейн тушунчаси, Криптовалюта тушунчаси



Download 0,94 Mb.
Pdf ko'rish
bet1/12
Sana23.04.2022
Hajmi0,94 Mb.
#576311
  1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
1-34



Contents 
1.Блокчейн тушунчаси, Криптовалюта тушунчаси
 .............................................................................. 2 
2. 
Криптовалюта турлари
 ...................................................................................................................... 2 
3.Криптовалюталарнинг камчиликлари
 
ва афзалликлари
 ................................................................ 5 
4.
Эллиптик эгри чизиқлар нима?
 ......................................................................................................... 6 
5. Эллиптик эгри чизиқ нуқталарини геометрик қўшиш
 ................................................................... 7 
6. Эллиптик эгри
 
чизиқ нуқталарини алгебраик қўшиш
 .................................................................... 8 
7. Эллиптик эгри чизиқ нуқталарини скаляр кўпайтириш
 ................................................................. 8 
8. Чекли майдонда эллиптик эгри чизиқлар
 ...................................................................................... 9 
9. 
𝔽𝒑
.
майдонда эллиптик эгри чизиқлар нуқталарини қўшиш
 ...................................................... 10 
10. Эллиптик эгри чизиқ нуқталарини P модул бўйича скаляр кўпайтириш
 ................................. 10 
11.SECP256k1 эгри чизиғи
 ................................................................................................................... 12 
12 Elektron raqamli imzo Bitcoin .......................................................................................................... 12 
13- Formatlar va adreslar ...................................................................................................................... 13 
14- Tranzaksiya kirish va chiqish ........................................................................................................... 19 
15- Tranzaksiya komissiya ..................................................................................................................... 20 
16- UTXO tushunchasi ........................................................................................................................... 21 
17. Tranzaksiyani quluflash va qulufni ochish ....................................................................................... 24 
18- Uzellarni qidirish ............................................................................................................................. 26 
19. Blokcheyn protokoli ........................................................................................................................ 27 
11. SECP256k1 эгри чизиғи
 .................................................................................................................. 31 
21.
Биткоинда
 
Меркле
 
дарахти
 
тушунчаси
 ........................................................................................ 33 
22.Биткоинда майнинг тушунчаси ва жараёни
 ................................................................................ 38 
23.Биткоинда мукофот пули
 ............................................................................................................... 43 
24.Биткоинда Target ва Fork тушунчалари
 ........................................................................................ 45 
25.Майнинг қурилмалари
 .................................................................................................................. 47 
Bulutli qazib olish kripto valyutasini qazib olish uchun optimal formatdir
 ........................................ 48 
26.
Эфириум нима?
 .............................................................................................................................. 48 
27. Эфириум ва Биткоин 

улар қандай фарқ қилади?
 ..................................................................... 50 
28.Эфириум қандай ишлайди?
 .......................................................................................................... 52 
29.
Смарт контракт (Ақлли шартнома) нима?
 ................................................................................... 52 
30. Эфириумни ким яратган?
 ............................................................................................................. 53 
31. DAO нима ва Efirium Classic қандай пайдо бўлди?
 ..................................................................... 54 
32.
Эфириумда газ(ёқилғи) ва газ лимити
 ......................................................................................... 55 
33. Эфириум тармоғидаги блок майнинги учун қанча вақт кетади?
 .............................................. 56 
34. Эфириум токенлари нима?
 ........................................................................................................... 56 


1
.Блокчейн тушунчаси, Криптовалюта тушунчаси
Blokcheyn(inglizzcha Blockchain) - bu kriptografiya asosida bog'langan bloklar ro'yxati. Har bir blokda 
oldingi blokning kriptografik xeshi, vaqt belgilari va tranzaksiyalar to'g'risidagi ma'lumotlar mavjud. 
Blokcheyn hajmi kundan kunga ko’payib bormoqda. 
Bu, ayniqsa, dunyoda juda mashhur 
kriptovalyuta - Bitcoin. Ko'pgina hukumatlar va yetakchi banklar blokcheyn kontseptsiyasiga 
asoslanib, o'zlarining odatiy operatsiyalarini amalga oshirishni tanladilar. Ushbu platformaning 
dasturlari va potentsiali juda katta va ular turli sohalarda bitimlarni amalga oshirish usulini 
o'zgartiradi deb ishoniladi. 
Kriptovalyuta - bu to'liq avtomatik rejimda ishlaydigan markazlashtirilmagan to'lov tizimi (ichki yoki 
tashqi boshqaruvchi yoki uning o'xshashlari yo'q) tomonidan i
chki to’lov birliklari hisobini yuritadigan 
raqamli valyutaning(virtual pul) bir turi. O'z-o'zidan, Kriptovalyuta hech qanday maxsus material yoki 
elektron shaklga ega emas - 
bu shunchaki raqamlar bo’lib, u to’lov birliklari sonini anglatadi. U 
ma'lumotlar uzatish protokolining axborot paketida yoziladi va xuddi tranzaksiyaning haqidagi 
boshqa ma’lumotlar kabi odatda shifrlanmaydi. Shu bilan birga, manzilni yaratish va u bilan 
operatsiyalarni amalga oshirish uchun avtorizatsiyani tekshirish kriptografik usullarga asoslangan: 
(ochiq kalitli kriptografiyaga asoslangan raqamli imzo, tranzaksiyaga ruxsat faqat undagi manzilga 
mos keladigan yopiq kalit egasiga beriladi), shuningdek, tranzaksiyalar paketini shakllantirish va 
uning boshqa paketlar bilan aloqasi (ketma-
ket xeshlash) “Kriptovalyuta” atamasi 2011 yilda Forbes 
jurnalida chop etilgan Bitcoin tizimi to'g'risidagi maqoladan keyin keng qo’llanila boshlandi.Bitcoin 
yaratuvchisi va boshqa ko'plab mualliflar "elektron naqd pul(electronic cash)" atamasidan 
foyd
alangan. Boshqa elektron to’lov tizimlaridan farqli ravishda kriptovalyutalar real pullarning 
ishtirokisiz paydo bo’ladi. Har qanday kriptovalyuta to’lov vositasi statusiga ega emas (lekin ba’zi 
davlatlar bitcoin-ni tan olgan. M-n: Yaponiya). 
2. 
Криптовалюта турлари
so'nggi yillarda raqamli valyutalar dunyosi juda o'sdi va ularning har birini kuzatib 
borish shunchaki haqiqiy emas. Ulardan ba'zilari asta-sekin ketib, boshqalari bilan 
almashtirilmoqda, ba'zilari esa tarmoqlashib, foydalanuvchilarga pul ishlash va tovar 
va xizmatlar uchun noma'lum ravishda to'lash imkoniyatlarini taqdim etmoqda. Shu 
bilan birga, kripto-valyutalar egalari pul o'tkazmalarini to'liq noma'lum holda amalga 
oshirishi mumkin, ammo ba'zi tizimlar shartnomalar imzolashga imkon beradi, ya'ni 
raqamli valyutalar haqiqiy pulga alternativa sifatida xavfsiz ishlatilishi mumkin. 
Ushbu xususiyatlarning barchasiga qaramay, butun elektron bozorning asosiy 
ustunligi - bu davlat idoralaridan mustaqillik, bu odamlar uchun juda ko'p yangi 
imkoniyatlarni ochib beradi. Keling, o'zlarining mavjudligi davomida o'zlarining 
ishonchliligini isbotlagan va foydalanuvchilar hamda konchilar ishonchini qozongan 
eng mashhur kripto-valyuta turlarini ko'rib chiqamiz. 
Kripto-valyuta bozori har yili kuchayib bormoqda. Ulardan ba'zilari rivojlanish jarayonida ulkan 
kapitallashuvga ega bo'lgan haqiqiy "monster" larga aylanishdi va kon qazish - bu 
foydalanuvchilarning yuqori faolligi bilan bog'liq bo'lgan muayyan qiyinchilik. Ripple yoki IOTA kabi 
boshqa kripto-valyutalar tog'-kon kontseptsiyasidan butunlay voz kechdi va darhol bozorda maksimal 
miqdordagi tokenlarni chiqardi. Ushbu yondashuv tranzaktsiyani amalga oshirish uchun uchinchi 
tomonlarga ehtiyoj yo'qligi bilan bog'liq va ular tizimning boshqa foydalanuvchilari tomonidan 
amalga oshiriladi. 


Bitcoin (btc) 
Bitcoin Satoshi Nakamoto tomonidan yaratilgan eng qadimgi va eng mashhur kripto-valyutalardan 
biridir. So'nggi yillarda uning qiymati o'n baravar oshdi va o'sishda davom etmoqda. Tizim butunlay 
markazlashtirilmagan va bitimlar to'g'risidagi ma'lumotlar to'liq ochiq. Bitimlarning o'rtacha 
davomiyligi taxminan 10 minutni tashkil qiladi va elektron tangalarning maksimal soni 21 millionni 
tashkil qiladi. Bitkoinning minimal birligi 1 Satoshi (tizim muallifi sharafiga) bo'lib, u 0,00000001 
bitkoin. Maksimal miqdordagi cheklovlarga qaramay, ushbu kripto valyutasi uchun tog'-konchilar 
ko'payib bormoqda, bu blok ishlab chiqarishning murakkabligiga va BTC narxiga ta'sir qiladi. Bunday 
kripto valyutasi SHA-256 algoritmi yordamida ishlab chiqariladi.
Bitcoin Cash (bch) 
Bitcoin Cash - bu dasturiy ta'minotni ishlab chiqaruvchilarning asosiy ozchiliklari o'rtasidagi 
tortishuvlardan kelib chiqqan. Klassik BTC blok hajmi 1 MB ni tashkil etadi, bu tranzaktsiyalar hajmiga 
katta ta'sir qiladi va bir vaqtning o'zida protokolni takomillashtirish to'g'risida qaror qabul qilingan, 
shuningdek ba'zi fayllarni tizimdan tashqariga ko'chirish. Ushbu holat Facebook muhandislaridan 
biriga yoqmadi va ishlab chiquvchilar guruhi bilan birgalikda blok hajmini 8 Mbaytgacha oshirishni 
taklif qildi. Ayni paytda kripto valyutasi butunlay mustaqil bo'lib, operatsiyalarni amalga oshirish 
uchun turli xil aktivlardan foydalaniladi.
Tether (usdt) 
U 2015 yilda dollarning analogi sifatida, faqat belgi ko'rinishida yaratilgan. Aslida, shuning uchun 
uning kursi $ 1 ga teng. Yaratuvchi kompaniyaning real mablag'lari bilan 20% ta'minlanadi.
Litecoin (ltc) 
Litecoin - bu Bitcoinning vilkasi. Ushbu kripto valyutasi ko'pincha bitkoinlar bilan bir qatorga 
qo'yilgan bo'lsa-da, Litecoin kripto algoritmi ostida ishlaydigan mutlaqo mustaqil tizimdir. BTC bilan 
bir xil tarzda qazib olinadi - asosan video kartalar. Tranzaksiya tezligi 2,5 minutni tashkil etadi, bu esa 
pul o'tkazmalarini tezroq qabul qilish va yuborish imkonini beradi, shuningdek, atom operatsiyalari 
imkoniyati mavjud. Raqamli tangalarning maksimal soni 84 millionni tashkil etadi, bu Bitcoin-dan 4 
baravar ko'p, ammo qazib olishning murakkabligi ancha past. Yaqinda p2p protokoli yordamida turli 
xil tizimlar o'rtasida birinchi tranzaksiya amalga oshirildi, natijada Litecoin samaradorligi va 
ishonchliligini isbotladi.
Dalgalanma (xrp) 
Ripple yuqorida tavsiflangan kripto-valyutalardan tubdan farq qiladi. Markazlashtirilishiga qaramay, 
xuddi shu nomdagi ishlab chiquvchi kompaniya dunyodagi banklar bilan yaqindan hamkorlik qilib, 
foydalanuvchilarga minimal komissiya bilan tezkor pul o'tkazmalarini amalga oshirish imkoniyatini 
beradi. Ushbu kripto valyutaning narxi to'g'ridan-to'g'ri uning qanchalik tez-tez ishlatilishiga bog'liq 
va birja operatsiyalari qanchalik ko'p amalga oshirilsa, tanga narxi shuncha yuqori 
bo'ladi. To'lovlarning tezligi soniyasiga 1000 ta savdo-sotiqni tashkil qilishi mumkin. Ripple-ni qazib 
olishning iloji yo'q, chunki tizimning ishga tushirilishida barcha tokenlar chiqarilgan, ammo asta-sekin 
operatsiyalarni tasdiqlashi mumkin bo'lgan validator tugunlari paydo bo'ladi, ammo ishlab 
chiqaruvchi kompaniyaning o'zi barcha zaxiralarning 55 foiziga egalik qiladi.
Ethereum (et) 
Ethereum, shuningdek, Eter nomi bilan tanilgan, dastur ishlab chiquvchilari uchun 
markazlashtirilmagan valyuta. Agar bitkoinning asosi xash yig'indilar bo'lsa, unda maxsus 
platformada yozilgan har bir dasturning dastur kodi ETHda hisobga olinadi. Ishlab chiquvchilar 
o'zlariga butun dunyo bo'ylab dasturchilarga markazlashtirilmagan investitsiya fondlarini yaratish, 
o'yinlardagi reytinglarni monetizatsiya qilish va variantlarni markazsizlashtirish uchun ishlatilishi 
mumkin bo'lgan dasturlarni yaratish imkoniyatini berish vazifasini qo'ydilar. Shuni ta'kidlash kerakki, 


ushbu kripto valyutasi bilan ishlash uchun ishlab chiquvchi "Solidity" maxsus dasturlash tilini bilishi 
kerak. Hozirgi vaqtda kripto valyutasining ikkita o'zgarishi mavjud - ETH va ETC (Ethereum Classik) va 
ikkalasi ham yaxshi faoliyat ko'rsatmoqda.
Monero (xmr) 
Monero barcha kripto-valyutalardan, avvalambor, o'zining noyob kodi va CryptoNote algoritmi bilan 
ajralib turadi, bu esa xuddi shu BTC va uning vilkalariga qaraganda anonimlik darajasini oshirishga 
imkon beradi. XMRning maksimal soni cheklanmagan, demak elektron tangalarning asosiy qismi 
chiqarilgandan so'ng tizim foydalanuvchilar tomonidan faol qo'llab-quvvatlanadi. Shunisi e'tiborga 
loyiqki, Monero operatsiyalari Bitcoin-dan deyarli 10 baravar ko'proq joy oladi va x86 asosidagi 
protsessorlar qazib olish uchun ishlatiladi.
IOTA 
IOTA - bu narsalar Internetidagi qurilmalarda operatsiyalarni amalga oshirish uchun mo'ljallangan 
kripto-valyuta. Uning ishlash printsipi klassik blok zanjiriga asoslanmagan - u yo'naltirilgan asiklik 
grafik deb ataladigan butunlay boshqacha tizimdan foydalanadi. Ishlab chiquvchilar o'zlari buni 
Tangle deb atashadi. Bitim tuzish uchun ishtirokchi qolgan ikkitasini tasdiqlashi kerak. IOTA Ripple 
bilan umumiy o'xshashlikka ega, chunki barcha belgilar allaqachon chiqarilgan va uni qazib olishning 
iloji yo'q. Kripto valyutasi o'zining yengilligi, shuningdek, operatsiyalarning yuqori tezligi bilan ajralib 
turadi. Tranzaktsiyalar tezligiga uchinchi tomonlar ta'sir qilmaydi va Ripple-dan farqli o'laroq, butun 
tizim butunlay markazlashtirilmagan. Ayni paytda, kripto-valyutani ishlab chiquvchilar o'zlarining 
mikroprotsessorlarini chiqarishga tayyorlamoqdalar,
NEO 
NEO - bu dastur ishlab chiquvchilari uchun mo'ljallangan yana bir kripto valyutasi, ammo Eterdan 
farqli o'laroq, ikkinchisiga ma'lum tillarni bilishning hojati yo'q, chunki Java, Python, Microsoft.NET va 
boshqalarni o'z ichiga olgan ko'plab platformalar qo'llab-quvvatlanadi. Platformaning o'zi har xil 
dasturiy ta'minot bilan yuqori darajada birlashtirilgan. Jetonlarning maksimal soni taxminan 100 
million. Kripto valyutasi Xitoy bozorida faol ravishda ilgari surilmoqda va ishlab chiquvchilar Xitoy 
hukumati bilan hamkorlik qilmoqda, bu elektron pul bozorini butunlay yangi darajaga olib 
chiqadi. Aqlli shartnomalarni imzolash imkoniyatini, shuningdek pulni qaytarib berish imkoniyatini 
ta'kidlash kerak.
Chiziq 
Dash - Bitcoin-ning manba kodiga asoslangan kripto valyutasi, ammo uning bir nechta muhim farqlari 
bor, ular orasida tog'-kon sanoati uchun energiya kam sarflanishi, maxfiylikning maksimal darajasi va 
tizimning rivojlanishiga bevosita ta'sir ko'rsatishi kerak. individual dasturchilar emas, balki uning 
a'zolari. Elektron mablag'larning aksariyati (taxminan 90%) konchilar o'rtasida taqsimlanadi, qolgan 
10% esa tasdiqlangan ob'ektlarni qo'llab-quvvatlashga ketadi. Kavlab olish uchun turli 
algoritmlarning butun birlashmasidan foydalaniladi va bularning barchasi Dashni chindan ham noyob 
kripto valyutasiga aylantiradi. Xususiy algoritm X11 deb nomlanadi - u 11 ta boshqa algoritmlarni 
birlashtiradi va konchilik uchun ham so'nggi avlod protsessorlari, ham video kartalardan foydalanish 
mumkin.
Kardano (ada) 
Cardano - bu operatsiyalarda eng yuqori darajadagi xavfsizlikni ta'minlaydigan Haskell manba kodiga 
asoslangan kripto valyutasidir. Kardano 2 qatlamga bo'lingan: ADA - bu erda tokenlar, shuningdek 
aqlli shartnomalar joylashtirilgan alohida qism. Kripto valyutasini ishga tushirish vaqtida tranzaksiya 
tezligi 5-7 birlik / s ni tashkil qildi, ammo ishlab chiquvchilar tarmoqli kengligini asta-sekin oshirib 
bormoqda. Kon qazish uchun maxsus PoS algoritmi ishlatiladi, u Ourobotos deb nomlanadi - bu har 
bir shartnomaning zaruriy qismi bo'lgan bajarilgan ishni isbotlash zaruriyatidan xalos bo'lishga imkon 
beradi.


NEM (xem) 
NEM - bu asl manbali kripto valyutasi. Uning boshqa elektron pullardan farqi shundaki, u Impurtance 
Proof algoritmiga asoslangan - bu muhimlik isboti. Ya'ni, foydalanuvchi qanchalik faol bo'lsa, tizimga 
ko'ra shuncha tez, uning operatsiyalari o'z manziliga etib boradi. Tarmoqning ko'lamliligi sekundiga 3 
ming tranzaktsiyani tashkil etadi va "kon qazish" tushunchasi o'rniga "yig'im-terim" dan 
foydalaniladi. Shuni ta'kidlash kerakki, tarmoqning eng faol foydalanuvchilari qo'shimcha 
mukofotlarga ega bo'lishadi, bu esa yangi "yig'im-terimchilarni" jalb qilish, shuningdek, eskilar uchun 
tizimning jozibadorligini saqlashga imkon beradi.
Komodo (kmd) 
Komodo - bu butunlay yangi narsalarni yaratishga urinish. Kechiktirilgan ishni tasdiqlash protokoli bu 
erda qo'llaniladi. Biz sizga shartlarni yuklamaymiz, eng muhimi, tranzaktsiyalar xavfsizligini 
oshirishdir. Va maxfiylik. Ishlagan-ishlamaganligini vaqt ko'rsatadi. Kam tarqalganligi sababli, 
operatsiyalar deyarli bir zumda amalga oshiriladi. Uni qazib olish mumkin, lekin avvalgidek foydali 
emas.
Peercoin (shaxsiy kompyuter) 
Peercoin - bitkoinga asoslangan yana bir valyuta. U allaqachon Amerikadagi ba'zi muassasalarda 
to'lashi mumkin. Uni qazib olish ham muammo emas, oddiy kompyuter etarli bo'ladi. Sizga 
hamyoningizda (depozitning analogi) miqdori bo'yicha ozgina foizlar qo'shilishi qiziquvchan va 
barcha operatsiyalar komissiyasiz amalga oshiriladi.
Namecoin (nmc) 
Namecoin - bu qolganlardan butunlay boshqacha valyuta. Bu ma'lum bir zonadagi saytlarning domen 
nomlariga asoslangan. Ishlab chiquvchilar uzoq vaqtdan beri o'zlarining aql-idroklarini 
yangilamaydilar, shuning uchun valyuta allaqachon unutilgan va ko'pchilik tomonidan ko'milgan.
NXT (nxt) 
Nxt - bu qazib olinmaydigan kript. Hammasi allaqachon qazib olingan va 
muassislarning qo'lida. Siz faqat bitimlar bo'yicha daromad olishingiz mumkin. Shu 
nuqtai nazardan, juda ko'p ishonchsizlik va uning past tarqalishi mavjud. 
3.
Криптовалюталарнинг камчиликлари ва афзалликлари
Kalitlarning xavfsizligi. Yo'qotish xavfi ham mavjud, hamyonga egalik huquqini belgilovchi kalit 
yo’qotilsa, ushbu hamyondagi pulni na egasi van a boshqa kishi ishlata oladi, Agar kalit o’g’irlansa, 
unda hamyondagi barcha pullarga boshqalar (o’g’irlagan shaxslar) egalik qiladi, hamd
a bu jarayonni 
orqaga qaytarishning deyarli imkoni yo’q. Chunki yuqorida aytilganidek, bu kriptovalyutani nazorat 
qiladigan biron struktura (m-
n: bank) mavjud emas. Ba’zi bir servislar mavjud bo’lib, ular tufayli siz 
kriptovalyuta hamyon ochib, foydalanishingiz mumkin. Bunda siz telefon raqamingiz, elektron 
pochtangizni ko’rsatib ro’yxatdan o’tasiz. Bu esa anonimlikni buzadi. Ya’ni kriptovalyutalardan 
fodalanish maqsadlaridan biri bu anonimlik. Bu sizga parolni unutganda pocha yoki telefon raqami 
orqali uni qayta tiklashimkonini beradi. Lekin buning yomon tomoni, hamyonga egalik huquqini 
tasdiqlovchi kalitdan ushbu xizmat yaratuvchilari ham foydalanishi mumkin. Bu degani ular to’liq 
sizning hamyoningizni boshqaradi. Agar ularning tizimini buzib kirishsa, unda siz kabi barcha mijozlar 
kalitlarini o’g’rirlab olishlari mumkin. Bunday holat tarixda takrorlangan. Kursning tez o’zgarib turishi. 
Kripto valyuta kursining o'zgarishi natijasida siz yo'qotishlarga uch kelishingiz, ham foyda olishingiz 
mumkin. Hammasi "tangalar" sotib olingandan so'ng valyuta kursining o'zgarishiga bog'liq. 
Kriptovalyutani cheklovchi qonunlarning paydo bo'lishi ehtimoli. 
Ba’zi davlatlarda nisbatan tan 
olingan bo’lsa ham ko’p mamlakatlarda bu turdagi valyutalar cheklangan. 


Kriptovalyutani qanday olish mumkin. O’zingizning kompyuteringizda mayning qilish. Bu usul hozir 
samarasiz. Lekin oldin shu usul bilan ancha kriptovalyuta ishlab topilgan Mayning pullariga qo’shilib 
mayning qilish. Bu usul hozir keng tarqalgan. Bu usulda b
ir necha kishi o’zlarining mayning 
qurilmalari quvvatini birlashtirib, birgalikda mayning qiladi. Joriy kurs bo’yicha sotib olish. Ma’lum 
birjalar yoki onlayn valyuta almashtirish servislari orqali sotib olish mumkin.
Kriptovalyuta afzalliklari Raqamli pullarning ko'pgina afzalliklari Bitcoin misoli sifatida o'rganiladi. 
Shuning uchun, ular oddiy so'zlar bilan kriptovalyuta nima degan savolni o'rganganda, ular BTC ni 
nazarda tutadi. Bitimlarning to'liq shaffofligi. O'tkazmani(tranzaksiyani) faqat pul egasi amalga 
oshirishi mumkin va u buni amalga oshirishi bilanoq, hech kim operatsiyani bekor qila olmaydi. 
Anonimlik darajasining yuqoriligi. Tizim foydalanuvchilari uchun faqat hamyon adresi mavjud, shaxsiy 
ma'lumotlar nashr etilmaydi va uzatilmaydi. Kafolatlangan valyuta defitsiti. Ishlab chiqarilgan 
tangalar sonida qat'iy cheklov mavjud, bu Bitcoin-
ning hisoblash algoritmiga ko’rsatilgan. Inflyatsiya 
yo'q. Kriptovalyutaning raqamli xususiyati uning haqiqiy valyutalar kurslariga bevosita ta'sir 
ko'rsatadig
an iqtisodiy, siyosiy, tabiiy omillardan mustaqilligini ta'minlashga imkon beradi. Ya’ni u 
hech qanday davlat iqtisodiyoti, mavqei, boyligi va boshqa holatlarga bog’lanmagan. Uning kursi 
asosan bozordagi talab va taklif asosida o’zgaradi.
4.
Эллиптик эгри
чизиқлар нима?
Bitcoin elliptik egri chiziqlar kriptografiyasidan foydalanadi. elliptik egri chiziq bu (1) tenglama bilan 
berilgan nuqtalar to’plami. y2=x3+ax+b (1) bunda 4a3+27b2≠0 
elliptik egri chiziqning turli shakllari(b=1, a esa 2 dan -
3 gacha o’garmoqda) 
chapda (y2=x3), o’ngda (y2=x3+3x+2) 
a va b larning qiymatliga qarab elliptik egri chiziq tekislikda turli shakllarga ega bo’lishi mumkin. 
Elliptik egri chiziqlar uchun gruppa qonuni elliptik egri chiziqlar uchun gruppani aniqlash mumkin:
gruppa elementlari elliptik egri chiziqning nuqtalari hisoblanadi bir element - cheksizlikdagi 0 nuqta 
P nuqtaning qarama-qarshi qiymati 

bu berilgan nuqtaga x o’qiga nisbatan simmetrik nuqta 
qo’shish amali quyidagicha bajariladi: 0 bo’lmagan P, Q, R elliptik egri chiziq nuqtalari bitta to’g’ri 
chiziqda yotsa, P+Q+R=0 bo’ladi. 


2.1 Bitta to’g’ri chiziqda yotgan 3 ta elliptik egri chiziq nuqtalari yig’indisi 0 ga teng. 
Oxirgi shartda P, Q, R nuqtalarning elliptik egri chiziqda yotish ketma-ketligi muhim emas. Chunki 
P+(Q+R)=Q+(P+R)=R+(P+Q)=…=0 Shu bilan “+” qo’shish amali assosiativlik va kommutativlik 
xossalariga ega ekanligi va Abel gruppasi ekanligini ko’rsatildi.
5. 
Эллиптик эгри
чизиқ нуқталарини геометрик қўшиш
Abel 
gruppasi bo’lgani uchun P+Q+R=0 ni P+Q=
-
R. Bu tenglama shunday ko’rinishda P va Q 
nuqtalarni geomerik qo’shish keltirib chiqaradi: Agar P va Q nuqtadan to’g’ri chiziq o’tkazsak, suhbu 
to’g’ri chiziq elliptik egri chiziqni R nuqtada kesib o’tadi(chunki P, Q
va R nuqtalar bitta to’g’ri 
chiziqda yotadi deb olingan edi). Agar biz qarama-qarshi -
R nuqta olsak, biz P+Q ni topgan bo’lamiz. 
Mumkin bo’lgan xususiy holatlar 1) Agar P=0 va Q=0 bo’lsa, bunday holda tushunarliki, biz P va Q 
nuqta orqali to’g’ri chiziq o’tkaza olmaymiz. Biz oldin 0 ni bir element deb qabul qilgandik, shu uchun 
P+0 = P va 0+Q = Q bo’ladi barcha P va Q lar uchun 2) P = 
-
Q bo’lsa, bunday holda ikki nuqtadan 
o’tuvchi to’g’ri chiziq vertical bo’ladi va elliptik egri chiziqni 3
-nuqtada kesi
b o’tmaydi. Unda agar P 
nuqta Q nuqtaga qaramaqarshi bo’lsa, P+Q=P+(
-
P) = 0 3) Agar P=Q bo’lsa, bunday holda ikki 
nuqtadan cheksiz sondagi to’g’ri chiziqlar o’tishi mumkindek ko’rinadi. Lekin faraz qilaylik, P≠Q’ 
bo’lsin, Q’ ni P ga yaqinlashtirib borsak, unda ulardan o’tadigan to’g’ri chiziq P nuqtadan o’tgan 
urinmaga keladi. 
Bundan kelib chiqadiki, P+P=-
R, R bu to’g’ri chiziq bilan elliptik egri chiziq kesishgan nuqta. 4) P≠Q va R 
nuqta mavjud bo’lmasa, bu hol ham yuqoridagiga o’xshash, P va Q dan o’tgan to’g’ri chiziq egri chiziqqa 
urinma bo’ladi.
import numpy as np 


 import matplotlib.pyplot as plt
def main():
a = -1
b = 1
y, x = np.ogrid[-5:5:100j, -5:5:100j]
plt.contour(x.ravel(), y.ravel(), pow(y, 2) - pow(x, 3) - x * a - b, [0])
plt.grid()
plt.show() if __name__ == '__main__': main()
python da elliptik egri chiziq grafigini chizish 
6. 
Эллиптик эгри
чизиқ нуқталарини алгебраик қўшиш
Qo’shish amalini kompyuter bajarishi uchun geometrik usulni algebraikka almashtirish kerak. 
Biz quyidagini bilamiz: P+(-P) = 0 va P+0 = 0 +P=P
Shu uchun 0 ga teng bo’lmagan P=(xP,yP) va Q=(xQ,yQ) nuqtalarni faqat qaraymiz. 
Agar P va Q (xP≠xQ)teng bo’lmasa, unda ulardan o’tadigan to’g’ri chiz
iq m ga teng egilishga(naklon) 
ega bo’ladi. 
𝑚

𝑦𝑃
− 
𝑦𝑄
𝑥𝑃
− 
𝑥𝑄
Ushbu to’g’ri chiziqning egri chiziq bilan kesishmasi –
R 3-nuqta (xR,yR)
xR=m2 - xP - xQ yR= yP +m(xR-xP)
yoki yR= yQ +m(xR-xQ)
Shu uchun (xP,yP)+(xQ,yQ) = (xR,-yR)
Misol: P=(1,2) va Q=(3,4) elliptik egri chiziq y2=x3-
7x+10 ularning yig’indisi P+Q = 
-R =(-3,2)
𝑚

𝑦𝑃
− 
𝑦𝑄
𝑥𝑃

𝑥𝑄


− 4 1 − 3= 1 
xR=m2 - xP - xQ=12-1-3=-3 yR= yP +m(xR-xP)=2+1(-3-1)=-2 
P =Q holatda xR va yR ni toppish tenglamasi oldingiday 
qoladi. xP=xQ bo’lgani uchun m boshqacha 
hisoblanadi:
𝑚
=3
𝑥𝑃
2 + 
𝑎
2
𝑦𝑃
Misol: P=Q=(1,2)
𝑚
=3
𝑥𝑃
2 + 
𝑎
2
𝑦𝑃
=3 

12 

7 2 

2= −1 
xR=m2 - xP - xQ=(-1)2-1-1=-1 yR= yP +m(xR-xP)=2+(-1)*(-1-1)=4
demak P+P=-R=(-1,-4) 
7. 
Эллиптик эгри
чизиқ нуқталарини скаляр кўпайтириш
k*G ni hisoblash Bu G nuqtani k marta qo’shish. Buni hisoblashning tez usullaridanbiri quyidagicha: 
Misol: faraz qilaylik n=151 bo’lsin. 151 ikkilik sanoq sistemasida 100101112 ga teng. 


Bunga asosan quyidagini yozish mumkin: 151*G = 27G+24G+22G+21G+20G
Ikkilantirish-
qo’shish algoritmi quyidagi tartibda hisoblashni ko’rsatadi: 
G ni olish
2G bo’lishi uchun G ni ikkilantirish 
2G va G ni qo’shish (21G+20G) 
22G bo’lishi uchun 2G ni ikkilantirish 
Oldingi 
natijaga qo’shish (22G+21G+20G) 
23G bo’lishi uchun 22G ni ikkilantirish 
23G bilan qo’shmaslik 
24G bo’lishi uchun 23G ni ikkilantirish
Oldingi natijaga qo’shish (24G+22G+21G+20G) 
… 
Natijada biz 151 G ni hisoblaymiz, 7 ta ikkilantirish va 
4 marta qo’shish orqali.
Logarifm
Q=kG tenglamadan Q va G ma’lum bo’lganda n ni topish. Bu logarifmlash masalasi 
hisoblanadi. 
8. 
Чекли майдонда эллиптик эгри
чизиқлар
Hozirgacha biz elliptik egri chiziqlar ustida qo’shish amalini haqiqiy sonlarda ko’rdi
k. Endi ushbu 
amalni chekli maydonda qaraymiz.
P modul bo’yicha butun sonlar maydoni Chekli maydon bu birinchi navbatda chekli sondagi 
elementlar to’plami. Chekli maydonga misol P modul bo’yicha butun sonlar to’plami bo’ladi. Uning 
yozilishi 

/
𝑝
,
𝐹
(
𝑝
) yoki 
𝔽𝑝
. Maydon uchun qo

shish(+) va ko

paytirish(*) amali mavjud. Ularning 
ikkovi ham assosiativ va kommutativ. Ikkovi uchun ham yagona bir element mavjud. Har bir 
elementning yagona qarama-
qarshi elementi mavjud. Ko’paytirish amali distributiv: x*(y+z
) = 
x*y+x*z P modul bo’yicha butun sonlar to’plamiga 0 dan p
-
1 gacha bo’lgan butun sonlar kiradi. 
Qo’shish va ko’paytirish modulyar arifmetika asosida bajariladi. 
Qo’shish: (18+9) mod 23 = 4 
Ayrish: (7-14) mod 23 = 16
Ko’paytirish (4*7) mod 23 = 5
Additiv inversiya -5 mod 23 = 18,
chunki (5+(-5)) mod 23 = (5+18) mod 23 = 0 Multiplikativ inversiya: 9-1 mod 23 = 18


P modul bo’yicha bo’lish 
𝑥
𝑦

𝑥

𝑦


𝔽𝑝
.maydonda x ni y ga bo

lgandagi natijani topish uchun avval y-1 ni hisoblab so

ng 
ko’paytirish amalini bajarish kerak. y
-1 ni hisoblash uchun Evklidning kengaytirilgan algoritmidan 
foydalaniladi.
𝔽𝒑
.maydonda elliptik egri chiziqlar
Oldin ko’rilgan elliptik egri chiziqlar nuqtalari quyidagicha edi: 
Endi quyidagi ko
’rinishga o’tadi: 
Bu yerda 0 oldingidek cheksiz nuqta, a va b esa 
𝔽𝑝
.maydondagi 2 ta butun son. 
9. 
𝔽
𝒑
.
майдонда эллиптик эгри
чизиқлар нуқталарини қўшиш
Algebraik yig’indi P modul bo’yicha P=(xP,yP) va Q=(xQ,yQ) berilgan bo’lsa, R=(xR,yR
), P+Q=-R 
quyidagicha topiladi: s 
xR=(m2 - xP - xQ) mod p yR=(yP +m(xR-xP)) mod p yR=(yQ +m(xR-xQ)) mod p
Agar P

Q bo

lsa, m quyidagicha topiladi: 
𝑚

𝑦𝑃

𝑦𝑄
𝑥𝑃

𝑥𝑄
mod p
Agar P=Q bo’lsa, m quyidagicha topiladi: 
𝑚

3
𝑥𝑃
2+
𝑎
2
𝑦𝑃
mod p 
10. 
Эллиптик эгри
чизиқ нуқталарини 

модул бўйича скаляр 
кўпайтириш
ni hisoblash


𝔽𝑝
.maydonda skalyar ko

paytirishning ajoyib xossasi bor. Misolda ko

ramiz: y2=x3+2x+3(mod 97) va 
P=(3,6) nuqtani olaylik. Endi P ka karrali kattaliklarni hisoblaymiz. 
P = (3,6) ga karrali barcha qiymatlar quyidagilardan biriga teng bo’ladi: (0,P,2P,3P,4P,5P). Chunki 
ko’rish mumkinki, natijalar siklik qaytarilib kelmoqda.
Takrorlanayotgani va natijalar faqat 5 ta qiymat bo’lgani uchun
quyidagicha yozish mumkin:
Umumiy qilib har qanday butun k uchun bunday quyidagicha yozish mumkjn: kP = (K mod 5) P 


11.SECP256k1 
эгри
чизиғи
 
12 Elektron raqamli imzo Bitcoin 
Bitcoinda raqamli imzo
Alisa Bobga 1 BTC o’tkazmoqchi bo’lsin. Unda Alisa quyidagi ko’rinishda xabar yaratadi: 
{ "from" : 1FXySbm7jpJfHEJRjSNPPUqnpRTcSuS8aN, // Alice's address
"to" : 1Eqm3z1yu6D4Y1c1LXKqReqo1gvZNrmfvN, // Bob's address
"amount" : 1 // Send 1 BTC }
So’ng Alisa o’zining yopiq kaliti bilan, ushbu xabarni imzolaydi, imzolash natijasida r
aqamli imzo 
paydo bo’ladi. ECDSA algoritmida bu 2 ta butun son. Shundan so’ng Alisa xabar, imzo va o’zining 
ochiq kalitini boshqa ishtirokchilarga uzatadi. Natijada har qanday ishtirokchi ushbu 3 ta {xabar,
imzo va ochiq kalit}ni olib, xabar haqiqatan ham ushbu ochiq kalit egasi tomonidan
imzolanganmi yoki yo’qmi tekshira oladi. Bundan kelib chiqadiki ular xabarda yozilgan
ma’lumot ya’ni pul jo’natishni Alisa amalga Yopiq kalit Yopiq kalit 
- bu juda oddiy atama va turli xil 
elektron imzo algoritmlarida yopiq kalitlarning har xil turlaridan foydalanish mumkin. E'tibor bergan 
bo'lsangiz, Bitcoin da ECDSA algoritmidan foydalanadi. Bu holda yopiq kalit 256-bitli natural son, 
ya'ni 1 dan 2^{256} gacha bo'lgan natural sondir. Texnik jihatdan, hattoki 123456 soni ham haqiqiy 
yopiq kalit bo'ladi, lekin bunday kalitlar buzg’unchilar tomonidan tez buzilishi mumkin, bu esa sizga 
tegishli bo’lgan kriptovalyutani o’g’irlanishiga olib keladi. Ko'pgina Bitcoin mijozlari yopiq kalit
yaratishda shunchaki 256 ta tasodifiy bitni qabul qilishadi, bunday holda kolliziya ehtimoli juda 
kichik. Python kod:
>>> import random
>>> private_key = ''.join(['%x' % random.randrange(16) for x in range(0, 64)])
>>> private_key
'9ceb87fc34ec40408fd8ab3fa81a93f7b4ebd40bba7811ebef7cbc80252a9815'
>>> # or


>>> import os
>>> private_key = os.urandom(32).encode('hex')
>>> private_key
'0a56184c7a383d8bcce0c78e6e7a4b4b161b2f80a126caa48bde823a4625521f'
Python, ECDSA
>>> import binascii
>>> import ecdsa # sudo pip install ecdsa
>>> private_key = ecdsa.SigningKey.generate(curve=ecdsa.SECP256k1)
>>> binascii.hexlify(private_key.to_string()).decode('ascii').upper()
u'CE47C04A097522D33B4B003B25DD7E8D7945EA52FA8931FD9AA55B315A39DC62'
Ochiq kalit


yopiq kalit, G- 
base point(bazaviy nuqta) bo’lsin, unda ochiq kalit K= G*k bo’ladi. K –
ochiq kalit 
ham SECP256k1 egri chiziqda yotadigan nuqta. Ikki muhim qoida. Birinchidan, ochiq kalitni hisoblash 
o'ziga xos tarzda aniqlanganligini ko'rish mumkin, ya'ni bitta ochiq kalit har doim bitta yopiq kalitga 
mos keladi. Ikkinchidan, teskari operatsiyani(ya’ni ochiq kalitdan yopiq kalitni hisoblab topish)
hisoblash qiyin va umuman olganda, faqat to'liq izlash(barcha variantlarni tekshirib ko’rish) o
rqali 
ochiq kalitdan yopiq kalitni olish mumkin.
Python, ECDSA
>>> import binascii
>>> import ecdsa
>>> private_key = ecdsa.SigningKey.generate(curve=ecdsa.SECP256k1)
>>> public_key = private_key.get_verifying_key()
>>> binascii.hexlify(public_key.to_string()).decode('ascii').upper()
u'D5C08F1BFC9C26A5D18FE9254E7923DEBBD34AFB92AC23ABFC6388D2659446C1F04 
CCDEBB677EAABFED9294663EE79D71B57CA6A6B76BC47E6F8670FE759D746' 
13- Formatlar va adreslar 
Base58Check kodirovkasi Base58Check kodirovkasining mohiyati 
shundan iboratki, baytlar ketma-ketligini o'qish mumkin bo'lgan
shaklda va iloji boricha ixchamroq yozish, hamda xatoning paydo
bo'lish ehtimolini kamaytirish. Bitcoin masalasida xavfsizlik hech 
qachon ortiqcha bo'lmasligini o'zingiz tushunasiz. Bitta noto'g'ri belgi 
va pul shunday manzilga etib boradiki, uning yopiq kalitini hech kim 
hech qachon topilmasligi ham mumkin. Yozuvlarning qisqartirilishini 
juda keng tarqalgan Base64 kodlash yordamida, ya'ni 0,1, ..., 9 
raqamlari, a-z va A-Z harflari ishlatiladigan 64 talik tizim yordamida 


amalga oshirish eng oson. bu 62 ta belgini beradi, qolgan ikkita belgi 
qo’llanilshiga qarab har qanday belgi bo'lishi mumkin. Base58Check
ning birinchi farqi shund
aki, kimdir ularni o’qishda aralashtirib 
yubormasligi uchun, 0,O,l,I belgilari olib tashlangan. Natijada 58 ta 
belgi qoladi:
'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuv
wxyz' Python b58 = 
'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuv
wxyz'
def base58encode(n):
result = ''
while n > 0:
result = b58[n%58] + result
n /= 58
return result
# print "Base58 encode for '123123':", base58encode(123123)
# # Base58 encode for '123123': dbp
Ikkinchi farqi

bu check(tekshirish). Tekshirish
summasi(checksum) satr oxiriga qo'shiladi. U SHA256(SHA256(str)) 
natijaning dastlabki 4 bayti. Bundan tashqari, satrni Base58 
kodlashdan oldin uning boshida nechta nol raqami bo’lsa, shuncha 1 
raqamini natija satri oldidan qo'shish kerak. Python
import hashlib
def base58encode(n):
b58 = 
'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuv
wxyz'


result = ''
while n > 0:
result = b58[n % 58] + result
n /= 58
return result
# Will be used to decode raw bytes and then encode them to the 
base58
def base256decode(s):
result = 0
for c in s:
result = result * 256 + ord(c)
return result
def countLeadingZeroes(s):
count = 0
for c in s:
if c == '\0':
count += 1
else:
break
return count
def base58CheckEncode(prefix, payload):
s = chr(prefix) + payload
checksum = hashlib.sha256(hashlib.sha256(s).digest()).digest()[0:4]
result = s + checksum


return '1' * countLeadingZeroes(result) + 
base58encode(base256decode(result))
Yopiq kalit formati
Yopiq kalitni saqlashning eng oddiy usuli bu 256 bitni nollar va birlar 
to'plami sifatida
yozishdir. Ammo, odam uchun bunday ketma-
ketlikni o’qish qiyin. 
Yoki 32 baytli ketmaketliklar
ko’rinishida yozish, bu holda 0,1, ..., 9 raqamlari va A, B, C, D, E, F 
harflari ishlatiladi. Yuqoridagi
misollarda ushbu formatdan foydalanilgan, chunki u qulaylik uchun 
probellar bilan ajralib turadi:
E9 87 3D 79 C6 D8 7D C0 FB 6A 57 78 63 33 89 F4 45 32 13 30 3D A6 
1F 20 BD 67 FC 23 3A
A3 32 62
Yana bir progressiv format - bu WIF (Wallet Import Format). U juda 
sodda tarzda qurilgan: 1) Yopoiiq kalitni olamiz. M-n:
0C28FCA386C7A227600B2FE50B7CAE11EC86D3BF1FBE471BE89827
E19D72AA1D
2) Uni 0x80 prefiks bilan Base58Check formatda yozamiz.
private_key = 
'0a56184c7a383d8bcce0c78e6e7a4b4b161b2f80a126caa48bde823a
4625521f'
def privateKeyToWif(key_hex):
return base58CheckEncode(0x80, key_hex.decode('hex'))
# print "Private key in WIF format:", privateKeyToWif(private_key)
# # Private key in WIF format:
5HtqcFguVHA22E3bcjJR2p4HHMEGnEXxVL5hnxmPQvRedSQSuT4


Ochiq kalit formatlari Eslatib o’tamiz, ochiq kalit SECP25
6k1 egri 
chizig’idagi nuqta. Uni yozishning birinchi va eng keng tarqalgan usuli 

siqilmagan(uncompressed) format, X va Y koordinatalari uchun 32
baytdan. Chalkashmaslik uchun 0x04 prefiksi ishlatiladi va bu 65(ya’ni 
32+32+1) baytni tashkil qiladi.
import ecdsa
private_key = 
'0a56184c7a383d8bcce0c78e6e7a4b4b161b2f80a126caa48bde823a
4625521f'
def privateKeyToPublicKey(s):
sk = ecdsa.SigningKey.from_string(s.decode('hex'), 
curve=ecdsa.SECP256k1)
vk = sk.verifying_key
return ('\04' + sk.verifying_key.to_string()).encode('hex')
uncompressed_public_key = privateKeyToPublicKey(private_key)
# print "Uncompressed public key: {}, size:
{}".format(uncompressed_public_key,
len(uncompressed_public_key) / 2)
# # Uncompressed public key:
045fbbe96332b2fc2bcc1b6a267678785401ee3b75674e061ca3616bb
b66777b4f946bdd2a6a8ce4 
19eacc5d05718bd718dc8d90c497cee74f5994681af0a1f842, size: 65
Bu format optimal emas.
2-format 

bu siqilgan (compressed) format hisoblanadi. Uning 
mohiyati quyidagicha: ochiq kalit


- bu egri chiziqdagi nuqta, ya'ni y ^ 2 mod p = x ^ 2 + ax + b
(mod p) tenglamasini
qanoatlantiradigan juft son. Bu shuni anglatadiki, siz faqat X 
koordinatalarini yozishingiz mumkin,
keyinchalik bizga Y koordinatasi kerak bo'lsa, biz shunchaki 
tenglamani yechib Y ni topamiz.
Shunday qilib, biz ochiq kalit hajmini deyarli 50% ga qisqartiramiz.
Faqatgina bitta holat, agar nuqta egri chiziq ustida yotsa, uning
X koordinatasi uchun
bunday tenglamaning ikkita yechimi bor (yuqoridagi grafiklarga
qarang). Odatda biz Y
koordinatasi uchun (+,-)ishorani ushlab turardik, ammo
cheklangan maydon ustidagi funksiya
haqida gap ketganda, biz quyidagi xususiyatdan foydalanishimiz
kerak: agar X koordinatasi
uchun tenglamaning yechimlari mavjud bo'lsa, u holda
nuqtalardan biri juft Y
koordinataga ega bo'ladi, ikkinchisi esa toq.
Birinchi holda, 0x02 prefiksi, ikkinchisida esa - 0x03 ishlatiladi.
Quyida jarayonning
tasviri:
Adreslar
Yuqorida aytib o'tilganidek, manzil ochiq kalitdan olinadi. Bundan
tashqari, teskari
operatsiyani amalga oshirish mumkin emas, chunki kriptografik 
jihatdan kuchli xash funktsiyalari
- RIPEMD160 va SHA25
6 ishlatiladi. Ochiq kalitni manzilga o’girish 
algoritmi:
1) Yopiq kalit olinadi, masalan:


45b0c38fa54766354cf3409d38b873255dfa9ed3407a542ba48eb9cab
9dfca67
2) Undan ochiq kalit siqilmagan(uncompressed) formatda olinadi, bu 
holda u
04162ebcd38c90b56fbdb4b0390695afb471c944a6003cb334bbf030a
89c42b584f0890 
12beb4842483692bdff9fcab8676fed42b1b
3) RIPEMD160 (SHA256 (public_key)) hisoblanadi,
5879DB1D96FC29B2A6BDC593E67EDD2C5876F64C chiqadi 4)
Natijani 0x00 prefiksi bilan Base58Check-ga formatda yoziladi.
Bu manzil - 17JdJpDyu3tB5GD3jwZP784W5KbRdfb84X.
def pubKeyToAddr(s):
ripemd160 = hashlib.new('ripemd160')
ripemd160.update(hashlib.sha256(s.decode('hex')).digest())
return base58CheckEncode(0, ripemd160.digest())
def keyToAddr(s):
return pubKeyToAddr(privateKeyToPublicKey(s))
# print
keyToAddr("45b0c38fa54766354cf3409d38b873255dfa9ed3407a542
ba48eb9cab9dfca67")
# # '17JdJpDyu3tB5GD3jwZP784W5KbRdfb84X' 
14- Tranzaksiya kirish va chiqish 
Bitcoin tarmog'idagi haqiqiy tranzaksiya aslida yuqorida tavsiflanganidan
bir oz murakkabroq. Aslida, bu katta tuzilma, uning asosiy tarkibiy qismlari 
kirish va chiqishdir. Kirishlar(Inputs) - bu siz havola 
qilinayotgan("bog'layotgan") tranzaksiyalar. Tasavvur qilaylik, bir vaqtlar 
sizning X adresingizga uchta tranzaksiya yuborilgan edi:


TXN_ID 

123456, VALUE 

40 BTC
TXN_ID 

6453795, VALUE 

10 BTC
TXN_ID 

888888, VALUE 

100 BTC
Agar siz masalan, 45 BTC sarflashingiz kerak bo'lsa, unda 888888 tranzaksiyaga 
yoki bir vaqtning o'zida ikkita tranzaksiyaga havola qilishingiz mumkin:
123456 va 6453795. Agar xohlasangiz, hatto uchta tranzaksiyaga ham havola 
qilishingiz mumkin. Havola qilish 

bu manda shuncha mablag’ bor m
ana bu 
adreslarda deb ko’rsatish. Chiqishlar(Outputs). Hozircha siz ushbu
tranzaksiya natijasida mablag'lar "yuboriladigan" adreslar (garchi bu unchalik 
bo'lmasa ham) deb faraz qilishingiz mumkin. Bundan tashqari, bir nechta 
chiqish bo'lishi ham mumk
in va ularning har biri o’zining miqdoriga(summasi, 
mablag’i) ega.
Quyidagi rasmda ikkita tranzaksiya - "A" va "B" larning chiqishiga havola
qilayotgan yangi “C” tranzaksiya yaratilgan. Natijada “C” tranzaksiyada kirishga 
0,008 BTC olinadi va ular ikkita chiqishga bo'linadi, birinchi adresga 0,003 BTC, 
ikkinchisiga - 
0,004 BTC. Bir nechta chiqishning bo’lishi bu bir tranzaksiya
bilan bir nechta adresga mablag’ yuborish mumkinligini anglatadi. Masalan
rasmda “A” tranzaksiyada
2 ta chiqish turibdi, 1-
chiqish ma’lum adresga
0,015 BTC, 2-chiqish esa boshqa adresga 0,005 BTC yuborilganini 
ko’rsatmoqda. Xuddi shunday “C” tranzaksiyada ham. Bir vaqtning o'zida bir
nechta chiqishni belgilash imkoniyati juda muhim xususiyatdir, chunki
tranzaksiya (aniqrog'i, uning chiqishi) faqat bir marta va faqat to'liq kirish
sifatida ishlatilishi mumkin. Ya'ni, agar sizda 10 BTC uchun kiruvchi tranzaksiya 
bo'lsa va siz ulardan 8 tasini biron to’lov uchun sarflashingi
z kerak bo'lsa, unda 
siz bitta kirish va ikkita chiqish bilan tranzaksiya yaratasiz: do'konga 8 BTC va
sizning adresingizga 2 BTC. Agar siz yaratgan tranzaksiyada chiqishlar
summasi kirishlar summasidan kam (rasmdagi kabi) bo’lsa, u h
olda 
summalar orasidagi farq blokcheynga sizning tranzaksiyangizni yozgan
mayner adresiga yuboriladi.
15- Tranzaksiya komissiya 
Aynan mana shu kirishlar yig'indisi va chiqishlar yig'indisi o'rtasidagi farq tranzaksiya
to'lovi, ya'ni tranzaksiya komissiyasi deb ataladi. Bu maynerlar uchun ikkinchi muhim 
daromad
manbai bo'lib, tranzaksiyani blokcheynga qo'shish vaqtiga ta’sir qiladi. Buning sababi 
shundaki,
har bir maynerda blokcheynga qo’shilishga talabgor bo’lgan va tasdiqlanmagan 
tranzaksiyalarning


ma'lum bir to'plami mavjud. Odatda, mayner ularni komissiyaning kamayib borish
tartibida
saralaydi va shu bilan o'z foydasini maksimal darajaga ko'taradi, chunki blokcheyndagi
bitta
blokka xohlagancha tranzaksiyalarni q
o’shish mumkin emas, shu uchun tranzaksiyalarning 
bir
qismi saralanib olinadi. Shuning uchun, komissiya qancha ko'p bo'lsa, siz shunchalik 
navbatda
oldinroqda turasiz va to'lovingiz tezroq amalga oshadi.
16- UTXO tushunchasi 
Blokcheyn-ga yangi
tranzaksiya qo’shilgandan so'ng, uning
chiqishlari boshqa tranzaksiyalar uchun kirish sifatida ishlatilishi
mumkin. Buning uchun hali sarflanmagan chiqishlar mavjud bo’lib,
ularni UTXO(unspent transaction output(sarflanmagan tranzaksiya 
chiqishlari)) deb atashadi. Yuqorida aytib o'tilganidek, har bir chiqish 
faqat bir marta kirish sifatida ishlatilishi mumkin, shuning uchun
sarflanmagan chiqishlar amaliyotda muhim, ishlatilgan chiqishlar esa 
tizim xavfsizligiga maqsadida saqlanadi. UTXO da barcha sarflanmagan 
chiqishlar tushuniladi, ammo UTXO pul(pool) yoki UTXO to'plam deb 
ham yuritiladi. Ma’ruzaning boshda aytilganidek, endi sizga adres
balansini hisoblash uchun butun blokcheyn bo'ylab tekshirishning
hojati yo'qlig
i tushunarli bo’lsa kerak, chunki endi balansni 
hisoblashda sarflanmagan chiqishlarni qarab chiqishning o’zi yetarli.

Download 0,94 Mb.

Do'stlaringiz bilan baham:
  1   2   3   4   5   6   7   8   9   ...   12




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