2 – amaliy mashg’ulot Mavzu: BigData va Blokcheyn texnologiyalari. Tranzaksiyalar. Blockcheyn prototipini ishlab chiqish muhiti va tuzilishi


Yangi bloklar va PoW yaratishning №1-amaliy misoli


Download 0.78 Mb.
Pdf ko'rish
bet4/9
Sana18.06.2023
Hajmi0.78 Mb.
#1591555
1   2   3   4   5   6   7   8   9
Bog'liq
2-amaliy blokchain

1.4. Yangi bloklar va PoW yaratishning №1-amaliy misoli
Blockchain.py faylida biz blokcheyn sinfini yaratamiz, uning konstruktori dastlabki 
bo'sh varaqni (blokcheyn prototipini saqlash uchun) va boshqasini tranzaktsiyalarni 
saqlash uchun yaratadi. Mana sinfning tartibi: 
1-rasm. Blokcheyn sinfining joylashuvi 
 
Blockchain klassi zanjirni boshqarish uchun javobgardir. U tranzaktsiyalarni 
saqlaydi va zanjirga yangi bloklarni qo'shish uchun bir nechta qo'llab-quvvatlash 
usullariga ega. Keling, ba'zi usullarni ishlab chiqishni boshlaylik. 
 


1.5. Blok zanjiridagi blok tuzilishi 
Har bir blokda indeks, vaqt tamg'asi (unix vaqti), tranzaktsiyalar ro'yxati, isbot va 
oldingi blokning xeshlari mavjud. 
Mana bitta blok qanday ko'rinishiga misol: 
1 block = {
2 'index': 1,
3 'timestamp': 1506057125.900785,
4 'transactions': [
5 {
6 'sender': "8527147fe1f5426f9dd545de4b27ee00",
7 'recipient': "a77f5cdfa2934df3954a5c7c7da5df1f",
8 'amount': 5,
9 }],
10 'proof': 324984774000,
11 'previous_hash':
"2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824"
12 } 
Shu nuqtada, zanjirning g'oyasi aniq bo'lishi kerak - har bir yangi blok oldingi 
blokning xeshini o'z ichiga oladi. Bu juda muhim, chunki bu blokcheynga o'zgarmasligini 
beradi: agar tajovuzkor zanjirdagi oldingi blokni buzsa, keyingi barcha bloklarda noto'g'ri 
xeshlar mavjud. 
1.6. Blokka tranzaktsiyalar qo'shish 
Usul blokga tranzaktsiyalarni qo'shish uchun javobgar bo'ladi 
new_transaction(): 
 2-rasm. new_transaction() usuli 
 


new_transaction() tranzaktsiyani ro'yxatga qo'shgandan so'ng, u tranzaktsiya 
qo'shiladigan blok indeksini qaytaradi, ya'ni keyingi almashtiriladigan (yaratilgan) blok. 
Kelajakda bu tranzaktsiyani yuborayotgan foydalanuvchi uchun foydali bo'ladi. 

Download 0.78 Mb.

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




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