Karbo – хардфорк. Зміна алгоритму майнінгу – соло CPU

Karbo (Karbowanec) – анонімна криптовалюта для розрахунків за товари та послуги.

Карбо має активну спільноту і розробників, які вдосконалюють криптовалюту Карбо.

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

Як кажуть самі розробники, вони дійшли до думки, що поступові невеликі зміни в алгоритмі не захистять надовго від ASIC-ів (обладнання для промислового майнінгу) та інших загроз, тому вирішили робити одночасно кілька великих кардинальних змін.

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

Цілі алгоритму

Зробимо невеликий екскурс в історію та пригадаємо які цілі ставив перед собою Сатоші Накамото при створенні Біткоїна.

  • Інтернет гроші.
  • Децентралізованість (у тому числі децентралізованість видобутку).
  • Не підконтрольність державам.
  • Приватність.
  • Відсутність цензури.

Які речі розробники Карбованця хотіли додати або покращити з новим алгоритмом:

  • Збільшити кількість вузлів в мережі, які б незалежно перевіряли блокчейн.
  • Позбутись майнінг-пулів, перейти на соло видобування та значно підвищити цим децентралізацію видобування.
  • Ускладнити або й повністю запобігти видобуванню на ASIC-ах та відеокартах.
  • Запобігти появі ботнетів.
  • Перейти на власний унікальний алгоритм для запобігання атак хешрейтом. Унікальний алгоритм неможливо орендувати на сервісах на кшталт Nicehash і використовувати наймитів для атак на мережу.
  • Захиститись від набігів “кочових” майнерів, що перемикаються на монети з невеликою складністю, а як тільки вона виростає переходять на іншу монету, залишаючи постійним майнерам проблему високої складності. Таке можливо коли такий самий алгоритм використовується кількома монетами.
  • Протидіяти такому явищу як merged mining (майнінг кількох монет одночасно).

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

Особливості нового алгоритму Карбованця

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

Ідея егалітарного майнінгу теж дуже проста. 1 CPU = 1 vote. Кожен повинен мати можливість брати участь у PoW (proof of work). Отже, кожен учасник, а не тільки власники найдорожчих процесорів, ферм, або ботнетів, можуть брати участь в майнінгу Карбо.

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

Чистий соло-майнінг в гаманці

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

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

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

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

Алгоритм хешування

Модифікований алгоритм базується на yespower з blake-256, працює виключно на CPU й запобігає видобуванню на відеокартах та ASIC. Майнер для цього алгоритму є лише в гаманці Карбованця, і недоступний в жодному іншому сторонньому ПЗ.

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

Signed Proof-of-Work (SPoW)

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

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

BloDHA – Blockchain-dependent Hash

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

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

Тому через кілька днів після запуску алгоритму було випущено оновлення з оптимізацією. BloDHA Lite навчилась кешувати необхідні заголовки блоків в оперативній пам’яті. Це одразу прибрало вимогу до наявності SSD, зменшило вимоги до об’єму оперативної пам’яті, дозволило використовувати процесор на 100%, і підвищило хешрейт на усіх процесорах.

Налаштування

Не дивлячись на усі зміни та перепони для “промислових” майнерів в новому алгоритмі Карбованця, для звичайного користувача його налаштування тривіальні. Потрібно:

  • Завантажити останню версію графічного гаманця для своєї ОС (зверху сторінки).
  • Запустити додаток та дочекатись коли він повністю синхронізується (завантажить та перевірить весь блокчейн). Це може зайняти кілька годин, і залежить від заліза.
  • Відкрити вкладку “Карбування” та натиснути кнопку “Розпочати карбування”.

Після цього розпочнеться видобуток Карбованця.

Дамо кілька порад по оптимальному налаштуванню, а також розв’язанню поширених проблем.

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

Деякі антивіруси хибно реагують на програми із вбудованим майнером, тож у рідкісних випадках можуть блокувати їх. На virustotal.com можна перевірити, що причиною блокування є саме наявність майнеру. Цікаво що у випадку Карбованця хибне спрацювання це данина історії, бо антивіруси по старій звичці “знаходять” вже три роки як видалений в гаманці старий майнер. Саме на новий майнер антивіруси не реагують.
Інколи під час вимкнення гаманця на екрані висить вікно “Гаманець Karbo записує дані”. Якщо воно не зникає хоча б 30 секунд, то скоріш за все гаманець був просто невдало зачинений під час якоїсь операції. Можете сміливо знімати процес Karbo через диспетчер завдань.
Для досвідчених користувачів є інструкція з майнінгу через консольну версію Карбованця. Сама по собі вона працює анітрохи не швидше графічної, але може стати в пригоді, наприклад на Linux.

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

Якщо у вас з’являться інші питання, то обговорити їх можна в телеграм групі Karbo Mining.

Поповнення телефона

Поповнення телефону можна здійснювати на karbo.top

Потрібно вказати номер телефона і суму поповнення. При переказі Карбо не забувайте вказувати ідентифікатор переказу (Payment ID). Також зверніть увагу, що через особливості роботи платіжного шлюзу, номери які колись належали МТС (050, 066 та ін) оброблюються за окремим тарифом. Це не залежить від karbo.top, а відбувається на боці платіжного шлюзу.

Висновок

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

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