Джерело: Журнал “Bitcoin”; Переклад: Ву Чжу, Золота Фінансова
Останнім часом роллапи стали центром масштабування BTC, ставши першим, хто дійсно «вкрав шоу» у Lighting Network, з точки зору більш широкої уваги. Роллапи призначені для того, щоб бути позаблокчейном рівня 2, який не обмежений обмеженнями ліквідності ядра мережі освітлення, тобто кінцевому користувачеві потрібен хтось, хто виділить (або «позичить») кошти заздалегідь, щоб отримати гроші, або проміжним маршрутом Нода потрібен баланс каналу для полегшення повного потоку суми платежу від відправника до одержувача.
Ці системи спочатку працювали на Ethereum та інших системах, що підтримують Повнота за Тюрінгом, але останнім часом увага переключилася на їх портативність на основі UTXO блокчейнів (наприклад, BTC). Ця стаття не має на меті обговорювати поточний стан реалізації на BTC, але розглядати функції ідеального Rollup, які люди довго переслідували, які залежать від функцій, які в даний момент не підтримуються BTC, тобто прямої здатності до перевірки ZKP на BTC.
Основна архітектура Roll виглядає так: окремий рахунок (UTXO в BTC) зберігає баланси всіх користувачів в Rollup. Цей UTXO містить зобов’язання у формі кореня Меркла дерева, яке містить всі поточні баланси рахунків в Rollup. Усі ці рахунки авторизуються за допомогою Відкритого ключа/Закритого ключа, тому щоб здійснити витрати поза блокчейном, користувачам все ще потрібно підписати деякий вміст за допомогою Секретного ключа. Ця частина структури дозволяє користувачам виходити в будь-який момент без дозволу, просто подаючи доказ транзакції, що їх рахунок є частиною дерева Меркла, і вони можуть односторонньо вийти з Rollup без дозволу оператора.
Оператор Rollup повинен включити ZKP в транзакцію, щоб оновити баланс рахунку у блокчейні merkle root під час завершення транзакції поза блокчейном, інакше транзакція буде недійсною, тому не може бути включена до Блокчейн. Це доказує, що люди можуть перевірити, чи всі зміни в рахунку поза блокчейном отримали відповідні дозволи власника рахунку, а також чи оператор не має злочинних намірів щодо оновлення балансу для крадіжки коштів користувача або нечесної перерозподілу їх іншим користувачам.
Проблема полягає в тому, що якщо на у блокчейні публікується лише корінь дерева Меркла, користувачі можуть переглядати й отримувати до нього доступ, то як вони зможуть розмістити свої гілки у дереві, щоб мати змогу виходити за межі за необхідності без дозволу?
Підходящий Rollup
У відповідному Rollup кожного разу, коли підтверджується нова угода поза блокчейном і станрахунок Rollup змінюється, інформація безпосередньо вставляється в ланцюжок блоків. Не вся дерево, це було б занадто абсурдно, а лише інформація, необхідна для відновлення дерева. У простій реалізації у Rollup буде містити витяг усіх існуючихрахунок з балансом, ірахунок буде додаватися тільки під час оновлення угод Rollup.
У більш високорівневій реалізації використовується різниця балансів рахунків. Це по суті є конспектом того, які рахунки збільшили або зменшили свої кошти під час оновлення. Це дозволяє кожній оновленні Rollup містити лише зміни балансу рахунків, які сталися. Потім користувач може просто просканувати ланцюжок і «обчислити» з початку Rollup поточний стан балансу рахунків, що дозволяє їм відновити дерево Меркла поточного балансу.
Таким чином можна зекономити значні витрати та простір в Блоку (і, отже, зекономити кошти), одночасно дозволяючи користувачам забезпечити інформацію, необхідну для одностороннього виходу. Згідно з правилами rollup, ці дані повинні бути включені в офіційний rollup, який надається користувачам за допомогою Блокчейн, тому що транзакції, які не містять резюме рахунку або різницю рахунків, вважаються недійсними.
Термін дії
Ще один спосіб вирішення проблеми доступності даних для вилучення користувачів - це розміщення даних в інших місцях поза Блокчейном. Це вносить деякі тонкі питання, оскільки rollup все ще потребує обов’язкового забезпечення доступності даних в інших місцях. Традиційно для цієї мети використовуються інші Блокчейни, спеціально розроблені як шар доступності даних для систем, як от rollup.
Це створює той самий потужний дилема забезпечення безпеки. Коли дані безпосередньо публікуються в BTCБлок ланцюг, Консенсус правила можуть гарантувати, що вони абсолютно правильні. Однак, коли вони публікуються в зовнішній системі, найкраще, що вони можуть зробити - це підтвердити SPV доказ, тобто дані вже були опубліковані в іншій системі.
Це потребує підтвердження того, що дані існують у блокчейні іншого учасника, це нарешті є питання оракул-машина. Блокчейн Біткойну не може повністю підтвердити нічого, що відбувається поза власним блоком блокчейну, найкраще, що він може зробити - це підтвердити ZKP. Однак ZKP не може підтвердити, що блок, що містить дані rollup, насправді був опублікований після його генерації. Він не може підтвердити, що зовнішня інформація дійсно є загальнодоступною для всіх.
Це відкрило двері для атаки затримки даних, а саме створення обіцянки щодо публікації даних і їх використання для просування rollup, але фактично дані недоступні. Це призводить до того, що користувачі не можуть вибрати кошти. Єдиний справжній вирішенням є повна залежність від системи, яка базується на цінності та структурі стимулювання, яка виходить за межі BTC.
Вагаючись між рухом вперед та відступом
Це створює складність для rollup. Коли мова йде про питання доступності даних, виникає фактично двовимірний вибір - розміщувати дані на блокчейні BTC або в іншому місці. Цей вибір має серйозний вплив на безпеку та суверенітет rollup, а також на його масштабованість.
З одного боку, використання BTC Блокчейну як шару доступності даних встановлює жорстку межу масштабованості для роллапу. Блокчейн має обмежений простір, що встановлює межу для кількості роллапів, які можуть бути одночасно наявними, а також загальної кількості транзакцій, які можуть бути оброблені поза блокчейном. Кожне оновлення роллапу потребує відповідного простору блоку, пропорційного кількості рахунків, що змінилися з останнього оновлення. Інформаційна теорія дозволяє тільки певну ступінь стиснення даних, тому немає більше можливостей для масштабування.
З іншого боку, використання різних шарів для досягнення доступності даних призведе до зняття жорсткого верхнього обмеження на масштабованість, але також виникнуть нові проблеми з безпекою та суверенітетом. У Rollup, який використовує BTC для досягнення доступності даних, стан Rollup не може змінитися, якщо дані, які користувач має витягнути, не автоматично публікуються на блокчейні. Використання Validiums це гарантія, що повністю залежить від здатності зовнішньої системи відстоювати обман та сховання даних.
Тепер будь-який Блок продюсер на системі доступності зовнішніх даних може захопити кошти користувачів BTCRollup, продукуючи Блок замість фактичного розповсюдження цього Блоку, щоб зробити дані доступними.
Тоді, якщо ми дійсно реалізуємо ідеальну реалізацію Rollup на BTC, що дозволить одностороннє зняття грошей користувачами, як це буде?
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
Bitcoin Magazine: З якими проблемами стикається Rollup?
Джерело: Журнал “Bitcoin”; Переклад: Ву Чжу, Золота Фінансова
Останнім часом роллапи стали центром масштабування BTC, ставши першим, хто дійсно «вкрав шоу» у Lighting Network, з точки зору більш широкої уваги. Роллапи призначені для того, щоб бути позаблокчейном рівня 2, який не обмежений обмеженнями ліквідності ядра мережі освітлення, тобто кінцевому користувачеві потрібен хтось, хто виділить (або «позичить») кошти заздалегідь, щоб отримати гроші, або проміжним маршрутом Нода потрібен баланс каналу для полегшення повного потоку суми платежу від відправника до одержувача.
Ці системи спочатку працювали на Ethereum та інших системах, що підтримують Повнота за Тюрінгом, але останнім часом увага переключилася на їх портативність на основі UTXO блокчейнів (наприклад, BTC). Ця стаття не має на меті обговорювати поточний стан реалізації на BTC, але розглядати функції ідеального Rollup, які люди довго переслідували, які залежать від функцій, які в даний момент не підтримуються BTC, тобто прямої здатності до перевірки ZKP на BTC.
Основна архітектура Roll виглядає так: окремий рахунок (UTXO в BTC) зберігає баланси всіх користувачів в Rollup. Цей UTXO містить зобов’язання у формі кореня Меркла дерева, яке містить всі поточні баланси рахунків в Rollup. Усі ці рахунки авторизуються за допомогою Відкритого ключа/Закритого ключа, тому щоб здійснити витрати поза блокчейном, користувачам все ще потрібно підписати деякий вміст за допомогою Секретного ключа. Ця частина структури дозволяє користувачам виходити в будь-який момент без дозволу, просто подаючи доказ транзакції, що їх рахунок є частиною дерева Меркла, і вони можуть односторонньо вийти з Rollup без дозволу оператора.
Оператор Rollup повинен включити ZKP в транзакцію, щоб оновити баланс рахунку у блокчейні merkle root під час завершення транзакції поза блокчейном, інакше транзакція буде недійсною, тому не може бути включена до Блокчейн. Це доказує, що люди можуть перевірити, чи всі зміни в рахунку поза блокчейном отримали відповідні дозволи власника рахунку, а також чи оператор не має злочинних намірів щодо оновлення балансу для крадіжки коштів користувача або нечесної перерозподілу їх іншим користувачам.
Проблема полягає в тому, що якщо на у блокчейні публікується лише корінь дерева Меркла, користувачі можуть переглядати й отримувати до нього доступ, то як вони зможуть розмістити свої гілки у дереві, щоб мати змогу виходити за межі за необхідності без дозволу?
Підходящий Rollup
У відповідному Rollup кожного разу, коли підтверджується нова угода поза блокчейном і станрахунок Rollup змінюється, інформація безпосередньо вставляється в ланцюжок блоків. Не вся дерево, це було б занадто абсурдно, а лише інформація, необхідна для відновлення дерева. У простій реалізації у Rollup буде містити витяг усіх існуючихрахунок з балансом, ірахунок буде додаватися тільки під час оновлення угод Rollup.
У більш високорівневій реалізації використовується різниця балансів рахунків. Це по суті є конспектом того, які рахунки збільшили або зменшили свої кошти під час оновлення. Це дозволяє кожній оновленні Rollup містити лише зміни балансу рахунків, які сталися. Потім користувач може просто просканувати ланцюжок і «обчислити» з початку Rollup поточний стан балансу рахунків, що дозволяє їм відновити дерево Меркла поточного балансу.
Таким чином можна зекономити значні витрати та простір в Блоку (і, отже, зекономити кошти), одночасно дозволяючи користувачам забезпечити інформацію, необхідну для одностороннього виходу. Згідно з правилами rollup, ці дані повинні бути включені в офіційний rollup, який надається користувачам за допомогою Блокчейн, тому що транзакції, які не містять резюме рахунку або різницю рахунків, вважаються недійсними.
Термін дії
Ще один спосіб вирішення проблеми доступності даних для вилучення користувачів - це розміщення даних в інших місцях поза Блокчейном. Це вносить деякі тонкі питання, оскільки rollup все ще потребує обов’язкового забезпечення доступності даних в інших місцях. Традиційно для цієї мети використовуються інші Блокчейни, спеціально розроблені як шар доступності даних для систем, як от rollup.
Це створює той самий потужний дилема забезпечення безпеки. Коли дані безпосередньо публікуються в BTCБлок ланцюг, Консенсус правила можуть гарантувати, що вони абсолютно правильні. Однак, коли вони публікуються в зовнішній системі, найкраще, що вони можуть зробити - це підтвердити SPV доказ, тобто дані вже були опубліковані в іншій системі.
Це потребує підтвердження того, що дані існують у блокчейні іншого учасника, це нарешті є питання оракул-машина. Блокчейн Біткойну не може повністю підтвердити нічого, що відбувається поза власним блоком блокчейну, найкраще, що він може зробити - це підтвердити ZKP. Однак ZKP не може підтвердити, що блок, що містить дані rollup, насправді був опублікований після його генерації. Він не може підтвердити, що зовнішня інформація дійсно є загальнодоступною для всіх.
Це відкрило двері для атаки затримки даних, а саме створення обіцянки щодо публікації даних і їх використання для просування rollup, але фактично дані недоступні. Це призводить до того, що користувачі не можуть вибрати кошти. Єдиний справжній вирішенням є повна залежність від системи, яка базується на цінності та структурі стимулювання, яка виходить за межі BTC.
Вагаючись між рухом вперед та відступом
Це створює складність для rollup. Коли мова йде про питання доступності даних, виникає фактично двовимірний вибір - розміщувати дані на блокчейні BTC або в іншому місці. Цей вибір має серйозний вплив на безпеку та суверенітет rollup, а також на його масштабованість.
З одного боку, використання BTC Блокчейну як шару доступності даних встановлює жорстку межу масштабованості для роллапу. Блокчейн має обмежений простір, що встановлює межу для кількості роллапів, які можуть бути одночасно наявними, а також загальної кількості транзакцій, які можуть бути оброблені поза блокчейном. Кожне оновлення роллапу потребує відповідного простору блоку, пропорційного кількості рахунків, що змінилися з останнього оновлення. Інформаційна теорія дозволяє тільки певну ступінь стиснення даних, тому немає більше можливостей для масштабування.
З іншого боку, використання різних шарів для досягнення доступності даних призведе до зняття жорсткого верхнього обмеження на масштабованість, але також виникнуть нові проблеми з безпекою та суверенітетом. У Rollup, який використовує BTC для досягнення доступності даних, стан Rollup не може змінитися, якщо дані, які користувач має витягнути, не автоматично публікуються на блокчейні. Використання Validiums це гарантія, що повністю залежить від здатності зовнішньої системи відстоювати обман та сховання даних.
Тепер будь-який Блок продюсер на системі доступності зовнішніх даних може захопити кошти користувачів BTCRollup, продукуючи Блок замість фактичного розповсюдження цього Блоку, щоб зробити дані доступними.
Тоді, якщо ми дійсно реалізуємо ідеальну реалізацію Rollup на BTC, що дозволить одностороннє зняття грошей користувачами, як це буде?