- Bitcoin(BTC)$98,194.004.10%
- Ethereum(ETH)$3,353.549.02%
- Tether(USDT)$1.000.04%
- Solana(SOL)$254.858.36%
- BNB(BNB)$623.132.36%
- XRP(XRP)$1.188.11%
- Dogecoin(DOGE)$0.3869652.50%
- USDC(USDC)$1.000.11%
- Lido Staked Ether(STETH)$3,350.928.98%
- Cardano(ADA)$0.79-1.82%
Це оновлення може назавжди змінити розвиток біткойнів
«Libbitcoinkernel» — це далекосяжне, незавершене оновлення коду біткойна, яке не було помічено, але, ймовірно, полегшить розробникам експерименти зі змінами в біткойні.
Мета амбітного проекту — розплутати код Bitcoin Core — основного програмного забезпечення, що лежить в основі Bitcoin — таким чином, щоб більша частина «критичного для безпеки» коду була виділена з решти. Таким чином, він міг би відкрити шлях до нових удосконалень Bitcoin.
Розплутування цього коду спрощує життя розробників, і зміни, ймовірно, (зрештою) також вплинуть на користувачів. Чим швидші розробники можуть написати нові функції — конфіденційність, безпеку чи простіші у використанні інструменти гаманця — тим швидші користувачі зможуть скористатися ними.
Libbitcoinkernel має заплутану та езотеричну назву, оскільки ідея полягає в тому, що в кінцевому підсумку це буде бібліотека, яку зможуть використовувати розробники. Але навіть якщо він спеціально спрямований на розробників, він може мати ширші наслідки для всесвіту BTC.
«Мене справді спонукало присвятити час Libbitcoinkernel, коли я зрозумів, що це може бути технічним рішенням деяких соціальних перешкод Bitcoin Core», — сказав розробник Bitcoin Карл Донг. Розшифруватиt. Він був тим, хто спочатку очолював проект.
Ми також досягли значного прогресу на етапі 1 libbitcoinkernel, де багато критичних для консенсусу модулів тепер відокремлено від некритичних для консенсусу.🪢 https://t.co/GRSSqITJOt
Ця робота буде продовжена в @the_charlatan_, Корі Філдс та інші учасники спільноти. 3/п
— Карл Донг (@carl_dong) 31 серпня 2022 р
Донг з тих пір відступив назад, дозволяючи розробнику, який підтримує Spiral, Себастьяну Кунгу, досвідченому співавтору Bitcoin Core Корі Філдсу та іншим керувати. Кунг сказав Розшифрувати що він вважає, що Libbitcoinkernel є одним із найвпливовіших проектів, над якими зараз можна працювати в біткойнах.
Як уникнути «кошмарного сценарію»
Розуміння Libbitcoinkernel починається з розуміння «консенсусного» коду. Консенсусний код — це критично важливий для безпеки код у Bitcoin Core, основному базовому програмному забезпеченні вузла Bitcoin. Це код, який забезпечує узгодженість між усіма вузлами мережі.
Якщо половина мережі дотримується одних правил, а інша половина дотримується дещо інших правил, це може призвести до ненавмисного «хардфорку», коли мережа фактично розділяється на дві частини. «Це кошмарний сценарій, який не дає розробникам біткойн спати вночі», — сказав Донг в a відео презентація пояснюючи свою роботу над Libbitcoinkernel.
Проблема в тому, що код консенсусу переплутається з усім іншим кодом Bitcoin Core. Це неприємно для розробників, які намагаються внести зміни, тому що їм не завжди легко помітити, коли вони торкаються критично важливої для безпеки частини коду. І навіть якщо вони знають, може знадобитися деякий час, щоб обійти це.
Мета Libbitcoinkernel полягає в тому, щоб повільно витягнути весь цей код в окрему бібліотеку, щоб розробникам, які працюють над іншими розділами коду, не доводилося нервувати навколо нього.
Якщо розробники можуть витрачати менше часу на те, щоб переконатися, що вони випадково не вставляють міни в консенсусний код, вони зможуть витрачати більше часу на більш цікаві функції BTC або виправлення помилок.
«Це дозволяє розробникам проводити більш цілеспрямований огляд критично важливого консенсусного коду, менше турбуючись про решту Bitcoin Core. Це також дозволяє розробникам вперше говорити про тіло консенсусного коду як про чітко визначену сутність», — сказав Кунг. Розшифрувати.
«Яскрава» мета: кілька клієнтів Bitcoin
Існує також друга більш довгострокова мета, якої можна досягти за допомогою Libbitcoinkernel. Bitcoin Core — це основна реалізація коду Bitcoin. Користувачі запускають його для підключення до мережі Bitcoin і перевірки транзакцій.
Але що, якби були інші варіанти, окрім Bitcoin Core? Якби це був варіант, розробникам було б легше експериментувати з новими функціями. «Впровадження також можуть по-іншому розставляти пріоритети функцій, щоб краще обслуговувати цільових користувачів», — пояснив Донг.
По-друге, кілька реалізацій біткойна можуть підвищити стійкість мережі — якщо одна реалізація виявлена через помилку, не пов’язану з консенсусом, інша реалізація може не вплинути на цю саму помилку, зберігаючи біткойн недоторканим. Це може сприяти децентралізації біткойна, який є, ну, цілим механізмом BTC
Але кілька клієнтів легше сказати, ніж зробити. Без Libbitcoinkernel багато розробників BTC висловили занепокоєння щодо наявності кількох реалізацій. Аргументація повертається до заплутаного коду консенсусу. Скажімо, «Bitcoin B» намагається скопіювати код Bitcoin Core. Якщо розробники Bitcoin B зроблять єдиний помилковий крок, повторно впровадивши цей код, мережа може розділитися на дві частини в результаті ненавмисного хардфорку.
Libbitcoinkernel може це змінити. Витягнувши консенсус-код в окрему бібліотеку, Bitcoin Core і Bitcoin B можуть використовувати той самий консенсус-код. Більше немає потреби турбуватися про тонкі розбіжності консенсусу, які спричинять хаос між двома реалізаціями.
«Наявність бібліотеки консенсусу для багаторазового використання дозволить людям створювати альтернативні реалізації біткойнів, які раніше вважалися надто небезпечними через тепер усунені потенційні несумісності консенсусу», — сказав Донг.
Навчання на залишених спробах
Вилучення консенсусного коду з решти не є новою ідеєю. На початку історії біткойна частину консенсусного коду було вилучено, але проект залишився незавершеним. Потім спроба відродити проект у 2016 році, можливо, «розвалилася під тягарем власних амбіцій», як сказав Донг.
Маючи це на увазі, Донг і Кунг застосовували більш ітеративний підхід у вилученні консенсусного коду з решти, який «поважає сам обсяг роботи».
Завдяки цьому проект став багаторічним багатоетапним проектом, за яким можуть стежити надзвичайно допитливі читачі на GitHub, розробник з відкритим кодом Mecca. Розробники проекту надіслали десятки запитів на вилучення — запропоновані зміни в Bitcoin Core — і ще багато чого потрібно зробити.
Розробники очікують, що повний проект займе кілька циклів випуску. «Цей проект — марафон, — сказав Донг, — і до того ж довгий».