Что делает компьютер во время майнинга криптовалют простыми словами
Понятие майнинг криптовалют знакомо многим не понаслышке, т.к. запускать программу для майнинга пробывали наверно уже все опытные пользователи ПК. Тот факт, что с помощью майнинга добывается криптовалюта и на этом можно заработать, знаком тоже многим. А вот, что конкретно делает компьютер или asic (специализированное устройство для майнинга) во время майнинга, зачем перебирать какие-то хеши, т.е. техническую сторону вопроса, уже знакома более узкому кругу пользователей. Из-за этого в сети возникает множество «теорий заговора», на подобие того, что Bitcoin это чей-то проект по завладению огромной вычислительной мощности для взламывания Пентагона или других подобных организаций. Что компьютерные мощности криптовалют используются для секретных научных разработок, общения с инопланетным разумом, а сами криптовалюты придумали как прикрытие для всех этих «темных дел». Далее мы постараемся наиболее понятно осветить процесс майнинга биткойна и какие задачи решает Ваш компьютер в это время, что бы Вы смогли более точно представлять техническую часть процесса майнинга, а на все «теории заговора» Вы смотрели как на не самую удачную шутку.
Сначала приведем небольшую теорию по технологии Блокчейн (Blockchain) для тех кто еще не знаком с этим понятием.
Blockchain — в переводе цепочка блоков, что отражает суть, т.е. последовательная запись блоков. Блок это список транзакций (переводов). Т.е. получаем блокчейн это список переводов между криптовалютными кошельками, записываемых не по отдельности, а сразу большой партией.
Для аналогии blockchain можно представить как папку с листами, а блок здесь будет листом, на котором записаны транзакции между кошельками. Нахождение очередного блока означает, что в папку был добавлен новый лист с новыми данными (переводами). Все листы при этом пронумерованы и лежат по порядку.
При этом уже добавленные данные в блокчейн не подвергаются сомнению, т.е. это инструмент которому доверяют все участники сделки по передаче криптовалюты с одного кошелька на другой.
Т.е. Blockchain это архив всех переводов, которые существуют и его нельзя подделать.
Что бы Blockchain обладал 100% надежностью и люди полностью доверяли сделкам через блокчейн, используется несколько технологий, в том числе и проверка работы, т.е. Proof of Work майнинг.
Теперь перейдем непосредственно к POW майнингу и разберемся, на что же на самом деле компьютеры тратят свою вычислительную мощность, а майнеры платят счета за электричество.
Что бы понимать дальнейшие повествование нужно знать следующие термины: Хеширование, Хещ-функция и Хеш-сумма и другие.
Хеширование — процесс преобразования информации в не читаемый вид для ее защиты от посторонних, а так же для сжатия информации в текстовую строку заданной длины.
Хеш-функция (алгоритм хеширования)- способ с помощью которого происходит шифрование. Написать текст задом наперед, заменить все буквы цифрами или объединить оба этих способа тоже можно назвать хеш-функцией. Для Bitcoin хеш-функция гораздо сложнее и называется SHA-256, Ethereum — Dagger Hashimoto, Litecoin — Scrypt.
Хеш-сумма — это результат, который получили после хеширования, т.е. зашифрованные первоначальные данные, которые невозможно узнать, не зная используемый алгоритм шифрования. Хеш-сумма всегда имеет заданное и неизменяемое количество символов. У криптовалют обычно хеш-сумма имеет длину в 64 символа или 32 бита.
Сложность хеширования (сложность майнинга) — для криптовалют сложность хеширования задается за счет включения дополнительного условия при создании хеш-сумм. Для этого в начале хеш-суммы добавляется неизменяемое число ноль (0). С увеличением сложности количество нулей в начале хеш-суммы увеличивается. На данный момент хеш-сумма Bitcoin в обязательном порядке должна содержать 18 нулей.
Транзакция (перевод) — информация по передаче криптовалюты с одного адреса на другой, при этом эта информация так же хешируется в строку из 64 символов той же хеш-функцией (SHA-256 для биткойна), причем дважды. Хеширование транзакций происходит быстро, т.к. нету дополнительный условия к созданию хеш-функций, в отличии от нахождения хеш-функции всего блока. Хеш-сумму транзакции обычно называют TxID.
Nonce (случайное произвольное число) — это число которое добавляется к данным блока для упрощения создания хеш-суммы с текущими условиями (сложностью майнинга).
Всю терминологию мы объясняем на обывательском уровне, для полного понимания обратитесь к другим источникам, например, википедии.
Зная и понимая терминологию можно уже понять что же на самом деле делает компьютер (процессор, видеокарта, asic, fpga) во время майнинга криптовалют
Вернемся к блоку, который все так усердно «ищут». Блок содержит в себе следующую информацию: хеш-сумму предыдущего блока, хеш-сумму всех включенных в него транзакций и число nonce. Хеш-сумма предыдущего блока нужна для защиты от записи в блокчейн недостоверной информации, хеш-суммы транзакций берутся из мем пула (Mempool), в котором хранятся все не подтвержденные транзакции. При этом стоит отметить, что каждый майнер берет из мемпула свой набор транзакций, т.е. каждый ищет свой блок (свою хеш-сумму), а не вся сеть ищет какой-то определенный блок. Нонсер или произвольное число служит, как мы уже говорили, для облегчения поиска хеш-суммы блока с заданной сложностью. Т.к. если бы в данных были только хеш-суммы транзакций и предыдущего блока, то возможен такой вариант, что найти хеш-сумму из текущих данных в мемпуле будет вообще невозможно, не говоря уже о времени поиска блока, который стремится к заданному значению (10 минут у биткоин).
Наглядный пример поиска нового блока, хеш-суммы или майнинга криптовалюты:
В данном примере рассчитано 4 хеш-суммы с разными Nonce числами (3001, 3002, 3003, 3004), хеш-суммы предыдущего блока и хеш-суммы транзакции остаются без изменений.
Собственно из-за произвольного числа Nonce время появления нового блока не постоянно и может варьироваться в широких пределах, но в среднем математически время нахождения блока будет стремиться к одному заданному в программе числу.
Таким образом получаем, что майнинг криптовалют это подбор произвольного числа Nonce с последующим хешированием, что бы получаемая хеш-сумма блока после хеширования отвечала требованиям сложности сети (имела нужное количество нулей). Т.к. процесс хеширования не моментальный процесс и требует математических и логических операций от компьютера, поэтому для каждого алгоритма то или иное оборудование имеет свою скорость хеширования. Например, при хешировании по алгоритму Dagger-Hashimoto или Ethash видеокарта AMD Radeon RX580 в течении одной секунды хеширует 30 миллионов вариантов хеш-сумм с различным числом Nonce. Собственно поэтому и говорят, видеокарта RX580 выдает 30 мегахеш (MH/s). При этом скорость хеширования зависит не только от оборудования, но и от алгоритма шифрования, сложности майнинга и программного обеспечения (майнеров).
Вся информация по блокам открыта в свободном доступе. Для биткоин можно посмотреть на сайте Blockchain.com. Пример блока под номером 613181 можно посмотреть ниже:
Когда компьютер производит десятки или сотни тысяч математических операций, что бы получить одну хеш-сумму или просто хеш и при этом за одну секунду обрабатывается 30 миллионов таких хеш-сумм, то при таком объеме работ, производимых компьютером, говорить о каком-то подборе паролей для взлома пентагона или другом тайном заговоре становится просто смешно.
Теперь Вы, наверно, спросите: «Зачем вообще все этого нужно?». Ответ на этот вопрос лежит в самой технологии блокчейн, которой для защиты данных от взлома нужно обеспечить определенный интервал появления новых блоков. И этот временной интервал как раз регулируется сложностью майнинга, а сам майнинг служит доказательством работы (Proof of Work), за которую майнер получает награду в виде вновь выпущенной криптовалюты в найденом им блоке. Совершаемая при этом работа тоже не бесплатна, т.к. требует покупки оборудования и траты ресурсов (электроэнергии). Поэтому и выстраивается устойчивая экономическая модель криптовалют, за счет которой у криптовалют появляется начальная материальная ценность в обществе.
В заключение можно сказать, что blockchain это надежный архив, а процесс майнинга это запись подтвержденной информации в этот архив. Майнеры в этом процессе получают награду за вполне понятную и нужную работу по поддержанию всей системы в рабочем и устойчивом состоянии.
Подпишись на наш Telegram канал @cryptoage и Вконтакте, узнавай новости про криптовалюты первым.
Общайся с криптоэнтузиастами и майнерами в Telegram чате @CryptoChat
Лучшие биржи для покупки и обмена криптовалют, токенов:
Самая крупная и известная крипто биржа в мире. Надежность и функционал на самом высшем уровне.
Лучшая биржа для торговли крипто фьючерсами. Проводит торги акциями крупных компаний (Apple, Tesla. )
Примеры употребления на «Секрете»
«Энергетическая компания «МРСК Северного Кавказа» обнаружила кражу электроэнергии на сумму 130 млн рублей. Местом преступления оказалось село Плиево в Ингушетии. Энергетики обнаружили недалеко от села объект, на котором злоумышленники незаконно установили два трансформатора, снабжавших энергией более 1600 майнинг-ферм. Создателям этой системы грозит от 2 до 5 лет тюремного заключения».
(Из материала о криптопреступлении на Кавказе.)
«Alibaba прекратит продажу оборудования для майнинга. Ограничение связано с ужесточением политики властей Китая в отношении криптовалют. Под ограничения попадут как оборудование, так и программы и учебные пособия».
(Из новости о грядущих сложностях с покупкой оборудования для добычи крипты.)
Майнинг запрещён законом ⚖
Нет, майнинг законом не запрещён!
В сентябре 2017-го года ходил слух, что в России введут запрет на установку ферм для добычи криптовалюты. Однако этот законопроект так и не был принят
Все слухи о запретах — медийный шум и сенсационализм
В России нет ни одного закона, который бы запрещал владение, использование или добычу криптовалюты. Существует законопроект «О цифровых правах», где разрешается обмен криптовалютой между физическими лицами. Однако в данной законодательной базе нет понятия майнинг, поэтому он никак не ограничен на территории РФ.
Железный вопрос
Следующий важный вопрос — необходимое для майнинга оборудование. Опять же, бежать за топовым PC сломя голову не стоит. Сначала нужно определиться, на чём именно майнить. Для добычи криптовалюты не всегда нужен компьютер: в некоторых случаях выгоднее приобрести так называемый ASIC. Это устройство, предназначенное для выполнения криптографических вычислений с целью добычи коинов.
В отличие от PC, ASIC больше ничего не умеют, однако их эффективность майнеры оценили по достоинству. Хотя чудес экономии и комфорта ждать не стоит: они так же прожорливы в плане электричества, сильно шумят и греются, а нередко требуют и дополнительного блока питания. Кроме того, ASIC не умеют майнить некоторые криптовалюты, а разобраться в их настройке с нуля не так-то легко. Поэтому просто имейте в виду, что они есть, но переходить к их использованию стоит только после того, как вы уже освоили майнинг на обычном ПК.
Отметим, что майнить предпочтительно на 64-битной операционной системе. Поэтому рекомендуем установить её в качестве второй ОС на PC, если у вас по умолчанию стоит 32-битная.
Самые популярные вирусы для скрытого майнинга
Linux.BtcMine.174 — опасный гибридный троян
Специалистами Dr Web был обнаружен опасный троян для майнинга криптовалюты Monero (XMR). Вирус Linux.BtcMine.174 поражает устройства с операционными системами (ОС) Linux и Android по всему миру.
Он классифицируется как гибридная угроза, поскольку включает в себя сценарии атак нескольких типов инфекций. В одной из статей
, что этот вирус способен инфицировать другие сетевые устройства, удалять антивирусы и собирать информацию об учетных данных.
Сам троян представляет собой набор команд из 1000 строк кода. Инфекции начинаются со скрипта, который ищет место на локальном жестком диске с правами на запись. Там копирует себя и запускает остальные модули.
Обнаружено, что в атаках используются две уязвимости: первая CVE-2016-5195 позволяет получить доступ на запись в память; с помощью второй CVE-2013-2094 можно обрести привилегии администратора.
Конечно, это далеко не единственный вирус для ОС Linux: недавно мы писали, что японская компания Trend Micro выявила еще один вид майнера криптовалют — Coinminer.Linux.KORKERDS.AB.
Обнаруженные вредоносные программы в криптомайнинге, 2014-2018
Браузерный вирус CoinHive Miner
Cамый неприятный вид скрытого майнинга — это браузерный майнинг. Хакеры, используют устройства пользователей, посещающих сайты, для добычи криптовалюты. Один из таких вирусов — CoinHive Miner, предназначенный для добычи криптомонет Monero (XMR), Dashcoin (DASH), DarkNetCoin (DNET).
После установки этой вредоносной программы или расширения браузера CoinHive Miner будет добывать Monero, подключая устройства пользователей к coin-hive.com/lib/coinhive.min.js. Малварь задействует до 90% мощности процессора и видеокарты устройства. Как следствие, компьютер начинает зависать и глючить, а процессор перегревается и может выйти из строя.
Javascript-киберпреступники внедряют в бесплатные расширения или программы для браузеров, и таким способом распространяют его. Так, компания Trend Micro сообщала, что обнаружила CoinHive даже на YouTube.
Создаём ваш личный Биткоин-кошелёк
Этот этап очень важный. Поймите, что в криптовалютах вы один против всего мира. Если вы потеряете кошелёк, никто вам не поможет. Потеря Биткоин-кошелька равна потере наличных денег, даже хуже. Наличные иногда возвращают, Биткоин не сможет вернуть никто.
Воспользуемся кошельком Coinomi. Существует множество других кошельков, а Coinomi нам не платит за свою рекламу — это просто кошелёк, проверенный временем. Помимо надёжности, данный кошелёк доступен для любой операционной системы, в том числе Windows, Mac, Linux, iOS, Android.
Для майнинга нам абсолютно не важно, где будет располагаться кошелёк. Он может быть на телефоне или на компьютере. Кошелёк может находиться на том же компьютере, который будет задействован в майнинге, а может быть на любом другом устройстве — это не принципиально.
Допустим, вы решили установить кошелёк на Windows. Вот детальное руководство по процессу.
Создаём новый кошелёк с помощью кнопки «Create a new wallet».
Создание нового кошелька Coinomi
Самый важный этап! Вам нужно надёжно сохранить фразу для восстановления кошелька (мнемоническую фразу), переписав её на листок. Электронные носители не подходят — и тем более устройства с доступом в интернет. С помощью этой фразы получится при необходимости восстановить свой кошелёк.
Мнемоническая фраза в кошельке Coinomi
Ещё раз. Это важно! Этот набор слов содержит все ваши деньги. Берегите его и никому не показывайте. Можно удалить Coinomi со своего компьютера, однако благодаря этой фразе кошелёк получится восстановить заново.
Вот пример так называемой мнемонической или сид-фразы.
scout stomach push neither oak tumble spoon shine hope vessel garlic exhaust elite coconut clarify limit silent hard chronic any hire swarm dial morning
На следующем этапе вам предложат проверить, хорошо ли вы сохранили фразу или нет. Этот этап можно пропустить, хотя лучше всё же перепроверить мнемоническую фразу.
Создаём пароль для кошелька. Разумеется, нужно выбрать надёжный пароль, а не qwertyasdfg.
Создание пароля в Coinomi
Coinomi — мультивалютный кошелёк, то есть с его помощью можно хранить не только Биткоин. Однако в данном случае нам нужен именно он. Поставьте галочку рядом с надписью Bitcoin, а затем нажмите Next, чтобы продолжить.
Выбор криптовалют в Coinomi
Осталось совсем немного — посмотреть сам адрес кошелька. Нажмите на надпись Bitcoin.