Yaliyomo
1. Utangulizi
Sarafu za kidijitali zenye msingi wa Blockchain kama Bitcoin zimepokea upatikanaji mpana, lakini bado kuna mwongozo mdoko juu ya thamani halisi ya bidhaa au huduma ambazo zinaweza kulindwa dhidi ya mashambulio ya matumizi-mara-mbili kwa kutumia manunuzi ya blockchain. Hitaji la kuelewa hatari hii ni muhimu sana kwa wafanyabiashara na huduma zinazotumia manunuzi ya blockchain kwa malipo, ikiwemo mitandao ya upande (sidechains) na Mtandao wa Umeme (Lightning Network).
Masomo ya awali ya uchumi wa shambulio la matumizi-mara-mbili yameshindwa kutokana na miundo rahisi ambayo haiwezi kushika utata kamili wa tatizo. Kazi hii inawasilisha mfano mpya wa muda endelevu kwa mashambulio ya matumizi-mara-mbili na hutathmini mashambulio ya kawaida na yale yanayofanywa kwa mashambulio ya wakati mmoja ya kupatwa-kwa-jua.
Ufahamu Muhimu
- Usalama wa manunuzi huongezeka kwa kiwango cha logarithimu na kina cha uthibitishaji
- Uthibitishaji mmoja hulinda dhidi ya washambuliaji wenye hadi 25% ya nguvu ya kuchimba madini kwa manunuzi chini ya BTC 100
- Uthibitishaji 55 (≈saa 9) huzuia washambuliaji kufikia usawa wa gharama na faida isipokuwa wana >35% ya nguvu ya kuchimba madini
- Mashambulio ya kupatwa-kwa-jua hupunguza kwa kiasi kikubwa kizingiti cha usalama kwa mashambulio ya matumizi-mara-mbili
2. Mfano wa Kihisabati wa Uchimbaji wa Blockchain
2.1 Mchakato wa Uchimbaji wa Muda Endelevu
Tunapata mfano wa muda endelevu unaoshika asili ya bahati nasibu ya uchimbaji wa blockchain. Mfano huu unazingatia nyakati za kufika kwa bloku kwa mfumo wa Poisson na uwezekano wa mafanikio ya uchimbaji wa bloku kulingana na usambazaji wa nguvu ya kompyuta.
Uwezekano wa mshambuliaji aliye na sehemu $q$ ya jumla ya nguvu ya kuchimba madini kukamata mlolongo wa waaminifu anapokuwa nyuma kwa bloku $z umetolewa na:
$$P(z) = \begin{cases} 1 & \text{kama } q \leq 0.5 \\ \left(\frac{q}{p}\right)^z & \text{kama } q > 0.5 \end{cases}$$
ambapo $p = 1 - q$ inawakilisha nguvu ya kuchimba madini ya waaminifu.
2.2 Uwezekano wa Shambulio la Matumizi-Mara-Mbili
Uwezekano wa mafanikio ya shambulio la matumizi-mara-mbili hutegemea kina cha uthibitishaji $z$, nguvu ya kuchimba madini ya mshambuliaji $q$, na thamani ya bidhaa hatarini $V$. Faida inayotarajiwa kwa mshambuliaji ni:
$$E[\text{faida}] = V \cdot P_{\text{mafanikio}}(z, q) - C_{\text{uchimbaji}}(q, z)$$
ambapo $C_{\text{uchimbaji}}$ inawakilisha gharama ya kuchimba madini wakati wa kipindi cha shambulio.
3. Uchambuzi wa Kiuchumi wa Mashambulio ya Matumizi-Mara-Mbili
3.1 Usalama wa Uthibitishaji Mm-oja
Kwa wafanyabiashara wanaohitaji uthibitishaji mmoja tu, uchambuzi wetu unaonyesha ulinzi dhidi ya washambuliaji wanao hadi 25% ya nguvu ya kuchimba madini, lakini tu wakati jumla ya thamani ya bidhaa hatarini iko chini ya BTC 100. Zaidi ya kizingiti hiki, motisha ya kiuchumi hufanya mashambulio kuwa ya kufaa kiuchumi.
3.2 Uchambuzi wa Uthibitishaji Mwingi
Wafanyabiashara wanaohitaji uthibitishaji 55 (takriban saa 9 katika Bitcoin) huongeza kwa kiasi kikubwa usalama. Mshambuliaji hawezi kufikia usawa wa gharama na faida isipokuwa ana zaidi ya 35% ya nguvu ya sasa ya kuchimba madini, au wakati thamani ya bidhaa hatarini inazidi BTC 1,000,000.
Vizingiti vya Usalama
Uthibitishaji Mm-oja: Ulinzi wa nguvu ya kuchimba madini 25% kwa <BTC 100
Uthibitishaji 55: Ulinzi wa nguvu ya kuchimba madini 35% kwa <BTC 1M
Sababu za Mafanikio ya Shambulio
• Kina cha uthibitishaji $z$
• Nguvu ya kuchimba madini ya mshambuliaji $q$
• Thamani ya bidhaa hatarini $V$
• Mwisho wa muda wa uthibitishaji
4. Ujumuishaji wa Shambulio la Kupatwa-Kwa-Jua
Linapochanganywa na mashambulio ya kupatwa-kwa-jua, ambapo maadui huzuia mtazamo wa mtandao lengwa wa blockchain kuu, mashambulio ya matumizi-mara-mbili huwa na ufanisi zaidi. Mfano wetu hupima jinsi mashambulio ya kupatwa-kwa-jua hupunguza kizingiti cha usalama kwa kuwatenga wafanyabiashara kutoka kwa mtandao wa waaminifu.
Uwezekano wa mafanikio uliobadilishwa chini ya shambulio la kupatwa-kwa-jua huwa:
$$P_{\text{kupatwa-kwa-jua}}(z, q) = P(z, q) \cdot P_{\text{mafanikio-ya-kupatwa-kwa-jua}}$$
ambapo $P_{\text{mafanikio-ya-kupatwa-kwa-jua}}$ inategemea muunganisho wa mtandao na uwezo wa mshambuliaji wa kudumisha hali ya kupatwa-kwa-jua.
5. Matokeo ya Majaribio
Uthibitishaji wetu wa majaribio unaonyesha kuwa usalama wa manunuzi dhidi ya mashambulio ya matumizi-mara-mbili huongezeka takriban kwa kiwango cha logarithimu na kina cha bloku. Uhusiano huu unalinda faida zinazowezekana dhidi ya kazi-uthibitisho inayohitajika.
Maelezo ya Chati: Chati ya uchambuzi wa usalama inaonyesha mikunjo mitatu inayowakilisha viwango tofauti vya nguvu ya kuchimba madini ya mshambuliaji (10%, 25%, 40%). Mhimili-x unawakilisha kina cha uthibitishaji (bloku 1-100), huku mhimili-w ukionyesha thamani ya juu zaidi ya manunuzi salama katika BTC. Mikunjo yote inaonyesha ukuaji wa logarithimu, na mkunjo wa mshambuliaji 40% unaonyesha pointi za juu zaidi za usawa wa gharama na faida katika kina chote cha uthibitishaji.
Matokeo yanaonyesha kuwa kwa matumizi ya vitendo ya wafanyabiashara, uthibitishaji 6 hutoa usalama wa kuridhisha kwa manunuzi hadi BTC 10,000 dhidi ya washambuliaji wenye chini ya 30% ya nguvu ya kuchimba madini.
6. Utekelezaji wa Kiufundi
Hapa chini kuna utekelezaji rahisi wa Python wa kuhesabu uwezekano wa mafanikio ya shambulio la matumizi-mara-mbili:
import math
def double_spend_success_probability(q, z):
"""
Hesabu uwezekano wa mafanikio ya shambulio la matumizi-mara-mbili
Vigezo:
q: sehemu ya mshambuliaji ya nguvu ya kuchimba madini
z: kina cha uthibitishaji
Anarudi:
uwezekano wa shambulio la mafanikio
"""
p = 1 - q # nguvu ya kuchimba madini ya waaminifu
if q <= 0.5:
# Kesi ya mshambuliaji mdogo
lambda_val = z * (q / p)
sum_term = 1
for k in range(0, z+1):
term = (math.exp(-lambda_val) * (lambda_val ** k)) / math.factorial(k)
sum_term -= term * (1 - ((q / p) ** (z - k)))
return sum_term
else:
# Kesi ya mshambuliaji mkubwa
return 1.0
def break_even_analysis(q, z, mining_cost_per_block):
"""
Hesabu thamani ya manunuzi ya usawa wa gharama na faida kwa shambulio la matumizi-mara-mbili
"""
success_prob = double_spend_success_probability(q, z)
total_mining_cost = z * mining_cost_per_block
if success_prob > 0:
return total_mining_cost / success_prob
else:
return float('inf')
# Mfano wa matumizi
q = 0.25 # nguvu ya kuchimba madini 25%
z = 6 # uthibitishaji 6
mining_cost = 0.1 # BTC kwa kila bloku
break_even_value = break_even_analysis(q, z, mining_cost)
print(f"Thamani ya manunuzi ya usawa wa gharama na faida: {break_even_value:.2f} BTC")
7. Matumizi ya Baadaye & Mwelekeo
Ufahamu kutoka kwa uchambuzi huu una athari kubwa kwa teknolojia zinazoibuka za blockchain. Mitandao ya upande (sidechains), kama ilivyopendekezwa na watafiti wa Blockstream, na suluhisho za Tabaka-2 kama Mtandao wa Umeme (Lightning Network) hutegemea kimsingi usalama wa manunuzi ya msingi ya blockchain. Mfano wetu hutoa mwongozo wa kiasi kwa kubuni itifaki salama za ushirikiano.
Mwelekeo wa utafiti wa baadaye unajumuisha:
- Kupanua mfano kwa utaratibu wa makubaliano wa uthibitisho-hisa (proof-of-stake)
- Kuchambua mikakati ya uboreshaji wa shambulio la wafanyabiashara wengi
- Kukuza zana za tathmini ya hatari ya wakati halisi kwa wafanyabiashara
- Kujumuisha ucheleweshaji wa mtandao na uenezwaji kuwa kwenye mfano
- Kutumia mfumo huu kwa mifumo ya blockchain inayoibuka kama Ethereum 2.0
Uchambuzi wa Asili
Utafiti huu unawakilisha maendeleo makubwa katika kupima uchumi wa usalama wa blockchain, ukishughulikia mapungufu muhimu katika miundo ya awali ambayo ilishindwa kujumuisha gharama za shambulio na malipo yanayowezekana. Mfano mpya wa muda endelevu hutoa mfumo wa kweli zaidi wa kutathmini mashambulio ya matumizi-mara-mbili, hasa kupitia ujumuishaji wake wa mashambulio ya kupatwa-kwa-jua—udanganyifu wa kiwango cha mtandao unaopunguza kwa kiasi kikubwa vizingiti vya usalama.
Uhusiano wa logarithimu kati ya kina cha uthibitishaji na usalama unaangazia usawazishaji wa msingi katika ubunifu wa blockchain: wakati uthibitishaji wa ziada huongeza usalama, hufanya hivyo kwa kiwango kinachopungua. Ugunduzi huu unalingana na utafiti uliokuwepo wa makubaliano, ikiwemo fasihi ya Tatizo la Majenerali wa Byzantine na matokeo ya kutowezekana kwa FLP yaliyotajwa kwenye karatasi, ambayo kimsingi inaweka kikomo usalama wa makubaliano yaliyosambazwa.
Ikilinganishwa na mifumo ya kawaida ya malipo ya kifedha ambayo hutegemea wapatanishi wa kuaminika, usalama wa blockchain unatokana na motisha za kiuchumi na uthibitisho wa kisiri. Kama ilivyoelezwa katika karatasi nyeupe ya Bitcoin na uchambuzi unaofuata kama ule wa Mpango wa Sarafu ya Kidijitali wa MIT, kazi hii inaonyesha kuwa usalama sio kamili bali ni wa uwezekano na wa kiuchumi asilia. Kizingiti cha nguvu ya kuchimba madini 35% kwa kufikia usawa wa gharama na faida na uthibitishaji 55 kinaanzisha mpaka wa usalama wa vitendo unaoongoza utumiaji halisi wa blockchain.
Mbinu ya utafiti inafanana na uchambuzi wa michezo ya kucheza kwenye mifumo mingine iliyosambazwa, kama ile inayotumika kwa CycleGAN na mitandao mingine ya kupingana, ambapo mikakati ya mshambuliaji na mtetezi hubadilika kulingana na motisha za kiuchumi. Hata hivyo, kazi hii inalenga kipekee vigezo halisi vya kiuchumi vya makubaliano ya blockchain, ikitoa mwongozo unaoweza kutekelezwa kwa wafanyabiashara na wabunifu wa itifaki.
Kwa kuangalia mbele, teknolojia ya kompyuta ya quantum inavyoendelea kuleta tishio kwa dhana za sasa za kisiri, na mifumo mipya ya makubaliano kama uthibitisho-hisa (proof-of-stake) inavyopata umaarufu, mfumo huu wa kiuchumi utahitaji kubadilishwa. Ushirikiano wa Blockchain wa Ulaya na mpango kama huo wa kimataifa unapaswa kujumuisha miundo hii ya kiasi ya usalama wakati wa kubuni miundombinu ya kifedha ya kizazi kijacho.
8. Marejeo
- Nakamoto, S. (2008). Bitcoin: Mfumo wa Pesa wa Elektroniki wa Mtandao wa Kushirikiana
- Back, A., et al. (2014). Kuwezesha Uvumbuzi wa Blockchain na Mitandao ya Upande (Sidechains)
- Poon, J., & Dryja, T. (2016). Mtandao wa Umeme wa Bitcoin: Malipo ya Papo hapo Nje ya Mtandao Mkuu
- Heilman, E., et al. (2015). Mashambulio ya Kupatwa-Kwa-Jua kwenye Mtandao wa Kushirikiana wa Bitcoin
- Fischer, M. J., Lynch, N. A., & Paterson, M. S. (1985). Kutowezekana kwa Makubaliano Yaliyosambazwa na Mchakato Mmoja Ulio na Kasoro
- Mradi wa Litecoin (2011). Litecoin: Sarafu ya Kidijitali ya Wazi ya Kushirikiana
- Sasson, E. B., et al. (2014). Zerocash: Malipo ya Bila Majina Yaliyosambazwa Kutoka Bitcoin
- Buterin, V. (2014). Ethereum: Jukwaa la Mkataba wa Akili na Programu Zilizosambazwa la Kizazi Kijacho
- Mpango wa Sarafu ya Kidijitali wa MIT (2016). Mapitio ya Utafiti wa Usalama wa Blockchain
- Ushirikiano wa Blockchain wa Ulaya (2020). Kuelekea Mfumo wa Blockchain wa Ulaya