ÿ
k! ÿ{ ÿq/ pÿ
1
agar kÿz
agar kÿz}
k=0
z
ÿ
q
ÿ=z
p
Bizning
p > q degan taxminimizni hisobga olsak , tajovuzkor yetib olishi kerak bo'lgan
bloklar soni ortib borishi
sababli, ehtimollik eksponent ravishda kamayadi. Unga qarshi bo'lgan imkoniyatlarga ko'ra, agar u erta oldinga
omadli zarba bermasa, ortda qolgani sayin uning imkoniyatlari barbod bo'lib qoladi.
C kodiga aylantirilmoqda...
Endi biz yangi tranzaksiyani oluvchi jo‘natuvchi tranzaksiyani o‘zgartira olmasligiga yetarlicha ishonch hosil
qilishdan oldin qancha vaqt kutishi kerakligini ko‘rib chiqamiz. Yuboruvchi tajovuzkor bo‘lib,
oluvchini unga bir
muddat pul to‘laganiga ishontirmoqchi bo‘lgan, so‘ngra vaqt o‘tgandan so‘ng uni o‘ziga to‘lashga o‘tmoqchi.
Qabul qiluvchiga bu sodir bo'lganda ogohlantiriladi, lekin jo'natuvchi juda kech bo'lishiga umid qiladi.
Hujumchining hozir ham yetib olishi ehtimolini olish uchun biz uning har bir muvaffaqiyati uchun Puasson
zichligini uning shu nuqtadan yetib olish ehtimoliga ko'paytiramiz:
Qabul qiluvchi yangi kalit juftligini yaratadi va imzolashdan qisqa vaqt oldin jo'natuvchiga ochiq kalitni beradi.
Bu jo'natuvchiga bloklar zanjirini oldindan tayyorlashga to'sqinlik qiladi, toki u etarlicha oldinga borish uchun
omadli bo'lgunga qadar uzluksiz ishlaydi va shu daqiqada tranzaktsiyani amalga oshiradi.
Tranzaktsiya
yuborilgandan so'ng, insofsiz jo'natuvchi o'z tranzaktsiyasining muqobil versiyasini o'z ichiga olgan parallel
zanjirda yashirincha ishlay boshlaydi.
Tarqatishning cheksiz dumini yig'maslik uchun qayta tartibga solish...
Qabul qiluvchi tranzaktsiya blokga qo'shilishini va undan keyin
z bloklari bog'lanishini kutadi. U tajovuzkor
erishgan yutuqlarning
aniq miqdorini bilmaydi, lekin halol bloklar har bir blok uchun o'rtacha kutilgan vaqtni olgan
deb hisoblasak, tajovuzkorning potentsial rivojlanishi kutilgan qiymatga ega bo'lgan Puasson taqsimoti bo'ladi:
7
} summani qaytarish;
double poisson = exp(-lambda); uchun (i = 1; i
<= k; i++)
er-xotin p = 1,0 - q;
er-xotin
lambda = z * (q / p); ikki barobar summa =
1,0; int i, k; uchun (k = 0; k <= z; k++) {
}
poisson *= lambda / i; sum -=
poisson * (1 - pow(q / p, z - k));
#include
double
AttackerSuccessProbability(double q, int z) {
ÿ
k ÿÿ e
ÿzÿk ÿ
k=0
k!
k ÿÿ ÿ
e
ÿ1ÿÿq/ pÿ ÿzÿk ÿ ÿ
1ÿÿ
Machine Translated by Google
Biz ishonchga tayanmasdan elektron tranzaktsiyalar tizimini taklif qildik. Biz raqamli imzolardan tayyorlangan
tangalarning
odatiy ramkasidan boshladik, bu egalik huquqini kuchli nazorat qilishni ta'minlaydi, ammo ikki marta
sarflanishining oldini olishning bir usulisiz to'liq emas. Buni hal qilish uchun, agar halol tugunlar protsessor
quvvatining ko‘p
qismini nazorat qilsa, tajovuzkor o‘zgartirishi hisoblab bo‘lmaydigan bo‘lib qoladigan tranzaktsiyalar
tarixini yozib olish uchun ish isbotidan foydalangan holda peer-to-peer tarmog‘ini taklif qildik. Tarmoq tuzilmagan
soddaligi bilan mustahkam. Tugunlar bir vaqtning o'zida ozgina muvofiqlashtirish bilan ishlaydi. Ularni aniqlashning
hojati yo'q, chunki xabarlar ma'lum bir joyga yo'naltirilmaydi va faqat eng yaxshi harakat asosida yetkazilishi kerak.
Tugunlar o'z xohishlariga ko'ra tarmoqni tark etishlari va qayta qo'shilishlari mumkin, bu ish isboti zanjirini ular yo'q
bo'lganda nima sodir bo'lganligining isboti sifatida qabul qiladi. Ular protsessor
quvvati bilan ovoz berishadi, yaroqli
bloklarni qabul qilishlarini, ularni kengaytirish ustida ishlash va yaroqsiz bloklarni rad etish orqali ular ustida
ishlashni rad etishadi. Ushbu konsensus mexanizmi yordamida har qanday kerakli qoidalar va imtiyozlar qo'llanilishi
mumkin.
0,1% dan kam P uchun yechish...
Ba'zi
natijalarni bajarib, ehtimollik z bilan eksponent ravishda pasayishini ko'rishimiz mumkin.
8
q=0,1
z=0 P=1,0000000 z=1
P=0,2045873 z=2
P=0,0509779
z=3 P=0,0131722 z=4
P=0,0034552
z=5 P=0,0009137z
P=0,0009137
z= P6=0.02. 0,0000647
z=8 P=0,0000173
z=9 P=0,0000046 z=10
P=0,0000012
q=0,3
z=0 P=1,0000000 z=5
P=0,1773523 z=10
P=0,0416605
z=15 P=0,0101008 z=20
P=0,0024804 z=25
P=0,00004 z=25 P=0,0001
z= P=0250101 0,0000379
z=40 P=0,0000095 z=45
P=0,0000024 z=50
P=0,0000006
P < 0,001
q=0,10 z=5 q=0,15
z=8 q=0,20 z=11
q=0,25 z=15 q=0,30
z=24 q=0,35 z=41
q=0,40 z=89 q=0,45
340
Do'stlaringiz bilan baham: