Що таке Monero?

Що

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

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

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

Коротка історія проекту

Дослівний переклад слова «monero» з мови есперанто - «гроші». При створенні цієї криптовалюти, розробники робили акцент на двох вкрай важливих принципах - незв'язаності і невідстужуваності. Це дозволило добитися того, що практично неможливо встановити зв'язок між двома окремими транзакціями в мережі, а також - визначити джерело коштів, їх обсяг і призначення. Але сам факт транзакції і можливість її автоматизованої перевірки - залишається. Цього вдалося досягти за допомогою деяких специфічних методів криптографії.

Monero - форк іншого криптовалютного проекту від 2012 року - Bytecoin (Байткоін, не плутати з Біткоін), також орієнтованого на високий ступінь конфіденційності транзакцій. У ньому був вперше реалізований протокол CryptoNote - технологія з відкритим кодом, спрямована на рішення деяких ключових проблем, характерних для біткоіну. Конкретно - використання ASIC-обладнання для Майнінгу і повністю прозорі транзакції. І цей протокол активно застосовується до сих пір.

Але в 2014 році частина розробників, незадоволених тим, як розвивається Bytecoin, викликали жорстке розгалуження блокчейна, назвавши нову гілку «bitmonero». Але незабаром від назви відколовся перший склад і вийшло Monero.

Як працює Monero?

Два ключові моменти, що відрізняють Monero від інших блокчейнів - використання «кільцевих підписів» і «прихованих адрес». Саме вони дозволяють домогтися настільки високого ступеня анонімності. І зараз ми поговоримо про ці функції більш докладно.

Кільцеві підписи

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

У статті від 2001 року «How to Leak a Secret paper», це розписується досить докладно, взявши за приклад роботу певного кабінету міністрів в уряді. Припустимо, що один з учасників цього кабінету - такий собі Семен, має в своєму розпорядженні докази проти прем'єр-міністра. І він хоче їх оприлюднити, для чого і звертається в пресу. Але йому потрібно якось довести, що його словам можна довіряти і у нього був доступ до таких документів. При цьому - життєво важливо зберегти анонімність, оскільки Семен справедливо побоюється помсти за свої дії.

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

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

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

Однак оновлення RingCT (Ring Confidential Transactions) - «кільцева конфіденційна транзакція», змінило цю ситуацію. При ньому тепер змішуються і суми транзакцій. Тому більше вас не зможуть відстежити за величиною переказу, оскільки кожнму з цифрових підписів в загальному кільці підписуються різні суми грошей. Це істотно підвищило рівень конфіденційності в блокчейне Monero.

Приховані адреси

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

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

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

Так, ви зможете переглянути список рахунків в «Monero block explorer», але в ньому містяться тільки публічні, а не приховані, адреси. А одноразові адреси генеруються автоматично, не повторюються і не можуть бути пов'язані одна з одною. Ось і виходить, що у кожного власника публічного рахунку є вихід на необмежену кількість пов'язаних з ним прихованих адрес. І зручні інструменти для отримання доступу до них.

Вони називаються «закритий ключ перегляду» і «закритий ключ витрати». «The private view key» і «the private spend key». Перший дозволяє переглядати взагалі всі транзакції в межах блокчейна Monero, пов'язані з вашою публічною адресою. Його можна передавати довіреній особі, наприклад - бухгалтеру, який веде ваші рахунки. Ключ витрати ж дозволяє, як видно з назви, вільно витрачати гроші на прихованих адресах, як ніби вони всі лежали в рамках одного гаманця.

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

Різниця між Monero і Bitcoin

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

Взаємозамінність

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

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

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

Зрозуміло, існують способи «стерти» історію монети - різноманітні кріптоміксери і сервіси CoinJoining. Однак для їх використання потрібно здійснювати додаткові дії і чекати додатковий час.

У Monero проблеми відстеження історії монет немає за замовчуванням. Так що всі XMR взаємозамінні за визначенням. І легко проходять перевірки навіть у компаніях із суворим аналізом коштів які надходять.

Однак це створило Monero досить специфічну славу - через високу конфіденційність, дану криптовалюту активно використовують різноманітні кіберзлочинці.

Втім, у конфіденційності є своя ціна. В даному випадку - великі за розміром транзакції. Тому вся система менш стійка до проблеми масштабування.

Блоки і Майнінг

Monero, як і Bitcoin, використовуються для «добування» блоків доказу роботи - PoW. Але на відміну від нього, за рахунок протоколу CryptoNote, цей процес не сумісний з ASIC-обладнанням. Це запобігає формуванню домінуючих майнінгових пулів, які використовують спеціалізоване і вкрай потужне обладнання для Майнінгу.

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

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

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

Хардфорки

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

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

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

Розробка

Як і у випадку з біткоіном, в розробці може взяти участь будь-який бажаючий, так як вихідний код - відкритий. Але чи впроваджувати запропоновані зміни - вирішує співтовариство. На момент написання статті, воно складалося з більш ніж 500 осіб. У тому числі і основної команди розробників - Riccardo Spagni (FluffyPony), Francisco Cabañas (ArticMine), і ряду інших товаришів, що діють під псевдонімами NoodleDoodle, othe, і binaryFate.

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

Висновок

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