Lightning kwa Wajenzi Mtandao
Upitishaji wa kitunguu
Jinsi kila nodi kwenye njia inavyojua majirani zake tu: jenga na umenye kitunguu cha kuchezea kwa Python, kisha ukilinganishe na muundo halisi wa Sphinx.
45 dakikaKati10 / 17
Rasimu: somo hili bado linasubiri kukaguliwa.
Utakachojifunza
- Eleza kile kila hatua inaweza na isichoweza kuona katika malipo ya kitunguu
- Jenga usimbaji wa tabaka na uumenye hatua kwa hatua
- Taja kile vitunguu halisi vya Lightning vinaongeza, yaani ukubwa usiobadilika, siri za pamoja na HMAC
Maneno muhimu
- upitishaji wa kitunguu (onion routing)
- Kufunga maelekezo ya malipo kwa safu za usimbaji, ili kila nodi ijue hatua inayofuata tu.
- nodi (node)
- Kompyuta inayoendesha programu ya Bitcoin au Lightning na kukagua sheria zote yenyewe.
Alice anapomlipa Dina kupitia Bob na Chan, Bob anahitaji kujua apeleke malipo wapi baadaye, lakini si kwamba yanaenda kwa Dina. Upitishaji wa kitunguu unaipa kila nodi kile inachohitaji tu, si zaidi.
Tabaka, kama kitunguu
Alice anaijua njia yote. Anajenga ujumbe kwa tabaka, kuanzia la ndani kabisa:
- Tabaka la Dina: "wewe ndiye hatua ya mwisho; kiasi ni 21,000."
- Limefungwa ndani ya tabaka la Chan: "pitisha 21,000 kwa Dina."
- Limefungwa ndani ya tabaka la Bob: "pitisha 21,001 kwa Chan."
Kila tabaka limesimbwa kwa ufunguo ambao hatua hiyo tu inaweza kuupata. Bob anamenya tabaka lake, anasoma "pitisha kwa Chan", na anapitisha kilichobaki, ambacho kwake ni baiti zinazoonekana za bahati nasibu. Chan anamenya linalofuata. Tabaka la Dina tu ndilo linasema "ni lako".
Jenga kitunguu cha kuchezea
Kitu halisi kinatumia siri za pamoja za mkunjo wa elliptiki na ChaCha20; chetu kinatumia mtiririko wa SHA-256. Wazo la tabaka ni lile lile. Jaza wrap na peel:
Jenga kitunguu cha kuchezea
Mazoezi haya yanahitaji kompyuta yenye maabara ikiendeshwa. Unaweza kusoma somo kwenye simu.
Ukaguzi unaendesha vitendakazi vyako kwa funguo na jumbe za bahati nasibu, na kuhakikisha ujumbe unaonekana tu baada ya tabaka la mwisho.
Vitunguu halisi vinaongeza nini (Sphinx)
- Ukubwa usiobadilika. Kila kitunguu ni baiti 1,366, kimejazwa vijazio, ili hatua isiweze kuhesabu hatua zilizobaki.
- Siri ya pamoja kwa kila hatua. Alice anatumia ufunguo mpya wa muda kwa kila malipo; kila hatua inapata siri yake kwa ECDH, na ufunguo unafichwa kila hatua ili hatua zisiweze kuunganisha kitunguu zilichopokea na zinachokipitisha.
- HMAC. Kila tabaka lina alama ya uadilifu. Kitunguu kilichoharibiwa kinakataliwa, na hitilafu inasafiri kurudi kwa Alice ikiwa imesimbwa, tabaka kwa tabaka.
Tafakari
Andika jibu lako, au jadili na rafiki au chama chako.
- Chan anapitisha malipo kwa Dina. Je, Chan anaweza kujua kama Dina ndiye mpokeaji wa mwisho?
- Kwa nini kila kitunguu lazima kiwe na ukubwa ule ule, njia ikiwa ndefu au fupi?
Jipime
Soma zaidi
Limetoholewa kutoka Mastering the Lightning Network. Andreas M. Antonopoulos, Olaoluwa Osuntokun and René Pickhardt. Leseni: CC BY-SA 4.0.