Design a site like this with WordPress.com
Для початку

Біткоїн – це час

Автор: Gigi
Переклад: Дмитро Харьков
Original piece: https://dergigi.com/2021/01/14/bitcoin-is-time/
Ліцензія: https://creativecommons.org/licenses/by-sa/4.0/
Lightning-донати (support future translations with Lightning): dkhrkv@ln.tips

Один світловий годинник на тлі неба

проголошував, що час не є ні правильним, ні неправильним.

Роберт Фрост, Знайомство з ніччю (1928)

Час все ще залишається для нас великою загадкою. Це не більше, ніж поняття, ми не знаємо, чи існує він взагалі…

Кліффорд Д. Сімак, Планета Шекспіра (1976)

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

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

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

Пристрої для вимірювання часу не раз трансформували цивілізації. Як зазначив Льюїс Мамфорд у 1934 році: “Годинник, а не парова машина, є ключовою машиною сучасної індустріальної епохи”.

Відстежуйте речі

Нехай дитина вчиться рахувати предмети, отримуючи таким чином поняття числа. Ці предмети для цілей лічби вважаються однаковими, і це можуть бути як окремі об’єкти, так і групи.

Девід Юджин Сміт, Викладання елементарної математики (1900)

Загалом, є два способи вести облік: фізичні токени та реєстри. Ви можете використовувати артефакти реального світу безпосередньо, наприклад, дати комусь морську мушлю, монету чи іншу матеріальну річ, або ж відтворити стан світу, записавши те, що сталося, на аркуші паперу.

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

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

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

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

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

Інформаційний світ не має такої властивості. Якщо ви хочете “перемістити” інформацію зі списку А до списку Б, ви повинні скопіювати її з А до Б. Іншого способу немає.

Інший спосіб подумати про це – з точки зору унікальності. Фізичні токени – це унікальні комбінації атомів, структуру яких нелегко відтворити. Чиста інформація не має такої властивості. Якщо ви можете прочитати інформацію, ви також можете ідеально її скопіювати. На практиці з цього випливає, що фізичні токени унікальні, а цифрові – ні. Я б навіть сказав, що “цифровий токен” – це неправильний термін.

Токен може представляти секретну інформацію, але він ніколи не буде представляти унікальну, єдину, неповторну інформацію, яку неможливо скопіювати.

Ця різниця у властивостях показує, що насправді не існує способу “передати” інформацію. Неможливо передати цифровий токен так само, як фізичний, оскільки ви ніколи не можете бути впевнені, чи не знищив первісний власник інформацію на своєму кінці. Цифрові токени, як і будь-яку інформацію, можна лише поширювати, як ідею.

… якщо у вас є яблуко і у мене є яблуко, і ми обміняємося яблуками – у кожного з нас залишиться лише одне яблуко. Але якщо у нас з вами є ідея, і ми обміняємося ідеями – у кожного з нас залишиться по дві ідеї.

Чарльз Ф. Бреннан (1949)

Фізичні токени – те, що ми називаємо фізичними активами на пред’явника, або “готівкою” – вільні від цієї дилеми. У реальному світі, якщо ви даєте мені монету, ваша монета зникає. Не існує магічної копії монети, і єдиний спосіб віддати її мені – це фізично передати її. Закони фізики не дозволяють вам витратити її двічі.

Хоча подвійні витрати існують і в нецифровій сфері – на думку спадає Джордж Паркер, шахрай, який “подвоїв” Бруклінський міст та інші пам’ятки, – вони вимагають ретельно продуманого обману та довірливих покупців. У цифровій сфері все інакше.

У цифровій сфері, оскільки ми завжди маємо справу з інформацією,подвійні витрати є невід’ємною проблемою. Кожен, хто коли-небудь копіював файл або користувався функцією копіювання і вставки, знає, що інформацію можна скопіювати бездоганно, і вона не прив’язана до носія, на якому вона зберігається. Наприклад, якщо у вас є цифрова фотографія, ви можете скопіювати її мільйон разів, зберегти кілька копій на USB-накопичувачі та надіслати тисячам різних людей. Ідеальні копії можливі, тому що інформація дозволяє бездоганно виправляти помилки, що виключає деградацію. До того ж, копіювання практично нічого не коштує, і не існує способу визначити, яким був оригінал.

Знову ж таки: коли мова йде про інформацію, копіювання – це все, що існує. Просто немає способу перемістити цифрову інформацію з А в Б. Інформація завжди копіюється з А в Б, і якщо процес копіювання пройшов успішно, оригінальна копія А видаляється. Ось чому проблема подвійних витрат є такою складною. За відсутності центрального органу не існує способу перемістити що-небудь з А в Б у спосіб, якому можна було б довіряти. Ви завжди повинні вірити, що оригінал буде видалено.

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

Через це використання цифрових “токенів” як грошей не може і ніколи не буде працювати. Оскільки надійність токенів зумовлена тим, що їх важко підробити завдяки унікальній фізичній структурі, ця перевага зникає в цифровій сфері. У цифровій сфері токенам не можна довіряти. Внаслідок внутрішніх властивостей інформації, єдиним життєздатним форматом для цифрових грошей є не токен, а реєстр – що підводить нас до проблеми часу.

Токени непідвладні часу, а реєстри – навпаки

Бо видиме – тимчасове, а невидиме – вічне.

Павло з Тарсу, Коринтянам 4:18b

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

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

Перехід від фізичних законів до створених людиною правил – це суть справи. Створені людиною правила можна перекрутити і порушити, а фізичні закони – ні. Наприклад, ви не можете просто “вигадати” фізичну золоту монету. Її треба викопати з землі. Але ви можете абсолютно точно вигадати золоту монету на папері. Для цього ви просто додаєте запис до бухгалтерської книги і даєте собі пару монет. Або, у випадку з центральними банками, просто додати пару трильйонів кількома натисканнями клавіш на комп’ютері. (Вигадливі фінансисти називають це “перезаставою”, “дробовим резервуванням” або “кількісним пом’якшенням” – але не обманюйте себе, це те саме: вигадування грошей).

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

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

Різниця між токенами та грошима підкреслює необхідність відстежувати час. У фізичному світі монети – це позачасові артефакти, які можна обмінювати без нагляду. У цифровому світі випуск монет вимагає позначки часу.

Централізований випуск монет

Час: чудовий гравірувальник, або гумка.

Яхія Лабабіді (нар. 1973)

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

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

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

Сатоші Накамото (2009)

Варто зазначити, що Сатоші не вдалося зробити інформацію неможливою для копіювання. Кожна частина біткоїна – його вихідний код, реєстр, ваш приватний ключ – може бути скопійована. Все це можна дублювати і підробляти. Однак Сатоші вдалося побудувати систему, яка робить копії, що порушують правила, повністю і абсолютно марними. Мережа Біткоїн виконує складний танець, щоб вирішити, які копії корисні, а які ні, і саме цей танець привносить дефіцит у цифрову сферу. І як у кожному танці, для диктування ритму потрібне часове мірило, що диктує ритм.

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

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

Григорій Трубецькой (2018)

Децентралізований час

Час все змінює.

Есхіл (525 р. до н.е. – 456 р. до н.е.)

Час і порядок мають дуже тісний зв’язок. Як зазначив Леслі Лампорт у своїй роботі 1978 року “Час, годинник і впорядкування подій у розподіленій системі” (Time, Clocks, and the Ordering of Events in a Distributed System): “Поняття часу є фундаментальним для нашого способу мислення. Воно походить від більш базової концепції порядку, в якому відбуваються події”. За відсутності центральної точки координації інтуїтивно зрозумілі поняття “до”, “після” і “одночасно” руйнуються. За словами Лампорта: “концепція “до” визначає інваріантне часткове впорядкування подій у розподіленій багатопроцесорній системі”.

Сформулюю по-іншому: Хто має відповідати за час, якщо призначити когось відповідальним не можна? Як можна мати надійний годинник, якщо немає центральної системи відліку?

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

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

Хто там? Тук-тук.

Асинхронний жарт

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

Швейцарії, ви – у Нью-Йорку, а ваш бізнес-партнер – у Сіднеї. Для вас сьогодні 3 січня, і ви насолоджуєтеся прекрасним недільним вечором у своєму готелі. Для неї вже ранок понеділка, і вона вирішує купити сніданок, використовуючи дебетову картку з вашого спільного банківського рахунку. Вартість – $27. Доступний баланс – $615. Місцевий час – 8:21 ранку.

І ось ви обоє в один і той самий момент проводите карткою по екрану. Що станеться? (Шановні фізики, прошу вибачити за використання слова “в один і той самий момент” – ми поки що ігноруватимемо релятивістські ефекти і той факт, що в нашому всесвіті не існує абсолютного часу. Ми також проігноруємо те, що поняття синхронних подій насправді не існує. Біткоїн і так досить складний!)

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

А що було б, якби не було банку? Хто б вирішував, хто був першим, хто провів пальцем? Що, якби це робили не тільки ви двоє, а сотні чи навіть тисячі людей, які координували свої дії? Що, якби ви не довіряли цим людям? Що, якщо хтось із цих людей намагається обдурити вас, наприклад, перевівши годинник назад, щоб виглядало так, ніби ви витратили гроші на кілька хвилин раніше?

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

Джакомо Зукко, Відкриваючи для себе Біткоїн (2019)

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

Зберігаючи час, блок за блоком

Слава часу в тому, що він заспокоює королів, що сперечаються, викриває брехню і виводить на світло правду,

ставить печатку часу на давніх речах, будить ранок і пильнує ніч, кривдить кривдника, поки він не стане правим;

Вільям Шекспір, “Зґвалтування Лукреції” (1594)

Усі годинники покладаються на періодичні процеси, які ми можемо назвати “цокання”. Звичне цокання дідусевого годинника – це, по суті, те саме, що й молекулярно-атомне дзижчання наших сучасних

кварцових та цезієвих годинників. Щось гойдається – або коливається – і ми просто рахуємо ці коливання, доки вони не складуть хвилину або секунду.

У великих маятникових годинниках ці коливання довгі і легко помітні. Для менших і більш спеціалізованих годинників потрібне спеціальне обладнання. Частота годинника – як часто він цокає – залежить від його призначення.

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

Кварцовий годинник

Атомний годинник цезію- 133

Біткоїн
32768 Гц

9 192 631 770 Гц

1 блок (від 0,00000192901 Гц* до ∞ Гц**)

маркування часу переносить нас з позачасового місця в ефірі у сферу цифрової історії.

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

Bayer, Haber, Stornetta (1992)

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

Нам потрібна система, щоб учасники могли домовитися про єдину історію […]. Рішення, яке ми пропонуємо, починається з сервера міток часу.

Сатоші Накамото (2009)

Цікаво, що всі елементи головоломки, які змушують біткоїн працювати, вже існували раніше. Ще в 1991 році Хабер і Сторнетта представили дві схеми, які “ускладнюють або унеможливлюють створення фальшивих міток часу”. Перша з них покладається на довірену третю сторону; друга, більш досконала схема “розподіленої довіри”, не покладається.

Автори навіть визначили проблеми, пов’язані з довірою до причинно- наслідкового ланцюга подій, і те, що буде потрібно для переписування історії. За їхніми словами, “єдиний можливий спосіб підміни – це підготувати фальшивий ланцюжок часових міток, достатньо довгий, щоб виснажити найбільш підозрілого суперника, якого можна очікувати”. Подібний вектор атаки існує сьогодні в біткоїні у вигляді атаки 51% (детальніше про це у наступному розділі).

Рік потому Байєр, Хабер та Сторнетта, спираючись на свою попередню роботу, запропонували використовувати дерева замість простих зв’язаних списків, щоб пов’язати події між собою. Те, що ми сьогодні знаємо як дерева Меркла, є просто ефективними структурами даних для створення хешу з декількох хешів у детермінованому вигляді. Для позначки часу це означає, що ви можете ефективно об’єднати кілька подій в одну “галочку”. У тій же статті автори пропонують вдосконалити модель розподіленої довіри, запроваджену в 1991 році, шляхом проведення повторюваного “турніру на першість світу” для визначення єдиного “переможця”, який широко публікує отриманий хеш десь у відкритому доступі, наприклад, в газеті. Звучить знайомо?

Як ми побачимо, виявляється, що газети – це ще й чудовий спосіб подумати про другу складову часу: непередбачуваність.

Причинність і непередбачуваність

Час – це не реальність [hupostasis], а поняття [noêma] або міра [metron]...

Антифонт Софіст, “Про істину” (III століття н.е.)

Хоча причинно-наслідковий зв’язок є важливим, його недостатньо. Нам також потрібна непередбачуваність, щоб час плив. У фізичній сфері ми спостерігаємо природні процеси, щоб описати плин часу. Ми

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

кажуть, не можна розшифрувати яйце.

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

Без цього збільшення ентропії ми могли б волею-неволею рухатися вперед і назад у часі. Послідовність чисел Фібоначчі, наприклад, є причинно-наслідковою, але не ентропійною. Кожне число в послідовності зумовлене двома числами, що стоять перед ним. У цьому сенсі це причинно-наслідковий ланцюжок. Однак, не варто називати час, оскільки він є цілком передбачуваним. Так само, як викрадач не може просто стояти перед календарем, який показує поточну дату, ми не можемо використовувати передбачувані процеси як доказ часу. Нам завжди доводиться покладатися на те, що не можна передбачити заздалегідь, наприклад, на першу сторінку сьогоднішньої газети.

Біткоїн покладається на два джерела непередбачуваності: транзакції та Proof-of-Work. Так само, як ніхто не може передбачити, як виглядатиме завтрашня газета, ніхто не може передбачити, як виглядатиме наступний блок Біткоїна. Ви не можете передбачити, які транзакції будуть включені в нього, тому що ви не можете передбачити, які транзакції будуть транслюватися в майбутньому. І, що більш важливо, ви не можете передбачити, хто знайде рішення поточної головоломки з доказом роботи і яким буде це рішення.

Однак, на відміну від газети викрадача, докази роботи фізично пов’язані з тим, що сталося безпосередньо. Це не просто запис події – це сама подія. Саме ймовірнісна безпосередність доказів виключає довіру з рівняння. Єдиний спосіб знайти достовірний доказ – це зробити багато припущень, а одне припущення займає небагато часу. Імовірнісна сума цих здогадок – це те, що створює ланцюжок, яким є Біткоїн.

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

Те, що інтуїтивно розуміє кожен викрадач, було чітко зазначено Байєром, Хабером і Сторнеттою в 1992 році: “Щоб встановити, що документ був створений після певного моменту часу, необхідно щось, що не можна було б передбачити заздалегідь”.

Саме поєднання причинності та непередбачуваності дозволяє створити штучне “зараз” у позачасовій цифровій сфері. Як зазначають Байєр, Хабер і Сторнетта у своїй роботі 1991 року: “послідовність клієнтів, які запитують мітки часу, і хеші, які вони надають, не можуть бути відомі заздалегідь. Отже, якщо ми включаємо біти з попередньої послідовності клієнтських запитів у підписаний сертифікат, то ми знаємо, що позначка часу з’явилася після цих запитів. […] Але вимога включати в сертифікат біти з попередніх документів також може бути використана для вирішення проблеми обмеження часу в іншому напрямку, тому що компанія, що займається маркуванням часу, не може випускати більш пізні сертифікати, якщо вона не має на руках поточного запиту”.

Всі шматочки пазлу вже були там. Сатоші вдалося зібрати їх разом таким чином, щоб вилучити з рівняння “компанію, що відмічає час”.

Доказ часу

Causa latet: vis est notissima.

Причина прихована, але результат відомий.

Овідій, Метаморфози, IV. 287 (8 Р. Н.Е.)

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

Для реалізації рішення знадобився такий геній, як Сатоші Накамото: “Щоб реалізувати розподілений сервер міток часу на одноранговій основі, нам потрібно буде використовувати систему підтвердження роботи, подібну до Hashcash Адама Бека”.

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

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

Пов’язуючи час

Я знаю, що це працює для мене.

Коли ми перетинаємо міст – палаючий міст – з полум’ям за спиною,

ми стаємо на передову.

Ти і я, крихітко, проти всього світу.

Кейт Буш, “Палаючий міст” (1985)

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

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

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

Складність майнінгу нового блоку Біткоїна регулюється, щоб гарантувати, що тонка ниточка між часом створення Біткоїна і нашим часом залишається недоторканою. Подібно до годинникового механізму, складність майнінгу змінюється кожні 2016 тиків. Мета цього коригування – утримати середній час між тиками на рівні десяти хвилин. Саме ці десять хвилин підтримують стабільний зв’язок між фізичним та інформаційним світом. Отже, для коригування часу Біткоїн-годинника потрібне людське відчуття часу. Суто блокове коригування не спрацює, оскільки воно буде повністю відірване від нашого людського світу, а вся мета коригування полягає в тому, щоб зупинити нас, геніальних людей, від пошуку блоків занадто швидко (або занадто повільно).

Як показав нам Ейнштейн, час не є статичною річчю. Не існує такого поняття, як універсальний час, на який ми могли б покластися. Час відносний, і одночасності не існує. Цей факт сам по собі робить всі часові позначки – особливо на великих відстанях – за своєю суттю ненадійними, навіть без протиборчих акторів. (До речі, саме тому часові мітки супутників GPS доводиться постійно коригувати).

Для Біткоїна той факт, що наші людські часові мітки неточні, не має великого значення. Також не має значення, що у нас немає абсолютної системи відліку. Вони повинні бути достатньо точними лише для того, щоб обчислити певне середнє значення для 2016 блоків. Щоб гарантувати це, часова мітка “реальності” блоку приймається лише в тому випадку, якщо вона відповідає двом критеріям.

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

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

Регулювання складності є дуже важливим, оскільки без нього внутрішній годинник Біткоїна йшов би все швидше і швидше, оскільки до мережі приєднується все більше майнерів або підвищується ефективність майнінгових пристроїв. Ми б швидко зіткнулися з проблемою координації, яку Біткоїн намагається вирішити. Як тільки час блоку впаде нижче певного порогу, скажімо, 50 мілісекунд, домовитися про спільний стан буде неможливо, навіть теоретично. Світлу потрібно близько 66 мілісекунд, щоб подорожувати з одного кінця Землі до іншого. Таким чином, навіть якби наші комп’ютери і маршрутизатори були досконалими, ми б повернулися до початкової точки: маючи дві події, було б марно говорити, яка подія сталася раніше, а яка пізніше. Без періодичного коригування тиків біткоїна ми б зіткнулися з безнадійною проблемою вирішення проблеми координації швидше, ніж швидкість світла. Час також лежить в основі проблеми криптографічної нестабільності, яка була описана в Розділі 1. Криптографія працює через асиметрію в часі: потрібно мало часу, щоб побудувати криптографічну стіну, і багато часу, щоб її зламати – якщо у вас немає ключа.

Таким чином, у деякому сенсі, доказ роботи – і пов’язане з ним регулювання складності – штучно уповільнює час, принаймні, з точки зору мережі Біткоїн. Іншими словами: Біткоїн забезпечує внутрішній ритм, низька частота якого забезпечує достатній буфер для затримки комунікацій між одноранговими учасниками. Кожні 2016 блоків внутрішній годинник Біткоїна перенастроюється, так що в середньому кожні 10 хвилин буде знаходитись лише один дійсний блок.

BitCoin v0.01 ALPHA (2009)

Надпись: Важко переоцінити, наскільки це елегантне рішення. Коли ви можете створити власне визначення часу, розшифрувати, що було раніше, а що пізніше, стає тривіальною справою. У свою чергу, домовитися про те, що сталося, в якому порядку, і, відповідно, хто кому що винен, також стає тривіальним.
Регулювання складності гарантує, що цокання внутрішнього метронома Біткоїна буде дещо постійним. Це диригент біткоїн-оркестру. Це те, що підтримує життя музики.
Але чому ми можемо покладатися на роботу в першу чергу? Відповідь потрійна. Ми можемо покладатися на неї, тому що обчислення вимагають роботи, робота вимагає часу, а робота, про яку йде мова – вгадування випадкових чисел – не може бути виконана ефективно.

Імовірнісний час

Імовірнісний час

Час безперервно розгалужується на незліченну кількість майбутніх.

Хорхе Луїс Борхес, “Сад розгалужених стежок” (1941)

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

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

кожного разу, коли ви чекаєте на блок біткоїна, ймовірність того, що він буде знайдений в цю секунду, становить ~0,16%. При цьому не має

значення, коли був знайдений останній блок. Приблизний час очікування наступного блоку завжди однаковий: ~10 хвилин.

Звідси випливає, що кожне окреме цокання цього годинника є непередбачуваним. Порівняно з нашим людським годинником, цей годинник виглядає спонтанним і неточним. Це не має значення, як зазначає Григорій Трубецькой: “Неважливо, що цей годинник неточний. Важливо, що це однаковий годинник для всіх і що стан ланцюжка можна однозначно прив’язати до тиків цього годинника”. Годинник Біткоїна може бути імовірнісним, але він не ілюзорний.

Час – це ілюзія, а обідній час – удвічі.

Дуглас Адамс (1979)

Однак, на даний момент Біткоїн може бути абсолютно ілюзією.

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

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

Консенсус Накамото просто стверджує, що правильну історію можна знайти в найважчому ланцюжку, тобто в ланцюжку з найбільшою кількістю доказів роботи, вбудованих в нього. Таким чином, якщо у нас є дві історії A і B, одні майнери намагатимуться відштовхуватися від історії A, інші – від історії B. Як тільки один з них знаходить наступний дійсний блок, інша група запрограмована визнати, що вони були на неправильному боці історії, і переключитися на найважчий ланцюжок – ланцюжок, який за визначенням відображає те, що насправді відбулося. У Біткоїні історію дійсно пишуть переможці.

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

Сатоші Накамото (2009)

У цьому простому твердженні криється секрет проблеми розподіленої координації. Саме так Сатоші вирішив проблему “одночасного платежу”, з якою раніше стикалися наші фіктивні бізнес-партнери. Він вирішив її раз і назавжди, до біса релятивістські ефекти!

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

Минуле – блоки, поховані під кінцем ланцюга – завжди більш визначене.

Чим глибше розуміння, тим далі в минуле треба заглиблюватися.

Гордон Кларк, Християнський погляд на людей і речі, с. 58. (1951)

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

Тік-так, тік-так, тік-так – котра година?

Тік-так, тік-так, тік-так… закінчується на c619.

Ти впевнена, що все гаразд? Ми, мабуть, запізнилися?

Абсолютні значення не мають значення: перед дев’ятою настає восьма. Годинник не є точним, він іноді йде навпаки.

Точний час передбачає центр; ось корінь цього прокляття! Але

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

Кумедний віршик про Біткоїн і час (2020)

Висновки

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

Хорхе Чам та Деніел Вайтсон: Ми не маємо уявлення: Путівник по невідомому Всесвіту, с. 117 – 118 (2017)

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

Відстеження часу вимагає узгодження “зараз” – моменту в часі, який назавжди пов’язує усталене минуле з невизначеним майбутнім. У біткоїні це “зараз” є вершиною найважчого ланцюжка доказів виконаної роботи.

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

Розглядаючи біткоїн крізь призму часу, слід зрозуміти, що “ланцюжок блоків” – структура даних, яка причинно-наслідково пов’язує кілька подій разом – не є головним нововведенням. Це навіть не нова ідея, як видно з вивчення літератури про мітки часу в минулому.

Блокчейн – це ланцюжок блоків.

Пітер Тодд

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

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

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


Напишіть відгук

Заповніть поля нижче або авторизуйтесь клікнувши по іконці

Лого WordPress.com

Ви коментуєте, використовуючи свій обліковий запис WordPress.com. Log Out /  Змінити )

Twitter picture

Ви коментуєте, використовуючи свій обліковий запис Twitter. Log Out /  Змінити )

Facebook photo

Ви коментуєте, використовуючи свій обліковий запис Facebook. Log Out /  Змінити )

З’єднання з %s

%d блогерам подобається це: