УДК 004.023
Ю. Г. Литвиненко,
Студент групи МЕК-6,
Економічного факультету,
Національного Університету
“Острозька Академія”
Керівник: ст. викл., к.психол.н. Коцюк Ю.А.
Стаття присвячена висвітленню методів видобування криптографічної валюти та їх особливостей. Проаналізовано особливості різноманітних методів видобування криптографічної валюти, висвітлено їх переваги та недоліки. Розглянуто альтернативний метод видобування криптографічної валюти, запропонований автором. Автор акцентує увагу на дослідженні ефективності власного винаходу альтернативного методу видобування криптографічної валюти.
Ключові слова: криптографічна валюта, криптовалюта, біткоїн, лайткоїн, майнінг, хешрейт.
Статья посвящена освещению методов добычи криптографической валюты и их особенностей. Проанализированы особенности различных методов добычи криптографической валюты, освещены их преимущества и недостатки. Рассмотрен альтернативный метод добычи криптографической валюты, предложенный автором. Автор акцентирует внимание на исследовании эффективности собственного изобретения альтернативного метода добычи криптографической валюты.
Ключевые слова: криптографическая валюта, криптовалюта, биткоин, лайткоин, майнинг, хешрейт.
Article is devoted to the enlightenment of the cryptographic currency mining methods, their features. Features of different cryptographic currency mining methods were analyzed. Their advantages and disadvantages were enlightened. An alternative method of cryptographic currency mining, offered by the author was discussed. Author focuses on the research of effectiveness of his own invention – an alternative method of cryptographic currency mining.
Key words: cryptographic currency, cryptocurrency, bitcoin, litecoin, mining, hashrate.
Постановка проблеми: На сьогоднішній день у світі існує величезна кількість 5 мільйонів 782 тисяч веб-серверів, на яких розміщено 1 мільярд 3 мільйони 887 тисяч веб-сайтів [4], що обслуговують величезну кількість користувачів мережі інтернет по всьому світу. Кожен веб-сервер використовує протоколи HTTP/HTTPS для роботи з клієнтським програмним забезпеченням. Мало хто знає, що кожен HTTP/HTTPS запит на сервер використовує досить малу кількість процесорних ресурсів веб-сервера на якому розміщений веб-сайт. Велика кількість запитів на веб-сервер створює певне навантаження на його центральний процесор і ядра, які виконують обробку кожного запиту клієнтського програмного забезпечення та видають результат у вигляді веб-сторінки. Неважко здогадатися, що завантаженість всіх ядер центрального процесора такого веб-сервера рідко доходить до 100 відсотків. Це створює унікальний ресурс обчислень, який можна використовувати для певних цілей, таких, як побудова віртуального суперкомп’ютера, що може працювати для математичних обчислень в таких напрямках як криптографія, рендерінг відео, штучний інтелект, наукові обчислення. В цій статті автор пропонує використання даного ресурсу для видобування криптографічної валюти, на прикладі біткоїн та лайткоїн. Мета – показати можливість використання альтернативних методів видобування криптографічної валюти, розкрити їх потенціал на прикладі дослідження ефективності власного альтернативного методу добування криптографічної валюти.
Стан дослідження: на сьогоднішній день існує певна кількість методів видобування криптографічної валюти і з кожним днем можуть з’являтися нові методи. Кожен з них має свої переваги та недоліки, і з кожним новим методом з’являються нові можливості для впровадження їх у життя задля отримання прибутку.
Найпершим в світі методом видобутку криптографічної валюти був метод використання процесорних ресурсів персональних комп’ютерів та серверів, що працюють під різними операційними системами такими, як Microsoft Windows, Linux, xBSD, Solaris та інші. Чим потужніший процесор в комп’ютері і чим більше в ньому ядер, тим більша ефективність видобування криптографічної валюти. Математично ця ефективність виражається в кількості оброблених хешів криптографічного алгоритму за секунду (Hps). Чим більша кількість майнерів з’являлась в піринговій мережі криптографічної валюти, тим складніше було кожному учаснику процесу видобування здобути для себе винагороду у вигляді самої криптографічної валюти і тим більші обчислювальні потужності необхідно було залучати для отримання більшого прибутку. До переваг такого методу можна віднести невисоку вартість обладнання. Значним недоліком такого методу на сьогодні є його низька ефективність.
Для підвищення ефективності видобування криптографічної валюти, майнери перейшли на використання графічних процесорів, які давали значний приріст ефективності в порівнянні з використанням звичайних центральних процесорів. До переваг такого методу можна віднести більшу ефективність в порівнянні з попереднім методом. Недоліками ж є збільшене енергоспоживання, підвищений рівень шуму системи охолодження графічних процесорів.
З часом графічних процесорів стало замало і потрібно було знаходити нові більш ефективні способи видобутку криптографічної валюти. Тоді спеціалісти в сфері інформаційних технологій та фахівці з мікроелектроніки почали займатися розробкою спеціалізованих чіпів application-specific integrated circuit (ASIC) для надефективного майнінгу, що вміли виконувати лише одну функцію – обробляти вхідну інформацію використовуючи конкретний алгоритм шифрування, що використовується конкретною криптографічною валютою і роблячи це надзвичайно швидко. Наприклад для біткоїн це – sha256d, для лайткоїн – scrypt. Це створило новий ринок – ринок апаратних ASIC майнерів. Вартість такого обладнання на цьому ринку була і є відносно високою, а інвестиції в таке обладнання, як показав аналіз – не завжди виправдовують себе. Окрім того таке обладнання споживає багато електроенергії, що ставить під сумнів його ефективність. Іншими недоліками такого обладнання є високий рівень шуму, що створюють вентилятори системи охолодження, а також порівняно короткий цикл життя.
Питаннями оптимізації видобутку криптографічної валюти займались науковці зі всього світу. Зокрема індійський дослідник Джега Аніш Дев з відділу комп’ютерних та інженерних наук університету Анни в Ченаї дослідив можливість оптимізації процесу майнінгу криптографічної валюти з використанням не стандартного обладнання для майнінгу [3]. Результати його досліджень показали значне покращення ефективності процедури майнінгу, використовуючи запропонований науковцем метод.
Виклад основного матеріалу. На сьогодні у світі існує велика кількість криптографічних валют, що використовують різноманітні криптографічні алгоритми та їх комбінації. Сьогодні налічується близько 740 різноманітних криптографічних валют [5]. Кожна з них створена з відкритим програмним кодом та бере початок від криптографічної валюти біткоїн, створеної у січні 2009 року Сатоші Накамото. Ця особистість не є справжньою, тому достеменно не відомо, хто насправді є творцем технології криптографічної валюти.
Біткоїн – це глобальна віртуальна валюта, що працює, як пірінгова комп’ютерна мережа, що є децентралізованою за своєю суттю і не перебуває під контролем жодного банку та жодної держави [1]. Існування Біткоїн неможливе без мережі Інтернет, яка є фундаментом для таких систем, як криптографічна валюта. Тому, можна припустити, що існування біткоїн та інших криптографічних валют, побудованих на її основі буде тривати стільки часу – скільки буде існувати мережа Інтернет. Всі операції з криптографічною валютою здійснюються виключно онлайн. На сьогодні існує досить широке коло користувачів цієї системи, що купують та продають за біткоїни та інші криптографічні валюти. На сьогодні саме біткоїн є найбільш ходовою криптографічною валютою у світі і ціна 1 біткоїна станом на 5 березня 2017 року складає 1251 долар США [2].
Всі операції з криптографічною валютою здійснюються за короткий проміжок часу і є дешевими в порівнянні з іншими, комерційними системами електронного обігу коштів. Щоб почати користуватись біткоїн потрібно створити гаманець за допомогою клієнтського програмного забезпечення, будучи підключеним до мережі інтернет, та наповнити цей гаманець біткоїнами.
Це можна зробити в декілька способів. Існує ціла низка можливостей придбання криптографічної валюти. Такими можливостями є наприклад онлайн біржі обміну криптографічною валютою, онлайн депозитні платформи, індивідуальні користувачі мережі інтернет, що володіють криптографічною валютою і мають намір її продати.
Іншим способом поповнення власного електронного гаманця є так зване видобування криптографічної валюти. Існує ряд методів видобування криптографічної валюти. Автор винайшов власний метод, яким хоче поділитися в даній статті.
Метод автора утилізує невикористану обчислювальну потужність веб-серверів світу для видобування криптографічної валюти. Для даного процесу пропонується використати програмне забезпечення wwwminer2, створене автором за допомогою мови програмування C під операційною системою Linux. Програмний продукт включає в себе декілька основних і декілька допоміжний програм, що дозволяють ефективно управляти процесом майнінгу. Програмний продукт має архітектуру клієнт-сервер, де в ролі серверної частини використовується двійковий CGI скрипт, скомпільований під 64 бітну Linux платформу, яка найчастіше застосовується на серверах масового веб хостингу та виділених веб-серверах. Існує також 32 бітна версія даного CGI скрипта. Даний скрипт має розміщуватись на веб-серверах, обчислювальні потужності яких планується використати для добування криптографічної валюти. В якості клієнтської частини використовується сама програма wwwminer2, створена для роботи під операційною системою Linux. Вона не має графічного інтерфейсу і працює через термінал операційної системи. Програмний клієнт wwwminer2 має декілька файлів конфігурації, що дозволяє його налаштувати для роботи як з пулом видобування криптографічної валюти, так і з певною URL адресою за якою розміщується вище згаданий CGI скрипт. Наприклад цей скрипт доступний за адресою http://www.u*d.org/cgi-bin/cloud.cgi . В файлі конфігурації urls.conf вказується ця адреса та кількість процесорних потоків, які планується використати для видобування криптографічної валюти. В файлі miner.conf вказується адреса пула видобування криптографічної валюти та криптографічний алгоритм, що використовується для даної криптографічної валюти. Метод автора створений з можливістю використання таких криптографічних алгоритмів, як sha256d, scrypt, quark, X, qubit, x13, bitblock, nist5 для видобування криптографічної валюти. Всі ці алгоритми підтримуються як клієнтською, так і серверною частиною рішення. Для обміну даними між сервером та клієнтом використовується протокол xml-rpc, що дозволяє серверу та клієнту обмінюватись даними в форматі XML. CGI скрипт очікує використання HTTP методу POST, який використовує wwwminer2 для ініалізації обміну даними з сервером. Тому коли спробувати відкрити вищевказану адресу в веб-браузері, то в результаті отримаємо помилку 405: метод не дозволено. Це свідчить про працездатність CGI скрипта на віддаленому веб-сервері. Для повноцінного тестування працездатності CGI скрипта існує окрема програма з пакету програмного продукту.
Загалом, досліджуючи ефективність такого методу, в результаті його тестування на веб-сервері з 8-ми потоковим центральним процесором виявлено, що величина хешрейту не є сталою і динамічно змінюється в залежності від завантаженості процесорних потоків. CGI скрипт значно навантажує процесорні потоки сервера роблячи їх навантаження 100 відсотковим. Щодо хешрейту, то для криптографічного алгоритму scrypt, що використовується в криптографічній валюті лайткоїн, величина хешрейту складає приблизно 80kHps [Рис. 1], що є незначним результатом, порівнюючи з майнінгом на GPU та ASIC обладнанні. Якщо це значення помножити на кількість серверів з приблизно такою ж обчислювальною потужністю і завантаженістю, то ми отримаємо досить значний результат. Можна уявити, що ми використовуємо всі веб-сервери світу для такої цілі, як видобування криптографічної валюти лайткоїн методом автора. Тоді ми отримаємо 80kHps * 5782080 = 462566400kHps = 462.5664GHps. Що є значним показником, що дозволить отримувати прибуток в розмірі 393.10 долара США щогодини, це 9434.47 долара США щодоби. Дані обчислення показані для ідеальної моделі системи, що видобуває криптографічну валюту методом автора.
Рис. 1. Графік, що показує хешрейт видобування криптографічної валюти використовуючи обчислювальні потужності веб-серверів за одну добу роботи.
Висновки. Тепер ми знаємо, що існують різні методи видобування криптографічної валюти. В результаті дослідження авторського методу можна вважати, що його ефективність є досить високою при ідеальний умовах використання. В реальному житті авторський метод видобування криптографічної валюти має свої переваги та недоліки. До переваг можна віднести відсутність необхідності інвестицій в дороге обладнання, значна економія електроенергії на стороні клієнта, використання незначних обчислювальних потужностей для роботи клієнтського програмного забезпечення майнера, можливість використання невикористаної обчислювальної потужності веб-серверів усього світу. До недоліків можна ж віднести складність розміщення CGI скриптів на веб-серверах, необхідність постійного безперебійного інтернет підключення, необхідність розміщення бінарних CGI скриптів на якомога більшій кількості віддалених веб-серверів, необхідність запуску бінарних CGI скриптів на веб-серверах, де вони будуть розміщуватись. Зважаючи на переваги та недоліки цього методу можна сказати, що він є дуже нестандартним, тому однозначно заслуговує на увагу.
ЛІТЕРАТУРА
- info@bitcoinua.org. “Що таке Біткоїн?”. [Електронний ресурс], [2017?], // Bitcoin Foundation Ukraine. Режим доступу: http://www.bitcoinua.org/what-is-bitcoin/
- info@bitcoincharts.com. [Електронний ресурс], [05-03-2017], Режим доступу: http://bitcoincharts.com/charts/bitstampUSD
- Jega Anish Dev (Department of Computer Science and Engineering, Anna University, Chennai, India) “Bitcoin mining acceleration and performance quantification” [Електронний ресурс], [2014], // IEEE, Режим доступу: http://ieeexplore.ieee.org/abstract/document/6900989/
- info@netcraft.com, “March 2016 Web Server Survey” [Електронний ресурс], [18-03-2016]. Режим доступу: https://news.netcraft.com/archives/2016/03/18/march-2016-web-server-survey.html
- Wikipedia, “List of cryptocurrencies” [Електронний ресурс], [11-06-2016], Режим доступу: https://en.wikipedia.org/wiki/List_of_cryptocurrencies