поза блокчейном розширення: від стан каналу до Lighting Network

Поглиблений аналіз розширення поза блокчейном

1. Необхідність розширення

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

Давайте спочатку загально визначимо децентралізацію, безпеку та масштабованість блокчейну:

  • Децентралізація: будь-хто може стати вузлом і брати участь у виробництві та верифікації блокчейн-системи, чим більше вузлів, тим вищий рівень децентралізації, що забезпечує, щоб мережа не потрапляла під контроль невеликої групи великих централізованих учасників.
  • Безпека: Чим вищі витрати на отримання контролю над системою блокчейн, тим вища безпека, отже, мережа може витримати атаки від більшої частини учасників.
  • Масштабованість: здатність блокчейну обробляти велику кількість транзакцій.

Перша значна жорстка розгалуження мережі Біткоїн виникла через проблему масштабування. З ростом кількості користувачів Біткоїн і обсягів транзакцій, мережа Біткоїн, з обмеженням у 1 МБ на кожен блок, почала стикатися з проблемами перевантаження; з 2015 року в спільноті Біткоїн існували розбіжності щодо проблеми масштабування: одна сторона, представлена Bitcoin ABC, підтримувала збільшення розміру блоку, тоді як інша сторона, представлена Bitcoin Core, вважала, що слід використовувати рішення Segwit для оптимізації структури основного ланцюга. 1 серпня 2017 року Bitcoin ABC запустила власну клієнтську систему, розроблену до 8 МБ, що призвело до появи першої значної жорсткої розгалуження в історії Біткоїн, а також до народження нової криптовалюти BCH.

Так само, мережа Ethereum також вибрала жертву частини масштабованості, щоб забезпечити безпеку та децентралізацію мережі; хоча мережа Ethereum не обмежує обсяг транзакцій, як це робить мережа Bitcoin шляхом обмеження розміру блоку, а замість цього фактично перетворюється на встановлення ліміту на плату за пальне для одного блоку, мета залишається тією ж – досягнення trustless consensus та забезпечення широкого розподілу вузлів (, незалежно від того, чи скасують або підвищать ліміт, це призведе до усунення багатьох менших вузлів з недостатньою пропускною здатністю, пам'яттю та обчислювальною потужністю ).

Від CryptoKitties 2017 року, через літо DeFi, до пізніших застосувань на базі GameFi та NFT, ринок постійно зростає в потребі до пропускної здатності, але навіть Тьюрінгова Ethereum може обробляти лише 15~45 транзакцій на секунду (TPS), що призводить до збільшення вартості транзакцій, затримок у розрахунках, більшість Dapps важко витримують витрати на експлуатацію, а вся мережа стає повільною та дорогою для користувачів, проблема масштабування блокчейну потребує термінового вирішення. Ідеальним варіантом масштабування є: підвищення швидкості транзакцій блокчейн-мережі (коротший час остаточності) та пропускної здатності (вищий TPS) без компромісів у децентралізації та безпеці.

2. Категорії планів розширення

Ми ділимо плани розширення на дві великі категорії: розширення в межах блокчейну та розширення поза блокчейном, керуючись критерієм "чи змінюється один рівень основної мережі".

2.1 розширення в ланцюгу

Основна концепція: рішення, яке досягає ефекту масштабування шляхом зміни одного з протоколів основної мережі, наразі основним рішенням є шардінг.

Розширення на ланцюгу має кілька варіантів, у цій статті не буде їх розкрито, нижче коротко наведено два варіанти:

  • Варіант перший - це розширення простору блоку, тобто збільшення кількості транзакцій, що упаковуються в кожен блок, але це підвищить вимоги до обладнання високопродуктивних вузлів, підвищить бар'єр для приєднання вузлів та знизить рівень "децентралізації".
  • Варіант два - це шардінг, який ділить бухгалтерський облік блокчейну на кілька частин, більше не кожен вузол бере участь у всіх записах, а різні шардінги, тобто різні вузли, відповідають за різні записи, паралельні обчислення можуть одночасно обробляти кілька транзакцій; це може знизити навантаження на обчислення вузлів та поріг входження, підвищити швидкість обробки транзакцій та рівень децентралізації; але це означає, що обчислювальна потужність по всій мережі розподіляється, що знижує "безпеку" всієї мережі.

Зміна коду основного протоколу мережі може призвести до непередбачуваних негативних наслідків, оскільки будь-яка незначна вразливість безпеки на базовому рівні серйозно загрожує безпеці всієї мережі; мережа може бути змушена до розгалуження або перерви в ремонті оновлення. Наприклад, інцидент з інфляційною вразливістю Zcash у 2018 році: код Zcash був модифікований на основі версії 0.11.2 коду Bitcoin, у 2018 році один інженер виявив у його базовому коді небезпечну вразливість, а саме, що токени можуть бути безмежно випущені, і команда витратила 8 місяців на таємне усунення проблеми; інцидент було розкрито лише після виправлення вразливості.

2.2 поза блокчейном розширення

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

поза блокчейном розширення можна додатково поділити на Layer2 та інші рішення:

! Глибокий звіт про дослідження на 10 000 слів: комплексний аналіз офчейн-експансії

3. Поза блокчейном розширення плану

3.1 Державні канали

3.1.1 Огляд

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

Стан каналу є простим P2P протоколом, що підходить для "заснованих на раундах застосунків", наприклад, гри в шахи для двох. Кожен канал керується мультипідписним смарт-контрактом, що працює в основній мережі, цей контракт контролює активи, що вносяться в канал, перевіряє оновлення статусу та арбітражує суперечки між учасниками ( на основі доказів шахрайства з підписом і часовою міткою ). Після розгортання контракту в блокчейн-мережі учасники вносять кошти та блокують їх, після підписання обома сторонами канал офіційно відкривається. Канал дозволяє учасникам здійснювати необмежену кількість безкоштовних транзакцій поза блокчейном (, за умови, що їхні чисті перекази не перевищують загальну суму внесених токенів ). Учасники по черзі надсилають оновлення статусу один одному, чекаючи підтвердження підпису іншої сторони. Як тільки інша сторона підтверджує підписом, це оновлення статусу вважається завершеним. Зазвичай, оновлення статусу, погоджені обома сторонами, не завантажуються в основну мережу, лише в разі виникнення спору або закриття каналу вдаються до підтвердження основної мережі. Коли потрібно закрити канал, будь-який учасник може подати запит на транзакцію в основній мережі, якщо запит на вихід отримує одноголосне підтвердження підписом, то виконується негайно в ланцюгу, тобто смарт-контракт розподіляє залишкові заблоковані кошти відповідно до залишків кожного учасника в остаточному стані каналу; якщо інші учасники не підтвердили підписом, то всім необхідно дочекатися закінчення "періоду виклику", щоб отримати залишкові кошти.

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

3.1.2 Часова лінія

  • У 2015/02, Джозеф Пун і Таддеус Дріджа опублікували проект білого паперу мережі Lightning.
  • 2015/11, Джефф Коулман вперше систематично узагальнив концепцію State Channel, запропонувавши, що Payment Channel біткоїна є підвипадком концепції State Channel.
  • 2016/01, Joseph Poon та Thaddeus Dryja офіційно опублікували білий документ «The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments», в якому представлено рішення для масштабування біткойн-мережі Payment Channel( платіжний канал), яке використовується лише для обробки переказів та платежів у біткойн-мережі.
  • 2017/11, перша специфікація дизайну State Channel на основі фреймворку Payment Channel, Sprites, була запропонована.
  • 2018/06, Counterfactual запропонував дуже детальний дизайн Generalized State Channels, це перший повністю пов'язаний з каналами стану дизайн.
  • У жовтні 2018 року в статті «Узагальнені мережі державних каналів» були запропоновані концепції державних канальних мереж і віртуальних каналів.
  • 2019/02, концепція каналів стану була розширена до N-Party Channels, Nitro є першим протоколом, створеним на основі цієї ідеї.
  • 2019/10, Pisa для вирішення проблеми необхідності постійного онлайн-стану всіх учасників розширив концепцію Watchtowers.
  • 2020/03, Hydra запропонував швидкі ізоморфні канали.

3.1.3 Технічні принципи

Рисунок 1 демонструє традиційний робочий процес на ланцюзі: Аліса та Боб взаємодіють з розгорнутим в основній мережі смарт-контрактом, користувачі змінюють стан смарт-контракту, надсилаючи транзакції на ланцюг. Недоліком є те, що це викликає обговорені вище проблеми з часом та витратами.

! Звіт про глибоке дослідження на 10 000 слів: комплексний аналіз офчейн-експансії

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

  • Перший крок, Аліса та Боб взаємодіють, вносячи кошти з їхніх особистих EOA на адрес контракту поза блокчейном (, 1,2), ці кошти блокуються в контракті і повертаються користувачу лише після закриття каналу; після підтвердження підписів, статус-канал між ними офіційно відкривається.
  • Другий крок, Аліса та Боб теоретично можуть проводити необмежену кількість угод поза блокчейном ( синя пунктирна лінія ), учасники взаємодіють один з одним через зашифровані підписані повідомлення (, а не спілкуються з мережею блокчейну ). Обидва користувачі повинні підписати кожну угоду, щоб запобігти подвійним витратам. Через ці повідомлення вони пропонують оновлення статусу своїх рахунків та приймають оновлення статусу, запропоновані іншою стороною.
  • Третій крок, якщо Аліса хоче закрити канал і завершити транзакцію з Бобом, Аліса повинна подати остаточний стан свого рахунку ( для взаємодії 3) до контракту. Якщо Боб підпише і погодиться, контракт звільнить заблоковані кошти відповідному користувачу ( для взаємодії 4,5) згідно з остаточним станом. Якщо Боб не відповість на підпис, контракт звільнить заблоковані кошти відповідному користувачу по завершенні періоду виклику.

Тисячослівний звіт: всебічний аналіз поза блокчейном розширення

Рисунок 3 показує робочий процес каналу стану в песимістичному сценарії: спочатку двоє учасників вносять кошти ( взаємодія 1, 2), а потім починають обмінюватися оновленнями стану ( синя пунктирна лінія ). Припустимо, у якийсь момент часу Боб не відповідає на підписане оновлення стану, надіслане Алісою ( взаємодія 3), в цей момент Аліса може ініціювати виклик, подавши до контракту своє останнє дійсне стан ( взаємодія 4), яке також містить підпис Боба, що підтверджує, що остання транзакція була схвалена Бобом, а фінальний стан був підтверджений Бобом. Потім контракт дозволяє Бобу протягом певного часу відповісти, подавши наступний стан до контракту; якщо Боб відповідає, то обидва можуть продовжувати торгівлю в каналі стану; якщо Боб не відповідає протягом цього часу, контракт автоматично закриває канал стану і повертає кошти Алісі ( взаємодія 5).

! Глибокий звіт про дослідження на 10 000 слів: комплексний аналіз масштабування поза мережею

3.1.4 Плюси та мінуси

Переваги:

  • Миттєвість: поза блокчейном транзакції можуть бути підтверджені миттєво, без необхідності чекати підтвердження блоку
  • Висока пропускна спроможність: необхідно взаємодіяти з основною мережею лише під час відкриття та закриття каналу, що значно підвищує пропускну спроможність
  • Низька вартість: поза блокчейном транзакції не потребують сплати комісії майнерам, лише під час відкриття та закриття каналу потрібно сплатити невелику суму.
  • Приватність: поза блокчейном вміст угод не буде занесений в блокчейн, лише кінцевий стан буде поданий до основної мережі

Недоліки:

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

3.1.5 Застосування

Біткойн-мережа блискавки:

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

Переглянути оригінал
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
SignatureAnxietyvip
· 07-10 17:02
Кожен має поза блокчейном. Це цікаво?
Переглянути оригіналвідповісти на0
ReverseFOMOguyvip
· 07-09 23:05
Трикутна проблема не така проста для розв'язання, рано чи пізно потрібно буде йти на компроміс з розширенням.
Переглянути оригіналвідповісти на0
GasFeeDodgervip
· 07-08 08:47
Знову обговорюють трикутникову проблему. Хворі, що ли?
Переглянути оригіналвідповісти на0
EntryPositionAnalystvip
· 07-08 08:43
Відпустіть це, навіщо ще боротися? Нечестива Трійця, ви розумієте?
Переглянути оригіналвідповісти на0
ChainSauceMastervip
· 07-08 08:42
Ти говорив довго, хто ж розуміє?
Переглянути оригіналвідповісти на0
  • Закріпити