Bagong Bitcoin Lightning Network bug: Walang kaakibat na pagruruta ng pagbabayad

Ang mga developer ng Bitcoin ay tinatalakay isang bagong bug ng Lightning Network na maaaring magdulot ng hindi nauugnay na mga pagkabigo sa pagruruta ng pagbabayad. Ang bug na ito ay maaaring maging sanhi ng mga pagbabayad sa Lightning Network na mabigo nang hindi alam ng mga kasangkot na partido kung bakit.

Kabaligtaran sa base layer na Bitcoin kung saan libu-libong mga node operator ang nagpapatunay ng mga transaksyon, ang mga pagbabayad sa Lightning ay maaaring magsama ng kasing-kaunti ng dalawang tao. Sinasadya ng mga user na isakripisyo ang seguridad ng blockchain ng Bitcoin kapalit ng mas mabilis na bilis at mas murang bayad.

Sa loob ng Lightning Network, maaaring mabigo ang mga pagbabayad kung may mali sa anumang hakbang sa iba't ibang proseso ng multi-signature. Halimbawa, maaaring tumanggi ang end receiver na maglabas ng preimage na nagkukumpirma na natanggap nila ang bayad, o maaaring mag-offline ang isang Lightning Network node.

Nangangahulugan ang hindi nauugnay na pagruruta ng pagbabayad na ang hindi alam ng mga gumagastos kung ano ang nangyari. Alinman sa isang mensahe ng error ay nasira sa daan pabalik sa nagpadala, o hindi sila nakatanggap ng mensahe. Maaaring patuloy nilang subukang gumamit ng may sira na node nang hindi man lang napagtatanto na may problema.

Kung makakatanggap ang mga gumastos ng notification tungkol sa kung ano ang naging mali, maaari nilang subukang muli pagkatapos gumawa ng ilang pagsasaayos, tulad ng paglipat sa ibang Lightning Network node.

Mga posibleng solusyon para sa pagkabigo sa pagruruta ng hindi nauugnay na pagbabayad

Inaasahan ng developer na si Joost Jager ang isyung ito at iminungkahi isang solusyon sa 2019. Napansin niya na ang isang channel ng pagbabayad ay maaaring tumagal ng mahabang panahon upang makumpirma na natuloy ang transaksyon. Inirerekomenda niya ang pagdaragdag ng dalawang timestamp sa mga mensaheng ibinabalik ng mga node sa nagpadala ng transaksyon. Ang isang timestamp ay kumakatawan sa oras na natanggap ng node ang transaksyon at ang isa pang timestamp kapag inihatid ng node ang transaksyon sa susunod na paghinto nito. Ang parehong mga timestamp ay gagawin bigyan ang mga nagpadala ng ideya kung aling mga channel ang mabagal na mag-relay ng mga transaksyon at iwasan ang mga channel na iyon sa hinaharap.

Noong Oktubre 19, 2022, si Jager nai-post isang na-update na bersyon ng kanyang hindi nauugnay na pag-aayos sa pagruruta ng pagbabayad na magpapahusay sa mga mensahe ng pagkabigo upang hindi magmukhang daldal ang mga ito sa isang nagpadala. Ang mga pinahusay na mensahe ay magbibigay-daan sa mga nagpadala na tukuyin ang eksaktong node na naging sanhi ng kanilang transaksyon upang mabigo upang maibukod nila ito sa mga susunod na transaksyon.

Rusty russell iminungkahi isang alternatibo: Babayaran ang bawat routing node ng isang sat kahit na nabigo ang isang transaksyon. Maaaring sabihin ng mga nagpadala kung aling routing node ang nabigo ni paghahambing ng bilang ng mga satoshi na ipinadala sa bilang ng mga satoshi na kanilang natanggap pabalik. Ang satoshi-counting technique na ito ay gagana kahit na ang isang error na mensahe ay nasira. (Tandaan: Ang isang satoshi ay katumbas ng isang daang milyon ng isang bitcoin.)

Ang mga pagpapatupad ng LND ng Lightning Network ay sinalanta ng mga error

Noong Nobyembre 1, 2022, Lightning Labs pinalaya isang pang-emergency na update para ayusin ang isang bug na naging sanhi ng hindi pag-parse ng mga LND node ng mga transaksyon na nangangailangan ng maraming input ng testigo. Ang mga node na hindi nag-a-update ay maaaring hindi mapigilan ang mga nakakahamak na pagsasara ng channel kapag nag-expire ang mga timelock.

Isang developer na kilala bilang "Burak" nag-trigger ng bug sa isang transaksyon na naglalaman ng mensahe, "tatakbuhin mo ang CLN [Core Lightning] at magiging masaya ka."

Matagumpay na inatake ni Burak ang LND Lightning. Dalawang beses.

Nag-trigger si Burak ng katulad na bug noong Oktubre 9, 2022, nang magpadala ang anonymous na developer ng 998-of-999 tapscript multisig na transaksyon. Ang ganitong uri ng transaksyon ay mangangailangan ng 998 pribadong key signature para ma-authenticate, na nagpapahirap sa matagumpay na pagtulak nito. Siya bragged tungkol sa paggawa nito para sa isang $4.90 na bayad.

Magbasa nang higit pa: Ang bug ay nag-freeze ng bitcoin sa loob ng Lightning Network nang ilang oras

Gumagamit ng Twitter na si Stadicus tinatawag ang mga pag-atake ay isang "mabangis na pagtanggal" at iminungkahing maglunsad ng bug bounty program.

Isang hacker na nagngangalang Anthony Towns inaangkin sinubukan niyang bigyan ng babala ang mga developer ng Lightning Network tungkol sa bug, ngunit sinasabing ang btcd repo ay tila walang mekanismo para sa pag-uulat ng mga bug sa seguridad.

Dalawang developer ng Lightning Network ang nagmungkahi ng mga posibleng solusyon para sa hindi nauugnay na isyu sa pagkabigo sa pagruruta ng pagbabayad. Sa pamamagitan ng pagpapabuti ng mga mensahe, gagawing mas madali ng panukala ni Joost Jager na matukoy kung saan nangyari ang problema. Ang panukala ni Russell ay gagawin mga nagpapadala ng gastos ng ilang higit pang mga satoshi, ngunit ginagawang posible na masubaybayan ang isyu kahit na hindi maibalik ang isang mensahe sa nagpadala. Samantala, inaayos ng mga developer ang mga bug na maaaring maging sanhi ng pagkabigo ng mga LND node sa unang lugar.

Para sa higit pang kaalamang balita, sundan kami sa kaba at Google News o makinig sa aming mausisa na podcast Innovated: Blockchain City.

Pinagmulan: https://protos.com/new-bitcoin-lightning-network-bug-unattributed-payment-routing/