Квадратичне фінансування

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

Квадратичне фінансування (або CLR-фінансування) було запропоновано у 2018 році в роботі Liberal Radicalism: A Flexible Design For Philanthropic Matching Funds як можливе вирішення перелічених проблем фінансування суспільних благ. Цей підхід поєднує в собі переваги ринкових механізмів і демократичного управління, але при цьому меншою мірою схильний до їх недоліків. У його основі лежить ідея зустрічного фінансування (співфінансування), при якому люди роблять прямі пожертвування різним проектам, які вони вважають суспільно корисними, а великий спонсор (наприклад, благодійний фонд) бере на себе зобов'язання додати пропорційну суму до кожної пожертвування (наприклад, подвоїти його). Це створює додатковий стимул для участі та дозволяє спонсору ефективно розподілити кошти, не маючи експертних знань у тій галузі, що фінансується.

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

Квадратичне фінансування

Це дозволяє учасникам висловити силу своїх переваг, що неможливо під час голосування за принципом «одна людина — один голос». І в той же час, такий підхід не наділяє надмірним впливом учасників, що мають значні ресурси, як це відбувається при голосуванні за принципом пропорційності (який часто застосовується при голосування акціонерів).

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

Квадратичне фінансування

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

Квадратичне фінансування

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

Квадратичне фінансування

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

Квадратичне фінансування

Для ознайомлення з роботою механізму можна скористатися калькулятором: https://qf.gitcoin.co/.

Gitcoin

Вперше механізм квадратичного фінансування було випробувано на початку 2019 року у рамках програми Гранти Gitcoin на платформі Gitcoin, яка спеціалізується на підтримці проектів із відкритим вихідним кодом. У першому раунді фінансування 132 донора зробили пожертвування у криптовалюті на розвиток 26 інфраструктурних проектів екосистеми Ethereum. Загальна сума пожертв становила 13242 долари США, на додаток до яких із фонду зустрічного фінансування, створеного кількома великими спонсорами, було виділено 25000 доларів. Надалі участь у програмі була відкрита для всіх бажаючих, а критерії проектів, що підпадають під визначення суспільних благ екосистеми Ethereum, було розширено, з'явився поділ за категоріями, такими як «технології» та «медіа». Станом на липень 2020 року було проведено вже 6 раундів, в ході яких понад 700 проектів отримали в загальній сумі понад 2 млн. доларів фінансування, а медіанне значення суми пожертвування становили 4.7 доларів.

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

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

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

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

клр.фонд

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

Таємне голосування

Таємниця голосу при голосуванні з використанням публічного блокчейну може бути збережена за допомогою протоколів нульового розголошеннящо дозволяє перевіряти коректність математичних операцій над зашифрованими даними без розкриття цих даних. У clr.fund розміри індивідуальних пожертв будуть приховані і для розрахунку сум зустрічного фінансування застосовуватиметься система zk-SNARK під назвою MACI (Minimum Anti-Collusion Infrastructure, мінімальна інфраструктура для протидії змові). Вона дозволяє проводити таємне квадратичне голосування та захищає голосуючих від підкупу та примусу за умови, що обробка голосів та підрахунок результатів виконуються довіреною особою, яка називається координатором. Система влаштована так, що координатор може сприяти підкупу, оскільки він може розшифровувати голоси, але при цьому він не може виключати або підміняти голоси, і не може підробляти результати підрахунку голосів.

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

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

Соціальна верифікація

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

Вирішення суперечок

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

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

Автономні екосистеми

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

У існуючих реалізаціях, таких як Gitcoin Grants, виробництво суспільних благ субсидується великими спонсорами, проте натомість кошти можуть надходити з інших джерел. У деяких криптовалютах, наприклад Zcash и Decred, використовується інфляційне фінансування: частина нагороди за створення блоків направляється команді розробників підтримки подальшої їх роботи з поліпшенню інфраструктури. Якщо буде створено механізм квадратичного фінансування, який працює надійно і не потребує централізованого адміністрування, то частина нагороди за блоки може направлятися до нього для подальшого розподілу за участю спільноти. Таким чином сформується автономна екосистема, де виробництво суспільних благ буде повністю самопідтримується і не залежатиме від волі спонсорів і керуючих організацій.

Джерело: habr.com

Додати коментар або відгук