Buning uchun tranzaksiya tuzilmasini va ikkita parametrni eslang: scriptSig
va
scriptPubKey. Boshqa parametrlardan farqli o'laroq, bu ikkalasi Bitcoin-da eng
qiyin tushuncha.
Bitcoin scriptlari nima ekanligini tushunib
olish uchun quyidagi kabi
vasiyatni ko'rib
chiqaylik:
1.000.000 dollar Elisga 16 yoshga to'lgandan keyingina o'tkaziladi Bunday
holda, vasiyatnoma matnining o'zi ma'lum bir shart bo'lib, u pulni qaysi holda
ishlatish
mumkinligini ko’rsatib turibdi.(qaysi holda $1,000,000 ni tranzaksiyaga
kirish sifatida
foydalanish mumkinligini) va 16 yoshda to’lganda pasportning nusxasi bu shart
bajarilganligining
isboti sifatida qabul qilinishi va pulni olish vaqti kelganini bildirishi mumkin.
Chiqishni ishlatish mumkin bo'lgan shartni
aniqlash uchun va shart
bajarilganligini
tekshirish(tasdiqlash) uchun SCRIPT, yopiq/ochiq kalitlar va boshqa
ma’lumotlar kerak bo’ladi.
Bitcoin-da, vasiyat pk_script maydonidagi tranzaksiyada ko'rsatilgan qulflash
scriptidir.
Bundan tashqari, u ochiq kalit yoki adresni o'z ichiga olgan dastur bo'lgani
sababli, ko'pincha
scriptPubKey deb ham nomlanadi.
Qulflash scripti(locking script)dagi shart bajarilganligi haqidagi "dalil" imzo
scripti(signature script) maydonida yozilgan. “scriptSig” ko'pincha qulfni
ochish
scripti(unlocking script) deb ataladi.
Scriptni haqiqiyligini tekshirish mexanizmi juda oddiy - buning uchun unlocking
script +
locking script (qulfni ochish scriptini + qulflash skriptini) birlashtirish va natijada
hosil bo’lgan
dasturni ishga tushirish kerak. Agar dastur bajarilgandan so'ng, TRUE stekning
yuqori qismida
qolsa, u holda tranzaksiya haqiqiy va boshqa holatda esa haqiqiy emas deb
qabul qilinadi.
Ko'paytirishga asoslangan skript(Multiplication-based script)
Yaxshilab tushunib olish uchun iloji boricha sodda skript yozaylik. G'oya
quyidagicha
bo’lsin: masalan, 370 sonini ishlatib, pulni qulflash. Qulflash skripti OP_MUL
370 OP_EQUAL
ga o'xshaydi. Tranzaksiyaning qulfini ochish uchun 2 shunday sonni ko’rsatish
kerakki, ularning
ko`paytmasi 370 soniga teng bo’lsin.
Skript bilan tajriba o'tkazish uchun Bitcoin skriptlarini ishga tushirish va
tekshirish uchun
mo’ljallangan onlayn pl
atformadan
foydalanish
mumkin(http://www.crmarsh.com/script-
playground/). Masalan, qulfni ochish skriptida 10 va 37 sonini yozing va
tekshiring:
http://www.crmarsh.com/script-
playground/#dummy_script%20OP_1%20OP_1%20OP_EQUAL%20OP_VERIFY
18- Uzellarni qidirish
Umuman aytganda, bu o'ylash uchun yaxshi masala: tarmoq
markazlashtirilmaganligini
hisobga olib, boshqa tarmoq ishtirokchilarini qanday topish mumkin? Bu
haqda ko'proq
ma'lumotni http://bitcoin.stackexchange.com/questions/3536/how-do-
bitcoin-clients-find-each-
other da o'qishingiz mumkin. Hali to'liq markazlashmagan yechim yo'q.
Masala yechimining 2 yo’li ko’rsatiladi. Birinchisi bu DNS, ya’ni ba'zi ishonchli
domenlar
mavjud:
bitseed.xf2.org
dnsseed.bluematt.me
seed.bitcoin.sipa.be
dnsseed.bitcoin.dashjr.org
seed.bitcoinstats.com
Boshqa usul unchalik yaxshi emas va amalda qo'llanilmaydi, ammo o’rganish
maqsadida
u yaxshi ishlaydi. Biz Shodanni(https://shodan.io/) ochamiz, ro'yxatdan o'tamiz,
tizimga kiramiz
va qidiruv satrida portni yozamiz: 8333. Bu bitcoin uchun standart port:
19. Blokcheyn protokoli
Bitcoin - bu xaridor va sotuvchi o'rtasida onlayn to'lovlarni amalga
oshirishga imkon beradigan raqamli naqd pulning bir shakli. U
operatsiyalarni va hisobdagi qoldiqlarni qayd etadigan raqamli kitob
sifatida ishlaydi.
Bitkoinlar almashinuvi
kriptografiya tamoyillari asosida
qurilgan
Bitcoin
protokoli yordamida amalga oshiriladi . Protokol
tasdiqlash va yakuniy
tasdiqlash orqali Bitcoin yaratilishidan boshlab amalga oshiriladigan
protsedurani belgilaydi.
Protokolning asosiy qismida
Bitcoin operatsiyalari mexanizmi
joylashgan
. Bitcoins elektron Bitcoin Wallets-dan sarflanadi va Bitcoin
operatsiyalari yordamida almashinadi. Protokolni tushunish uchun avval
bitimni, tarkibidagi ma'lumotlarni va ushbu ma'lumotlarning qanday
ishlashini tushunishga harakat qilaylik.
Bitcoin operatsiyalari
Bitcoin operatsiyasi asosan quyidagi ma'lumotlarni o'z ichiga oladi:
•
ID: SHA256 ikki Noyob bitim ID
-
jurnali ma'lumotlariga hash.
•
Kiritish: Vikipediya o'tkaziladigan bitkoinlarning manbalarini
aniqlaydigan manzillar. Odatda bu avvalgi operatsiyaning
natijasidir va jo'natuvchini tekshirish va
mavjud qoldiqni
tekshirish uchun ishlatiladi.
•
Miqdor: o'tkaziladigan bitcoins soni.
•
Chiqish: qabul qiluvchining bitcoin-manzili. Bitkoinning o'zgarishi
qolgan hollarda, chiqishda jo'natuvchining manzili uni qaytarib
yuborishi, "Tranzaksiya to'lovi" sifatida to'planishi yoki boshqa
qabul qiluvchiga yuborilishi uchun yozuv kiritilishi kerak.
Bitta operatsiyadan olingan natijalar boshqa operatsiyaga kirish sifatida
ishlatilishi mumkin. Bu bitcoin qiymati manzildan manzilga
ko'chirilganda egalik zanjirini yaratadi.
Do'stlaringiz bilan baham: