Core Lightning: як ребрендинг впровадження Blockstream відповідає його довгостроковому баченню Bitcoin PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Core Lightning: як ребрендинг впровадження Blockstream відповідає його довгостроковому баченню біткойна

Реалізація Lightning Network від Blockstream, яка тепер називається Core Lightning, прагне стати сумісним стандартом Bitcoin, орієнтованим на специфікації.

Компанія Blockstream, що займається інфраструктурою біткойнів, нещодавно перейменувала свою реалізацію Lightning Network з c-lightning на Core Lightning (CLN), намагаючись підкреслити довгострокову спрямованість проекту на взаємодію та роботу зі специфікаціями.

Початкова назва, яка вказувала на мову програмування C, в яку вбудована реалізація, не відображала реальних намірів компанії щодо проекту. Тепер Core Lightning прагне відобразити ціннісні пропозиції реалізації Blockstream.

«Ми сподіваємося, що оновлене ім’я краще передає зосередженість CLN на сумісності, роботі зі специфікаціями та поточній меті надати еталонну реалізацію з пріоритетом коректності та надійності», – йдеться в заяві компанії. заяву.

Чому існують різні варіанти реалізації Lightning Network?

Мережа Lightning — це абстрактна концепція того, що насправді являє собою багато різних каналів Lightning, з’єднаних разом. Платіжні канали Lightning створюють основу мережі, оскільки два учасники блокують певну кількість біткойнів на базовому рівні мережі біткойн, щоб здійснювати швидкі та дешеві платежі між собою. Однак, відкривши більше каналів з різними учасниками, платежі потім можуть направлятися в цій «мережі» від одного учасника до іншого, поки не буде знайдено кінцевого одержувача Lightning-платежу.

Отже, абстракція, яка є «мережа Lightning” вимагає, щоб різні учасники спілкувалися один з одним, щоб вони могли направляти один одному платежі та забезпечувати взаємодію без проблем. Це спілкування відбувається між вузлами, які запускають програмне забезпечення протоколу Lightning і, отже, можуть надсилати та отримувати платежі, серед іншого.

У той час як у Bitcoin наразі де-факто існує стандартне програмне забезпечення вузла, Биткойн ядро, існує більше одного типу програмного забезпечення вузла Lightning, яке зараз популярно. Як наслідок, потрібен набір документів, щоб диктувати, як ці різні типи вузлів Lightning — або «реалізації» — можуть спілкуватися один з одним.

Команда Документи Основи блискавичної технології (BOLT). визначте набір специфікацій, яких повинні дотримуватися всі реалізації вузлів Lightning, щоб бути стабільним, сумісним учасником мережі Lightning. На даний момент існує 11 документів BOLT, які описують усе: від того, як створити платіжний канал і поповнити його біткойнами, до того, як потрібно запитувати платіж Lightning.

Природно, той факт, що існують різні реалізації Lightning, також означає, що є різні пропозиції, доступні користувачам, і вони можуть вибрати програмне забезпечення для запуску відповідно до своїх конкретних потреб. На високому рівні є чотири основні реалізації Lightning: LND, Core Lightning, Eclair і LDK, кожна з яких орієнтована на певні випадки використання.

Core Lightning: створений із BOLT

CLN, який раніше називався c-lightning, використовувався в основній мережі Bitcoin з початку 2018 року. Написаний на мові програмування C, яка пропонує розробникам високий ступінь контролю над поведінкою свого коду навіть на низькому рівні, CLN фокусується на на ефективність, а також на надання розробникам і користувачам модульного, на основі плагіна реалізація протоколу масштабування рівня 2 Bitcoin.

«Ми прагнемо бути високопродуктивною реалізацією корпоративного рівня, яка відповідає специфікаціям», — сказав розробник Lightning в Blockstream Расті Рассел. Журнал Bitcoin. «Це традиційно означає, що ми більше для високоякісних користувачів, компаній та розробників, які надходять на основу».

CLN працює лише на Linux і MacOS, і потрібен локальний або віддалений біткойн версії 0.16 або новішої, яка повністю наздожена мережею, в якій працює користувач, і передає транзакції. Обрізка є частково підтримується.

Як легка реалізація, CLN забезпечує чудовий рівень налаштування, оскільки дозволяє користувачеві зробити його власним і додавати лише ті функції, які йому потрібні або потрібні. Розробники можуть взаємодіяти з демоном за допомогою спеціальних методів JSON-RPC, що дозволяє їм ефективно налаштовувати функціональність відповідно до своїх потреб за допомогою плагінів, які можуть отримати прямий доступ до низькорівневих деталей.

Модульність, ефективність і надійність коду CLN також мають свої недоліки. Крістіан Декер, дослідник з Blockstream, зосередився на рішеннях масштабування для Bitcoin, сказав під час зустрічі розробників біткойнів у Лондоні минулого місяця було сказано, що, дотримуючись філософії UNIX, яка полягає в тому, щоб виконувати одну справу дуже добре, а не нав’язувати користувачам рішення, CLN постачається у вигляді «голих кісток» і вимагає певної самовідданості від користувача, щоб забезпечити його роботу. .

За словами Рассела, реалізація Blockstream зосереджується в значній мірі на процесі специфікації і генерує велику частину свого коду безпосередньо зі специфікацій BOLT. Хоча це забезпечує повністю відповідну специфікації реалізацію, у команди залишається менше часу для маркетингу своєї роботи і визначає це як причину, по якій вона бачить менше залучення спільноти та частки вузлів, ніж інші реалізації.

«Ми побудовані на основі специфікацій Lightning BOLT, буквально!» Розповідав Рассел Журнал Bitcoin. «Це означає, що ми дуже піклуємося (і, як команда, доклали величезних зусиль) для координації архітектури всієї мережі Lightning за допомогою специфікацій BOLT».

Команда зазвичай пропонує нову специфікацію ширшій спільноті розробників, перш ніж додавати її до CLN, намагаючись забезпечити довгострокову сумісність між різними реалізаціями, одночасно вимагаючи більше очей для перегляду, тестування та коментарів до свого коду, перш ніж він зрештою буде перетворений на новий. BOLT і стає готовим до використання всіма реалізаціями.

«Частиною причиною, по якій ми виконуємо процес специфікації та огляду впроваджень, є те, що він допомагає визначати кращі способи дій — знаходити помилки, виявляти майбутні проблеми», — сказала Ліза Нейгут, інженер протоколу Lightning в Blockstream. Журнал Bitcoin.

Враховуючи його ефективність і малу вагу, CLN, ймовірно, найкраще підходить для пристроїв з низькими характеристиками.

Команда Blockstream також розробила набір нових функцій, які розширюють поточну функціональність BOLT, які часто є проектами специфікацій або специфікаційних пропозицій, включаючи відкриття каналів для спільної роботи, рекламу ліквідності та BOLT 12. CLN дає користувачеві можливість випробувати ці майбутні специфікації.

«Ми закріплюємо чорнові частини специфікації Lightning в рамках експериментальних варіантів», — сказав Рассел Журнал Bitcoin. «Але якщо ви більш авантюрні, ці експериментальні варіанти дають вам можливість

уявлення про те, що буде далі в Lightning Network!»

Відкриття спільного каналу, яке раніше називалося «каналами подвійного фінансування», дозволяє учасникам спільно відкривати новий канал, спільне фінансування трансакції фінансування каналу. Наразі відкриті канали з односторонньою операцією фінансування одним учасником. Відкриття спільного каналу також дозволяє розподілити CoinJoins у відкритий канал Lightning.

«Ви можете організувати свій власний CoinJoin з купою інших вузлів Lightning», — сказав Нейгут. Журнал Bitcoin. «Ви робите це децентралізовано, тому єдині люди, які знають про те, хто в цьому залучений, — це люди, які насправді є частиною цієї транзакції, тому немає центрального координатора, який би це зробив».

Оголошення про ліквідність також використовують канали для співпраці. За матеріалами Blockstream блог, «вони є легким способом надання можливості координувати розгортання ліквідності в мережі децентралізованим і доступним способом».

Ця функція намагається вирішити поширену проблему в Lightning: вхідну ліквідність.

Оголошення про ліквідність дозволяють «побачити всіх людей, які рекламують, що вони продадуть вам вхідну ліквідність, якщо ви відкриєте для них канал, що справді захоплююче», – сказав Нейгут.

БОЛТ 12 це ще один проект специфікації для гаманців і вузлів Lightning з експериментальною підтримкою в CLN. Запропонована функція, придумана «пропозиціями», покращить рахунки-фактури BOLT 11, дозволяючи багаторазові пропозиції, тоді як рахунок-фактуру BOLT 11 можна використовувати лише один раз. Крім того, хоча рахунок-фактура є виключно запитом на оплату, ви можете використовувати пропозицію для надсилання, а не лише отримання грошей.

Користувачі CLN тепер також можуть автоматизувати свої завдання керування вузлами за допомогою CLBOSS, нещодавно випущений інструмент «штучного інтелекту», який може вирішувати, на які вузли відкривати канали, відкривати канали, коли комісія низька і є кошти в ланцюжку, налаштовувати комісію за маршрутизацію, щоб бути конкурентоспроможною з іншими вузлами, виконувати заміни підводних човнів за допомогою болтса .exchange API і автоматично перебалансувати канали.

Хоча різні реалізації слід заохочувати до пошуку окремих рішень для своїх конкретних випадків використання, дотримуючись поточних специфікацій BOLT 11, просування супровідної пропозиції специфікації, щоб допомогти іншим реалізаціям розгорнути ту саму — або подібну — функцію, як правило, є хорошою практикою, як така. імовірно, цей крок задовольняє довгострокові інтереси широкої та постійно зростаючої бази користувачів Lightning. З огляду на це, процес специфікації - це нелегке завдання.

«Як процес це трудомісткий і займає багато часу. Це потребує координації з іншими людьми з різними точками зору», – сказав Нейгут.

У результаті різні компанії приділяють цьому процесу різну кількість часу та зусиль відповідно до своїх індивідуальних пріоритетів, які, природно, відрізняються. Хоча, за словами Рассела, команда CLN витратила більшу частину своїх «зусиль на специфікацію та низькорівневі деталі впровадження і майже не зусиль на охоплення розробниками чи маркетинг», Lightning Labs, компанія, яка стоїть за LND, часто вибирала більше зосередитися інженерні ресурси щодо нових функцій та вирішення проблем клієнтів, ніж щодо важкого процесу специфікації.

LND: CLN може заповнити прогалини?

LND — це перша реалізація Lightning для розробників, яка зосереджена на полегшенні розробки додатків поверх неї, при цьому робиться сильний акцент на взаємодії з розробниками, зокрема у стандартному підході до спілкування через API REST, що полегшує розробку додатків, а також забезпечує чітка документація та легке налаштування.

«Ми хочемо, щоб розробники могли легко отримати його, інтегрувати у свій продукт, створювати додатки на його основі та розповсюджувати його як гаманець або автономний вузол», — розробник LND Олівер Гуггер. сказав на лондонській зустрічі Bitcoin Devs. «Донести це до плебсу».

Як результат, LND зосереджується на тому, щоб «мати чудовий інтерфейс розробника», додав Гуггер, увімкнувши gRPC та REST.

«LND має чудову спільноту, легке налаштування та чудову документацію для розробників», — сказав Рассел, коли його запитали, чому він вважає LND найпопулярнішою реалізацією Lightning.

LND залучила найбільшу спільноту серед усіх реалізацій і наразі керує більшістю всіх мережевих вузлів. Деякі оцінки частка LND у загальному обсязі загальнодоступних вузлів Lightning становить від 70% до 90%.

LND також може похвалитися, можливо, найбільшою штатною командою розробників. В результаті команді вдалося створити безліч послуг із доданою вартістю навколо LND, таких як Апаратура і служби ліквідності Lightning Петля та басейн.

Loop використовує підводні свопи для з’єднання біткойнів у ланцюзі та поза ланцюгом, що полегшує переміщення біткойнів у мережу Lightning та з неї. Він виконує автоматичне балансування каналів, свопи, пов’язані з конфіденційністю, не пов’язані з опікою, пакетування транзакцій за економію коштів і моніторинг ходу свопів під час польоту.

Pool — це одноранговий ринок для каналів Lightning. Він з’єднує користувачів, які потребують доступу до вхідної ліквідності, з тими, хто має капітал для розгортання в мережі Lightning Network, дозволяючи учаснику Lightning Network сигналізувати про потребу в цьому та стимулюючи інших відкривати канали з ними, використовуючи їхній капітал.

Оскільки LND зазвичай зосереджується на нових функціях та підтримці клієнтів, команда CLN знайшла прогалину на ринку, яку вона сподівається заповнити, приділяючи пильнішу увагу процесу специфікації.

До специфікації чи не до специфікації

«Команда Labs придумала чудові речі», — сказав Нейгут. «Вони просто, як організація, не були дивовижними щодо написання специфікацій для речей, які вони додають. Хорошим прикладом цього є KeySend».

KeySend дозволяє вузлу Lightning надсилати комусь платіж Lightning, який має лише ідентифікатор вузла-отримувача, тобто інструмент не вимагає рахунків-фактур, які є поточними де-факто стандарт про механізм оплати Lightning.

«Вони запустили його, багато людей почали його використовувати, але вони ніколи не вказували це повністю», – додав Нейгут. «Тож CLN хотіла мати можливість підтримати його. Один з членів нашої команди повинен був повернутися назад і з’ясувати, як змусити його працювати, просто прочитавши їхній код і здійснивши його зворотну інженерію».

Зрештою, специфікація була написана реалізацією Lightning від Spiral, LDK, нагадав Нейгут, після того, як її команда перепроектувала код Lightning Labs.

«І іншим командам потрібно було лише слідувати, оскільки LND має таку велику базу встановлення», — сказала вона. «Це не найбільш спільний процес».

«Команда людей, які працюють над матеріалами Lightning Labs, досить міцна», – додав Нейгут. «Я просто думаю, що вони користуються перевагами свого домінування в мережі, щоб не виконувати всю цю додаткову роботу, тому що якщо вони цього не зроблять, це зробить хтось інший, тому що більшість вузлів у мережі запускає свій код».

Нейгут сказала, що вона вже звикла до того, що LND перебуває в центрі уваги та є реалізацією Lightning за замовчуванням — те, що, як вона зізнається, їй подобається як розробник через меншу кількість запитів на підтримку клієнтів, які вона отримує.

«Але я думаю, що ми отримали б більш здорову динаміку мережі, якби не було впровадження більшості», — додала вона. «Я думаю, що це справді змінить гру з точки зору кількості співпраці, яку кожен повинен зробити, щоб отримати свої матеріали на Lightning. І це було б здоровим».

Пильна увага до специфікацій, можливо, є центральною в розробці відкритих кодів у відкритому мережевому середовищі. У Lightning такі специфікації становлять основу протоколу та забезпечують сумісність різних версій, які беруть участь у мережі.

Однак, хоча деякі стверджують, що основні зміни та нові доповнення до однієї реалізації Lightning повинні мати супровідну специфікацію, інші можуть розглядати специфікації BOLT як мінімальний мінімум, на якому кожна реалізація може створювати власні захоплюючі нові функції, які не обов’язково потребують бути перенесено назад до набору специфікацій.

"Його жорсткий створення інфраструктурної компанії з відкритим кодом, тому не дивно, що я не погоджуюся з усіма пріоритетами [Lightning Labs]», – сказав Рассел. «Я щиро вірю, що вони знайдуть спосіб як створити стабільний потік доходів, так і стати надійним партнером у технічному розвитку Lightning Network; Я не думаю, що хтось хоче бачити мережу розбитою на частини».

Повне ігнорування процесу специфікації може призвести до появи дуже різних субекосистем, що може зашкодити розвитку та прийняттю Lightning Network в цілому, якщо вони стануть несумісними. Але, як підкреслив Рассел, немає жодних ознак того, що будь-яка реалізація робить це сьогодні. Підтримка злагодженої взаємодії між вузлами є ключовим, якщо ми хочемо, щоб деталі реалізації були відсторонені від користувача, і таким чином забезпечити хороший досвід роботи з користувачем.

«Якби [Lightning Labs] були лідером і вони також лідирували у специфікаціях, я думаю, що було б трохи менше тертя щодо додавання нових функцій, тому що було б не так важко стежити за тим, що вони роблять, — сказав Нейгут. «Можливо, вони будуть більше залучені до процесу специфікації надалі. Я думаю, що вони, безперечно, отримали відгуки від нас та решти спільноти про те, що процес специфікації важливий».

Частина суперечки і напруги в процесі BOLT spec випливають з E-mail наприкінці лютого він поділився в Twitter, в якому керівник відділу ліквідності Lightning в Lightning Labs Алекс Босуорт прокоментував BOLT 12 і процес специфікації BOLT.

Босворт писав, що процес BOLT є довільним процесом стандартизації, який не вимагає згоди людей, і, отже, являє собою «скоріше набір упевнених документів, контрольованих довільним процесом, ніж це договір між незалежними впровадженнями».

Lightning Labs пізніше уточнені що коментарі Босворта відображають лише його думку і не обов’язково думку компанії.

Core Lightning: як ребрендинг впровадження Blockstream відповідає його довгостроковому баченню Bitcoin PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.
Босворт, можливо, натякав на відмову від відповідності процесу специфікації, коли він суперечить тим, що він називає «поточними проблемами» в Lightning, оскільки такі стандарти можуть не використовуватися більшістю мережі і тому не повинні вимагати великих зусиль у розробці, тоді як ці проблеми може являти собою болючі точки більшості користувачів, і тому має бути пріоритетним. Джерело зображення.

Декер поділився своїми думками щодо коментарів Босворта та процесу специфікації BOLT під час зустрічі Bitcoin Devs у Лондоні.

«Я думаю, що це дуже сильні заяви від людини, яка ніколи не брала участі в жодній нараді зі специфікації», – сказав він. «У процесі специфікації є деякі суперечки, але це задумано. Якби одна реалізація могла диктувати, як виглядатиме вся мережа, ми мали б дуже короткозоре уявлення про те, якою може бути мережа, і ми не могли б обслуговувати всі різні варіанти використання, які ми обслуговуємо».

«Так, іноді процес специфікації розчаровує, я повністю згоден з цим», — додав він. «У нас, безумовно, різні погляди на те, як має виглядати мережа. Але завдяки цій тезі, протилежності та процесу синтезу ми створюємо систему, яка набагато більш спроможна обслуговувати наших користувачів, ніж якби одна реалізація робила це сама».

«Особисто я не працюю над специфікацією, тому не вважаю себе кваліфікованим, щоб дати відповідь», – сказав Гуггер на зустрічі, коментуючи електронний лист Босворта. «Я просто хотів додати, що я не обов’язково згоден з усіма пунктами, які згадав Алекс. Я б точно сказав це також інакше. Я думаю, що брак ресурсів для роботи над специфікацією іноді інтерпретується як блокування речей, що не є нашою метою і, звичайно, не є нашою метою. Ми хочемо більше працювати над специфікацією, тому я сподіваюся, що ми вдосконалимось. Цікаво спостерігати, як це розчарування іноді виходить на поверхню. Дякуємо [Декеру та розробнику ACINQ Бастієну Тейнтуріє] за всю роботу, яку ви виконуєте над специфікацією. Мені теж потрібно забратися, тому я зроблю все можливе».

Рассел також прокоментував електронний лист Босворта в a Потік Twitter де він пообіцяв витрачати більше часу на полірування та маркетинг CLN, оскільки він сказав, що LND не впровадив Lightning першим і впровадив його не найкращим чином — хоча його спільнота чудова, додав він.

«Виявляється, вони вирішили, що можуть використовувати домінування в мережі для контролю протоколів, і процес специфікації не є «реальним», — написав він у цій темі. «Lightning Labs багато в чому заявляла про право власності на мережу Lightning: я не хотів називати їх публічно. Але блискавична мережа та громада заслуговують на краще».

Рассел не відповів на запитання Журнал Bitcoin посилаючись на цю тему. У Lightning Labs відмовилися від коментарів.

«Ще в 2016 році ми вийшли з трьох різних напрямків і вирішили об’єднати все те, що ми навчилися під час цього початкового етапу експериментів, в єдину специфікацію, щоб ми могли співпрацювати та взаємодіяти», – сказав Декер на зустрічі. «За цією експериментальною фазою завжди має супроводжуватися пропозиція, яка є неоглядною для всіх інших і може бути реалізована всіма іншими. Іноді ця офіційна пропозиція відсутня, і це заважає іншим реалізаціям давати власний огляд цієї функції. Цей огляд дуже важливий, щоб переконатися, що він працює для всіх і що це найкраще, що ми можемо зробити».

«Як випливає з назви Lightning Network, вона дуже отримує вигоду від мережевих ефектів, які ми отримуємо завдяки сумісності, здатності взаємодіяти та дозволяти всім реалізаціям працювати на рівних ігрових умовах», — додав він пізніше.

Реалізації доповнюють один одного, вони не конкурують

Окрім цієї дуже специфічної суперечки щодо процесу специфікації, реалізації Lightning в основному працюють окремо, а потім разом, щоб забезпечити найкращі та найбільш затребувані функції в мережі, забезпечуючи загальний кращий досвід роботи з користувачем.

Як результат, крок Blockstream проштовхнути CLN як відповідну специфікації, модульну та легку пропозицію є альтернативою для тих, хто зацікавлений у запуску реалізації вузла, який прагне повністю взаємодіяти з рештою мережі та забезпечує унікальний набір переваг тим, хто це робить.

Оскільки різні реалізації прагнуть стати найкращою версією та задовольнити конкретний варіант використання, досліджуючи власну цінну пропозицію, користувач в кінцевому підсумку отримує вигоду, оскільки з’являються все більші та кращі варіанти.

Часова мітка:

Більше від Журнал Bitcoin