Нов бъг в Bitcoin Lightning Network: Маршрутизиране на плащанията без атрибут

Биткойн разработчиците са обсъждане нов бъг в Lightning Network, който може да причини неуспешно маршрутизиране на плащане без приписване. Тази грешка може да доведе до неуспешни плащания в Lightning Network, без участващите страни да знаят защо.

За разлика от основния слой биткойн, където хиляди оператори на възли валидират транзакции, плащанията Lightning могат да включват само двама души. Потребителите целенасочено жертват сигурността на блокчейна на биткойн в замяна на по-високи скорости и по-евтини такси.

В рамките на Lightning Network плащанията могат да се провалят, ако нещо се обърка с която и да е стъпка в различни процеси с множество подписи. Например, крайният получател може да откаже да пусне предварително изображение, потвърждаващо, че е получил плащането, или възел на Lightning Network може да излезе офлайн.

Неуспешно маршрутизиране на плащане без приписване означава, че харчещите дори не биха разбрали какво се е объркало. Или съобщение за грешка се е повредило по пътя обратно към подателя, или той никога не е получил съобщение. Те могат да продължат да се опитват да използват дефектен възел, без дори да осъзнаят, че има проблем.

Ако харчещите получат известие за това какво се е объркало, те могат да опитат отново, след като направят няколко корекции, като например превключване към друг възел на Lightning Network.

Възможни решения за неуспешно маршрутизиране на плащане без присвояване

Разработчикът Joost Jager предвиди този проблем и предложената решение през 2019 г. Той забеляза, че каналът за плащане може да отнеме много време, за да потвърди, че транзакцията е преминала. Той препоръча добавянето на два времеви клейма към съобщенията, които възлите изпращат обратно на подателя на транзакцията. Едно времево клеймо би представлявало времето, когато възелът е получил транзакцията, а другото времево клеймо, когато възелът е препредал транзакцията до следващата си спирка. И двата времеви клейма биха дават представа на изпращачите кои канали бавно предават транзакции и избягвайте тези канали в бъдеще.

На 19 октомври 2022 г. Ягер написали актуализирана версия на неговата корекция за маршрутизиране на плащания без приписване, която ще подобри съобщенията за неуспех, така че да не изглеждат като безсмислици за подателя. Подобрените съобщения ще позволят на подателите да идентифицират точния възел, който е причинил неуспеха на тяхната транзакция, така че да могат да го изключат от бъдещи транзакции.

Ръсти Ръсел предложи алтернатива: Всеки маршрутизиращ възел ще бъде платен един sat дори когато транзакцията е неуспешна. Подателите можеха да разберат кой маршрутизиращ възел е неуспешен сравнявайки броя на изпратените сатоши с броя сатоши, които са получили обратно. Тази техника за броене на сатоши ще работи дори ако съобщение за грешка се повреди. (Забележка: Едно сатоши се равнява на една стомилионна част от биткойн.)

Реализациите на LND на Lightning Network са измъчвани от грешки

На 1 ноември 2022 г. Lightning Labs освободен спешна актуализация за коригиране на грешка, която кара възлите на LND да не успяват да анализират транзакции, които се нуждаят от много входящи данни за свидетели. Възлите, които не се актуализират, може да не успеят да предотвратят злонамерени затваряния на канали след изтичане на времевите блокировки.

Разработчик, известен като „Бурак“ задейства грешката с транзакция съдържащ съобщението, „ще стартирате CLN [Core Lightning] и ще бъдете щастливи.“

Бурак успешно атакува LND Lightning. Два пъти.

Бурак задейства подобен бъг на 9 октомври 2022 г., когато анонимният разработчик изпрати 998-от-999 tapscript multisig транзакция. Този тип транзакция би изисквал 998 подписа на частен ключ за удостоверяване, което затруднява успешното му преминаване. Той хвалеше за това срещу такса от $4.90.

Чети повече: Грешка замразява биткойн в Lightning Network за часове

Потребител на Twitter Stadicus нарича атаките са „дивашко сваляне“ и предложи стартиране на програма за награди за грешки.

Хакер на име Антъни Таунс доминираха той се опита да предупреди разработчиците на Lightning Network за грешката, но казва, че btcd repo изглежда липсва механизъм за докладване на грешки в сигурността.

Двама разработчици на Lightning Network предложиха възможни решения за проблема с неуспешното маршрутизиране на плащане без приписване. Чрез подобряване на съобщенията предложението на Joost Jager би улеснило определянето къде е възникнал проблемът. Предложението на Ръсел би струват на подателите още няколко сатошита, но правят възможно проследяването на проблема дори ако съобщението не успее да се върне на подателя. Междувременно разработчиците поправят грешки, които могат да доведат до отказ на LND възлите на първо място.

За по-информирани новини, последвайте ни Twitter намлява Google Новини или слушайте нашия разследващ подкаст Иновация: Blockchain City.

Източник: https://protos.com/new-bitcoin-lightning-network-bug-unattributed-payment-routing/