Блокчейн — рішення неіснуючої проблеми. База, не система
Переклад: Олексій Іванов
Початок тут.
А ще існує проблема забруднення довкілля. Здавалося б, до чого тут екологія, адже йдеться про цифрові монети? Так, це досить дивно, але вирішення всіх цих складних задач потребує великої кількості енергії. Настільки великої, що дві найбільші криптовалюти (bitcoin та ethereum) використовують стільки ж енергії, скільки уся Австрія. Виконання платежу в системі Visa потребує 0,002 кВт/год, водночас такий самий платіж у біткойні коштуватиме 906 кВт/год — різниця у мільйон разів, а економії вистачить, щоб покрити потреби домогосподарства з двох осіб протягом трьох годин.
Екологічні проблеми лише зростатимуть. Майнери вкладатимуть більше ресурсів у розв’язання задач (тобто, розмістять більше серверів у темних печерах на Алясці), задачі ставатимуть складнішими, розв’язання вимагатиме більше електроенергії. Для підтримки того самого числа транзакцій, яке ми маємо зараз, необхідна нескінченна гонка озброєнь, що потребуватиме дедалі більше енергії.
Навіщо це все? Зрештою, це дуже важливе питання: яку проблему вдається вирішити завдяки блокчейну? Так, при використанні біткойну банк не зможе просто так прибрати гроші з вашого рахунку. Але чи трапляється таке в реальному житті? Я ніколи не чув, щоб банк просто так обнулив якийсь рахунок. Якби щось таке сталось, на нього одразу ж подали б до суду, який би завершився відкликанням ліцензії. Технічно, це можливо, але юридично — це смертний вирок банку.
Звісно, шахраї трапляються всюди, люди завжди брешуть та маніпулюють. Проте найбільше проблем створюють постачальники даних1 (наприклад, хтось може продавати собачатину під виглядом курятини), а не адміністратори (наприклад, банки, що списують гроші з рахунків).
Деякі люди пропонують перевести на блокчейн реєстр прав на землю, тому що це мало б вирішити купу проблем у країнах з поширеною корупцією. Візьмемо для прикладу Грецію, там із кожних п’яти будинків один незареєстрований. Чому їх не реєструють? Тому що греки починають будівництво просто так, а вже потім виявляють, що будинок не внесли до реєстру.
От тільки блокчейн нічого з цим зробити не зможе. Це просто база даних — а не якась суперсистема, що може здійснювати всі можливі перевірки та зупиняти нелегальні будівництва. Для блокчейну діє те саме правило, що й для інших баз даних: якщо туди записувати якісь нісенітниці, на виході отримаємо також нісенітниці.
Колумніст Bloomberg Метт Левін написав про це так: «Стійкий до змін, захищений за допомогою криптографії запис у блокчейні свідчить про те, що я маю десять тонн алюмінію на складі. Однак якщо я винесу весь цей алюміній через задні двері складу, банк нічого з цим зробити не зможе».
Дані мають відповідати реальності, але іноді так виходить, що реальність змінюється, а дані лишаються тими самими. Ось чому нам потрібні послуги нотаріусів, супервайзерів та адвокатів — всіх тих сумних нецікавих людей, яких блокчейн має замінити2.
Дуже мало блокчейну в реальній справі
Повернімося до передового міста Зюйдхорн, хіба воно не було прикладом успішного впровадження блокчейну?
Ну, не зовсім. Я зайшов на гітхаб (сайт, на якому програмісти публікують написаний код) і виявив, що насправді у ПЗ, призначеному для розподілу дитячої допомоги, дуже мало використовується блокчейн. Там лише один майнер, не приєднаний до інтернету, на сервері, що займається внутрішніми дослідженнями. Натомість сім’ї, які отримують допомогу, та власники магазинів використовують дуже просту програму, яка взаємодіє з досить простими базами даних.
Я зателефонував Maarten Velthuijs:
— Знаєте, я тут глянув, виходить, що ваша програма взагалі-то не використовує блокчейн.
— Так, дійсно, — відповів Мартин.
— Але хіба це не дивно, ви виграли всі оті нагороди, а тепер не використовуєте блокчейн?
— Так, це дивно.
— Як таке можливо?
— Я не знаю. Ми намагались розказати людям, але воно якось не зайшло... Тепер от, коли ви подзвонили...
То де ж блокчейн?
Зюйдхорн не став винятком. При детальному аналізі стає зрозуміло, що багато «експериментів із блокчейном» насправді лише трохи використовують цей самий блокчейн.
Візьмемо для прикладу програму Mijn Zorg Log — ще один голландський експеримент у галузі допомоги новонародженим, що також отримав багато нагород. Будь-який громадянин Нідерландів після народження дитини може отримати допомогу, і так само, як і в Зюйдхорні, процес отримання був бюрократичним кошмаром. Однак зараз там діє додаток для смартфону, який показує, скільки ви отримали і що ще можна купити.
Останній звіт показує, що Mijn Zorg Log не використовує жодну з особливостей, специфічних саме для блокчейну. Вони просто призначили певних представників третьої сторони ексклюзивними майнерами: такі майнери можуть не заносити до звіту продаж допомоги3. Зазначається, що так краще для довкілля, а також більше відповідності законодавству щодо захисту приватності. Проте, хіба суть блокчейну не в тому, щоб обходитись без усяких там довірених третіх сторін? Навіщо тоді воно все?
Як на мене, вони будують нормальну таку базу даних, просто дуже неефективну. Варто лише продертися через купу жаргонізмів, і стає ясно, що звіт описує роботу з нудною базою даних. У них є розподілений реєстр (те саме, що розподілена БД), смарт-контракти (це просто такий алгоритм) та перевірка ідентичності (тобто, право скасування певних записів до БД).
Таким чином, єдиний елемент системи, який хоч якось стосується блокчейну, це дерева Меркла — досить складна штука4, яка дозволяє пов’язати дані відповідно до певних перевірок. Це дійсно гарна технологія, до якої не виникає запитань. Просто дерева Меркла було винайдено у 1979-му, і відтоді їх використовують повсюди. Наприклад, у тому самому Git — системі контролю версій, яку зараз використовує кожен програміст. Там немає нічого унікального для блокчейну.
Попит на магію існує, і дуже значний
Як я й казав на початку статті, ця подорож нікуди не приводить.
Під час написання статті я вирішив поговорити з одним із наших розробників. У нас тут є кілька людей, що працюють поряд з офісом редакції. Цей розробник, Tim Strijdhorst, небагато знав про блокчейн, але натомість він розказав мені дещо інше.
«Я працюю з кодом, а люди дивляться на мене, як на чарівника», — сказав він з гордістю. Це відчуття було для нього досить дивним: яка там може бути магія? Половину свого часу він тупить, дивлячись в екран, прагнучи зрозуміти, що саме пішло не так у купі PHP скриптів, написаних невідомо коли.
Тім намагався сказати, що IT-технології насправді зроблені так само, як і все інше у цьому світі — дуже коряво.
Виявляється, що цю істину ми, випадкові перехожі та люди з-поза меж технічного світу, вперто відмовляємось помічати. Чиновники та менеджери думають, що якими б серйозними не були б проблеми, їх точно можна буде вирішити за допомогою технології, про яку вони вперше почули під час яскравої презентації у PowerPoint. Як воно працюватиме? Нікому не цікаво, головне, щоб прибуток був5.
На ринку існує значний попит на магію. Немає значення, на що саме: блокчейн, big data, хмарні обчислення, штучний інтелект чи інші розумні слова.
Втім, навіть таке магічне мислення час від часу буває корисним. Повернімося до згаданого вище експерименту з розподілом допомоги новонародженим: він закінчився нічим. Однак, Hugo de Kaat зі страхової компанії VGZ зазначив, що «Facet — найбільший провайдер ПЗ у своїй сфері, мобілізувався завдяки експерименту». Зараз ця компанія збирається написати подібний додаток, але за допомогою традиційних технологій, без всякого зайвого.
Інший герой нашої статті, Maarten Velthuijs, сам визнає, що навряд чи зміг би написати чудову програму для розподілу допомоги дітям, якби не блокчейн. Але при цьому у нього немає фанатичного ставлення до цієї технології: «Розумієте, поки людство навчилось літати, дослідникам довелось зробити багато невдалих спроб. Я бачив на ютубі відео, у якому хтось пробував стрибнути з Ейфелевої вежі з саморобним парашутом. Ця людина розбилась, але такі жертви теж рухають науку».
Тобто якби Мартину вдалось втілити ідею з блокчейном, це було б дуже круто. Але він не використав блокчейн, і це теж досить непогано. Принаймні, він тепер має досвід щодо того, з чим можна працювати, а з чим не дуже. Та й місто таки отримало непогану програму.
Можливо, найбільшим досягненням блокчейну слід вважати саме створену навколо нього інформаційну кампанію — вона вийшла хоч і дещо дорогою, але все одно корисною. Гасло «впорядкувати справи в офісі» рідко зустрічається на нарадах, на відміну від термінів «блокчейн» та «інновація».
Завдяки хайпу Мартин отримав можливість розробити свою програму, а провайдери допомоги новонародженим почали координувати свої дії один з одним. Велика кількість приватних компаній та державних установ доклали зусилля для оптимізації процедур обліку.
Так, у процесі довелося дати ряд диких, нездійсненних обіцянок, але в результаті вдалось зацікавити адміністраторів у підвищенні ефективності нудних процедур, на які раніше не звертали уваги. Результат не те щоб дуже вражає, проте світ став трохи кращим.
За словами Метта Левіна, завдяки блокчейну «вдалось привернути увагу світу до процесу покращення внутрішніх організаційних процедур, і це справді має революційне значення».
1 Нещодавно комусь вдалось зареєструвати себе як художника, який намалював Мону Лізу у блокчейн-програмі, яка підтверджує авторство картин.
2 Найскладніше завдання під час побудови бази даних — впевнитись, що ви говорите про одні й ті самі речі. Згадаємо, наприклад, ті самі права на землю: якщо у когось є будинок, що саме входить у власність? За даними податкової, будинок не відділяється від землі, на якій він знаходиться. Водночас у земельному реєстрі можуть зустрічатись різні власники. Крім того, існує система вуличних адрес, яка згадує лише будинок, а не землю під ним. Коротко кажучи, одна й та сама річ може виглядати по-різному в різних урядових системах. Знову ж таки, блокчейн не зможе вирішити проблеми такого типу, для цього розробнику особисто доведеться провести купу нудних зустрічей.
3 За схожим принципом працює створена IBM система «блокчейну»: вони просто надають право запису та читання окремим особам та бізнес-партнерам.
4 Невеличке пояснення для тих, кому особливо цікаво, що воно таке. Припустімо, я та кілька моїх друзів займаємось спостереженням за птахами. Ми не довіряємо одне одному, а також не довіряємо голові нашого клубу, тому що рік тому ми спіймали його на підробці: він переплутав місце спостереження за качками та індичками. Це було геть неприпустимо, бо як ми тепер можемо впевнитись, що результати спостережень будуть занотовані вірно, якщо людина, яка виконує записи, втратила нашу довіру? З використанням дерева Меркла, яке працює наступним чином. Для кожного блоку даних (картинки, тексту, числа тощо) обчислюється унікальний хешкод — це число, схоже на номер банківського рахунку, тільки довше. Цей хешкод гарантує, що блок даних залишився тим самим, бо найменша зміна у даних означатиме повну зміну коду. Таким чином, качка отримала свій код, і якщо її зображення змінити на індичку, хеш також автоматично зміниться. Інша інформація про спостереження також отримає власні коди (наприклад, відстань та час, коли ви побачили птаха). Далі вираховується окремий код для кожної комбінації елементів, які вже отримали власні коди (наприклад, для ряду в таблиці, яка містить інформацію про птаху, особу спостерігача, дату тощо). І так далі, дуже багато хешкодів. Нарешті, для всього цілого документу обчислюється загальний хешкод — це вершина дерева Меркла. Якщо десь щось зміниться (наприклад, замість качки запишуть індичку), загальний код теж зміниться. Суть у тому, що для того, щоб помітити зміни, потрібно перевіряти лише вершину дерева. Водночас за бажання можна пройтися по всьому дереву та швидко виявити, що саме було змінено. Таким чином, можна зрозуміти, які дані змінились, не перевіряючи самі дані, і саме це робить дерево Меркла дуже зручним. Не так щоб дуже революційно, як гадаєте?
5 Відповідно до опитування, проведеного Deloitte, 70% голів бізнесу сказали, що вони мають значний досвід у сфері блокчейну. За їхніми словами, найбільшою перевагою блокчейну є швидкість — і це нісенітниця, бо навіть фанати блокчейну визнають, що швидкість є проблемою, а не перевагою.
В самурая немає мети, є лише шлях.
Ваш донат – наша катана. Кнопки нижче!