3 декабря 2013 в 15:06

Bitcoin: нельзя так просто взять и намайнить

Bitcoin

В последнее время наши клиенты все чаще обращаются к нам с вопросами: можно ли использовать наши выделенные и виртуальные серверы для майнинга биткоинов?

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


Немного о генерации биткоинов


Биткоины, а также их многочисленные форки, представляют собой так называемую криптовалюту. Криптовалютами называют особый тип электронных валют: децентрализованных, не привязанных к какой-либо национальной валюте, не подверженных инфляции, не контролируемых каким-либо управляющим органом.

В традиционных денежных системах в течение долгого времени использовался так называемый золотой стандарт, гарантировавший, что выпущенная каждая денежная единица может по первому требованию обмениваться на соответствующее количество золота. В криптовалютах существует своеобразный аналог золотого стандарта, называемый «доказательством работы» (proof of work): «выпуск» каждой денежной единицы осуществляется в случае решения криптографической задачи. Задача эта заключается в вычислении значения функции. Со временем уровень сложности этой задачи растет.

Генерация биткоинов по сути представляет собой вычисление новых блоков. Блоком называется набор данных, состоящий из двух основных частей: заголовка и списка транзакций. Заголовок включает свой хэш, хэш предыдущего блока, хэши транзакций, а также служебную информацию. В качестве первой транзакции в блок записывается генерация новых биткоинов, которые в случае получения успешного результата будут перечислены нашедшему. Далее указываются все или некоторые из последних транзакций, еще не включенные в предыдущие блоки.

Найденный блок будет принят всеми остальными пользователями, если числовое значение числа заголовка меньше или равно целевому числу, величина которого регулярно корректируется. Если блок не соответствует цели, то служебная информация в заголовке изменяется, и хэш пересчитывается. Для нахождения блока требуется очень большое количество попыток.

Когда вариант найден, узел сообщает об этом другим подключенным узлам, которые проверяют блок. Если ошибок нет, то блок считается добавленным в цепочку, и следующие блоки должны будут включать в себя его хэш.

Как уже было сказано выше, со временем найти новый блок, удовлетворяющий условиям задачи, становится все сложнее и сложнее. Смысл задуманного нами теста заключался в следующем: проверить, сколько биткоинов и за какое время смогут сгенерировать процессоры наших выделенных серверов.

Описание


Для тестирования были отобраны серверы со следующими характеристиками процессоров (такие показатели, как объем памяти и размер жесткого диска, на процесс генерации биткоинов совершенно не влияют, поэтому мы их не указываем; по этой же причине не учитывали мы и использование технологии HyperThreading; для большей наглядности мощность ядер всех указанных в списке процессоров суммируется):

  • Intel Atom D525 2 ядра по 1.8 ГГц = 3.6 ГГц
  • Intel Core i3 2120 2 ядра по 3.30 ГГц = 6.60 ГГц
  • Intel Core2Duo E8400 2 ядра по 3.0 ГГц = 6.00 ГГц
  • Intel Core2Quad Q8300 4 ядра 2.5 ГГц = 10.0 ГГц
  • 2 x Intel Xeon 5130 2 ядра 2.0 ГГц = 8.0 ГГц
  • Intel Xeon E3-1230 4 ядра по 3.20 ГГц = 12.8 ГГц
  • Intel Xeon E3-1270 4 ядра 3.5 ГГц = 14.0 ГГц
  • 2 x Intel Xeon E5504 4 ядра 2.0 ГГц = 16.0 ГГц
  • 2 x Intel Xeon E5620 4 ядра 2.4 ГГц = 19.2 ГГц
  • 2 x Intel Xeon L5630 4 ядра 2.13 ГГц = 17.04 ГГц
  • 2 x Intel Xeon E5-2603 4 ядра 1.8 ГГц = 14.4 ГГц
  • 2 x Intel Xeon E5-2620 6 ядер 2.0 ГГц = 24 ГГц
  • 2 x Intel Xeon E5-2630 6 ядер 2.30 ГГц = 27.6 ГГц


Вскоре после запуска теста процессор Atom неожиданно перестал отвечать на запросы к API, даже не достигнув текущего уровня сложности. Поэтому мы решили исключить его из дальнейшего тестирования (уровень сложности на этот момент составил 37392766.1364745; чтобы его достигнуть, процессору потребовалось чуть более суток).

Остальные процессоры достигли необходимого уровня сложности, который на момент тестирования составил 609482679.88835. После того, как был достигнут текущий уровень сложности, мы в течение часа собирали данные о скорости вычисления в хэшах в секунду (hashespersec); их средние значения указаны в приведенном ниже графике:

Bitcoin

Выводы


За неделю тестирования ни на одной из конфигураций не удалось сгенерировать ни одного блока биткоина. Использовать даже самый мощный сервер для майнинга только на процессоре совершенно бесполезно. Еще совсем недавно можно было генерировать биткоины при помощи нескольких мощных видеокарт. В последнее время стали популярны ASIC USB Block Erupter — специализированные вычислительные устройства для майнинга, о которых уже не раз писали на Хабре — см., например, здесь, но и они не гарантируют быстрого успеха.

На данный момент в связи с возрастанием сложности практически нереально получить блок, не обладая гигантскими вычислительными мощностями. Конечно, можно подключиться к пулу — но ждать все равно придется долго. Можно еще генерировать альтернативные криптовалюты (Litecoin, Namecoin, PPCoin и т.п.), а затем уже конвертировать в биткоины — но здесь тоже нет никаких гарантий успеха.

Зарабатывать деньги с помощью выделенных серверов можно другими, более традиционными способами — конечно, они сопряжены с огромным количеством проблем, но при этом куда более прибыльны и надежны.

Для тех кто не может комментировать посты на Хабре, приглашаем к нам в блог.
Автор: @VyacheslavAkhmetov
Селектел
рейтинг 133,59
Похожие публикации

Вакансии компании Селектел

Комментарии (90)

  • +4
    Еще дополню тем, что я проводил тест майнинга Litecoin на серверах DigitalOcean: в среднем одно ядро имеет производительность в 5kh/s (независимо от конфигурации), генерирую, при текущей сложности, 0.003 LTC в сутки. Что по текущему курсу $0.1 в сутки или 3 доллара в месяц. При стоимости самого дешевого сервера в 5 долларов за месяц.
    • 0
      Да, только:
      1) есть всякие промокоды вроде DIVEIN10, $10 на счёт.
      2) есть валюты и повыгоднее лайткоина, даже можно сказать, что сейчас почти всё что угодно выгоднее лайткоина как объекта майнинга. См. coinwarz.com
  • +1
    Я правильно понимаю что майнинг в каком-то смысле гонка? И то что вы сейчас майните может оказаться бесполезным если кто-то «придет» раньше вас?
    • +1
      Если занимаетесь соло-майнингом, то, скорее всего, так.
      В пулах все получают долю от переданных решений.
  • +6
    Лучше б протестировали майнинг litecoin. Про майнинг bitcoin на процессорах Intel давно все ясно.
    • +3
      Мы его тоже потестировали, но в litecoind был сломан счетчик hashespersec, после введения всех серверов в пул мы получили 600kh/sec, что дало 0.3 LTC в сутки. А вот попробовав с такой скоростью помайнить FTC (feathercoin) в пуле, получилось, что этой скорости хватает на 8-10 монетов в сутки.
      • 0
        NVC ещё попробуйте — относительно лёгкая генерация.
        • +1
          Тесты делались для понимания разницы скорости вычисления между scrypt и sha-256, Feathercoin попался под руку, так как был в том же пуле доступен для майнинга.
          • 0
            А какую мощность потребляет Intel Xeon E5-2630, который 13 MH/s выдаёт?
            И сколько платите за КВт/ч? :)
            • +1
              Не больше чем у него спеке написано =)
              Порядка 3.0 — 3.5 рублей.
              • +2
                Ну, вот с ним, получается, можно быть в ощутимом плюсе, при генерации форков. Может ну его — хостинг? :)
                • +2
                  Форки сгенерировать не проблема, проспекулировать ими в последствии — вопрос. ASIC block erupter же дает в разы больше и за меньшее количество энергии. Взять атом, обвесить хабами, наподклчить ASICов)) тем более новых на базе bitfury… и понеслась…
                  • 0
                    Ну я говорю о ваших текущих возможностях при текущей цене на тот же NVC.
                    И так неплохо)
                    • +5
                      У нас батхерт еще с 2011 года, мы тогда думали майнить на всех серверах, которые мы еще не отдали клиентам… боюсь даже представить сколько было бы на данный момент монеток…
    • +4
      Использовать даже самый мощный сервер для майнинга только на процессоре совершенно бесполезно

      Действительно, разве это было не очевидно ещё до начала эксперимента? Сейчас уже появляются железки по 25000 Gh/s, а вы со своими процессорами…
      • +6
        У нас была задача не заработать, а ранжировать процессоры по производительности на интересной многим задаче. А выводы уже описали по итогу.
    • 0
      Лайткоины требовательны к памяти и прочим параметрам, насколько я их понимаю. т.е. тут тупо крутым процессором не выкрутишься, в этом их фишка.
  • 0
    Кто нибудь может пояснить какую задачу решают участники майнинга, в википедии ничего нет на этот счет.
    Здесь написано что это какая-то криптографическая задача. Всё таки, что все так усиленно решают? Есть какой-то смысл или функция синтезирована и её решения бесполезны на данный момент.
    • +5
      Никаких полезных действий вычисления не несут, просто proof of work.
    • +1
      Они перебирают различные варианты seed значений (просто набор байт) и генерируют хэши на основе данных блока, транзакций и seed.
      Задача — получение «красивого хэша» (который начинается с определенного количества нулей).
      Читайте документацию, там нормально описано.
    • 0
      Мне кажется термин mining не правилен, правилен verifier — заверитель.
    • 0
      Смысл функции только один — ограничение эмиссии.
      • +2
        Эмиссия — побочный продукт, существующий в основном для мотивации майнеров.

        Основной смысл подписи — ограничение возможности генерации блоков истории транзакций, что необходимо для того чтобы полные клиенты хранили гарантированно одинаковую историю.
        • 0
          Я не про саму подпись, а про ресурсоемкость функции.
          • +2
            Так и я про неё же. Медленная генерация блоков исключительно для поддержания порядка в истории. Только константа 10 минут взята слишком произвольно с потолка, часть форков паразитирует на том, что хорошо бы блоки генерировать почаще.
            • 0
              ИМХО 10 минут на блок — нормальное время. Не думаю, что с потолка, видимо были какие-то причины у авторов.
    • +1
      Функция полезна в рамках сети криптовалюты, для остального мира она бесполезна. С помощью вычислений подписывается блок транизакций. Нет единого центра в котором хранятся все транзакции и нужен способ чтобы любой участник сети мог проверить что транзакции настоящие.
      Формула примерно такая
      Y < hash(block + X)

      нужно найти X, чтобы Y был в меньше определенного числа. Этим числом Y меняется слложность вычисления.
      Т.е. ты делаешь полезную работу для сети и получаешь за это вознаграждение.
      • +2
        Лучше б белки считали в Folding@Home, честное слово.
        Жаль столько мощностей тратить фактически впустую.
  • 0
    Амазон вроде анонсировал не очень давно инстансы с видяхами. На них никто майнить не пробовал?
  • 0
    Недавно обновил себе железо и появилось много процесорного времени.
    В начале решил помайнить биткоины, но быстро понял что это бесполезно.
    Потом решил попробовать лайткоины.
    Запустил на 6ти PX90(hetzner) cpuminer в 4 треда, так чтобы не особо мешал.
    Пиковая скорость — 400k/h
    А это практически ноль.
  • 0
    Всё написали, кроме самого главного: когда будете принимать к оплате?
    • +4
      Идет сбор документов, если всё пройдет хорошо, то в начале следующего года.
      • +2
        Расскажете потом о юридической стороне вопроса? (В том числе, если не получится.)
        • +4
          Боюсь, что это не будет каким-то открытием, так как мы просто запартнеримся с процессинговым центром, который конвертацию будет осуществлять самостоятельно, а мы работать с привычными валютами.
          • +1
            > мы просто запартнеримся с процессинговым центром, который конвертацию будет осуществлять самостоятельно
            В России уже есть процессинговые центры, принимающие BTC? Или с одним из зарубежных будете работать?
            • 0
              Уже есть в России ;)
  • +1
    /offtopic
    пользуясь случаем — отдам 50% за вывод средств с остатка на счете 50ВТС. Не гербалайф. :))
    /offtopic

    А по теме — наверняка все пробовали майнить на домашних/рабочих компах/станциях/сетях(?) и быстро поняли, что само по себе «намайненое» не покрывает затрат на электроэнергию (или, тем более, на аренду техники) без экспоненциального роста курса битка. Так что топик — просто хорошая реклама Селектела на волне интересной темы (биткоинов). ))
    • +1
      Вы дадите 25 биткоинов за вывод $50000?
      • 0
        Перечислю 25 биткоинов за вывод 50 биткоинов, т.е. 50%.
        Устроит?
        • 0
          Вывод куда именно? Счет в банке? В Рф? Okpay?
          • +2
            Вывод с учетки (на 50ВТС) на личный кошелек.
            ВТС на ВТС, без конвертации. Проблема в том, что все исходящие платежи на этой бирже висят «в обработке» дольше чем идет посылка из Китая в Иваново.
            • 0
              Так и в чем проблем с 50btc отправить btc к себе на кошелек биткоина (electrum, bitcoin-qt)?
              • +1
                Как бы вам объяснить… Видели баннеры «вы стопицотый посетитель и выиграли миллион»? Вроде как вот же написано, что есть, но где взять непонятненько
              • 0
                Исходящие платежи висят «в обработке» неделями. Ни одна транзакция еще не прошла.
                Вывод? Биржа умерла? Или изначально была кидаловом? )
                • 0
                  Они говорят, что их хакнули. И после этого хака многие пользователи обнаружили у себя биткоинов в несколько сот раз больше, чем было. Надеюсь, что можно будет забрать хотя бы свои деньги.
                  • 0
                    Было бы удивительно, если бы они говорили, что «все это была такая, типа, игра, мы поиграли, нам надоело и больше мы в это не играем.» ))
                    Сейчас они уже вообще ничего не говорят.
            • 0
              Вы действительно такой наивный или притворяетесь? Админ 50btc купил себе остров и живёт там с десятком сексапильных мулаток, а пользователям накрутил баланс, что бы пустить пыль в глаза на некоторое время. Но если вдруг выведете, то отдам вам свой аккаунт со 190 битками. Безвозмездно.
              • 0
                А отдайте мне :)
              • 0
                Разделяю Вашу точку зрения.
                Ради нагрузочного тестирования видеокарты запускал майнинг в пуле 50BTC (в пуле, потому как удобно удаленно проверять работает карта или все упало, при этом ничего кроме майнера устанавливать не нужно). Было это летом, и намайнила видеокарта что-то около 0,001 BTC. Сегодня зашел в забытую учетку и с удивлением узнал, что стал миллионером =)))) На учетке висит 222 BTC.
                ЗЫ.
                Помогите вывести, отдам половину =))))
    • –1
      Я намайнил 1 биткоин за месяц на двух машинах в апреле/мае/июне — довольно выгодно стало теперь :)
    • –1
      Ябпомог, но не понятно, чего вы сами не можете вывести.
    • 0
      Недавно зашел в свою учетку 50BTC, и хотя давно уже там не майню и все вывел. На балансе было 500 BTC !!)
      Конечно же сразу попытался вывести, но понятно что нифига не вышло)
  • 0
    а самим хостерам выгодно манить, если железки все равно просто так стоят?
    • 0
      Нет, т.к. электричество очень дорого.
  • 0
    Лучше бы вы Bitcoin принимать к оплате начали
    • 0
      Мы например как бы принимаем — но за все время только 1 платеж был биткоинами (
      • 0
        Без идентификации?
        Просто фишка при оплате биткоины ми что это анонимно.
        • 0
          Увы, но при оплате они как раз не анонимны…
          • 0
            существует 1000 и 1 способ сделать их анонимными, единственное что вы показываете при оплате — IP адрес, я думаю не нужно рассказывать как его можно скрыть?
            • +1
              Да, но единственное, что вы показываете при регистрации у нас — паспорт.
        • 0
          Да. Кроме email-а во многих случаях ничего не требуется.
  • 0
    В последнее время наши клиенты все чаще обращаются к нам с вопросами: можно ли использовать наши выделенные и виртуальные серверы для майнинга биткоинов?

    Многабукф, всё не по делу. Те, кто пытались майнить дома, отлично знают трудоёмкость/теплоёмкость/электроёмкость/звукоёмкость и прочие неприятные ёмкости майнинга в современных условиях. Если сервер простаивает (например, это сервер видеоконференций), в чём проблема того, что клиент намайнит полблока или четверть? Всё равно цена для клиента за сервер будет та же.
  • 0
    Тоже недавно баловался. Загрузка лезвия того не стоит :)

    image
    • 0
      У вас 4-х процессорное лезвие?
      • 0
        Со скриншета вверху — да.
        • 0
          Это HP? Адская печка :)
          • 0
            Да, HP Proliant BL680c G7.
            Не такая уж и печка :)
    • 0
      давно думал собрать фермочку, т.к у меня есть один могильничек где взимается фиксированная плата за электричество, без учете потребления, киловат 15-20
  • 0
    Ребята, пожалуйста, не делайте так
    •2 x Intel Xeon E5-2630 6 ядер 2.30 ГГц = 27.6 ГГц

    глаза режет)
    В остальном же согласен, майнить на CPU (как и кодировать видео) не так выгодно, как на GPU. Для примера: Q6600 @ 3Ghz дает 13.8 MH/s, а GTX560 без разгона 75-77 MH/s.
    • +1
      Кто ж на нвидии майнит-то?
      • +1
        Те, кто специально под майнинг не покупает видеокарты. Цель сравнения была в том, что бы показать принципиальную разницу в производительности между процессорами видеокартами.
  • 0
    Кто же на обычных процессорах майнит…
    Надо датацентр с асиками открывать )
    • 0
      Идея не нова, уже имеется.
  • 0
    Это пять:
    числовое значение числа заголовка


    Вот ещё:
    Вскоре после запуска теста процессор Atom неожиданно перестал отвечать на запросы к API

    Наверное, отвечать на запросы к API перестал всё-таки не процессор, а Bitcoind.

    И ещё:
    На данный момент в связи с возрастанием сложности практически нереально получить блок, не обладая гигантскими вычислительными мощностями. Конечно, можно подключиться к пулу — но ждать все равно придется долго.

    Между подключением к пулу и вероятностью намайнить блок нет никакой связи. Пул предназначен только для того, чтобы делить доход счастливчиков между всеми участвующими майнерами (и владельцами пула). Неплохая старая статья про это: habrahabr.ru/post/119456/

    Вообще неясен смысл эксперимента. Таблицы эффективности для майнинга биткойнов давно известны. Универсальные процессоры сливают видеокартам. Видеокарты сливают асикам. Выплаты пула за pps не окупят даже электроэнергии.
    • 0
      Вообще неясен смысл эксперимента.

      Проверить можно ли так окупить хостинг. Ведь заманчивая идея.
      Таблицы эффективности для майнинга биткойнов давно известны.

      Только тем, кто серьезно изучал вопрос. Мне вот например нет. А из того, что CPU сливают GPU вовсе не следует, что майнинг на CPU убыточен.
      • 0
        Набрать в Гугле «bitcoin mining performance comparison» и тут же найти официальную простыню en.bitcoin.it/wiki/Mining_hardware_comparison — это теперь называется «серьёзно изучать вопрос»? Вы нагородили такой огород, хотя готовый ответ мог быть найден за минуту.
        • –1
          Где там выводы об убыточности? Не о преимуществах одного над другим, а об убыточности одних вариантов и прибыльности других, причем в российских условиях?
          • 0
            Если нужно в разжеванном виде, то ищете что-нибудь вроде «bitcoin pps cost» и тут же находите, например, такой ресурс, как btcsec.com/en/bitcoin-calculator/
            • 0
              Это ещё нужно знать что искать. Плюс разобраться в том, что нашел. Тут же простым русским языком написано, что нет смысла арендовать обычные серваки для майнинга не потому что есть лучшие варианты майнинга, а потому что проще вообще не майнить.
  • 0
    Сейчас генерация биткойнов наконец-то слезла с реальных вычислительных мощностей (процессоров, видеокарт), на специфические (асики), а первые можно использовать для более полезных целей.
    А если так сильно хочется майнить — вон, у тех же бабочек (butterflylabs) не так давно появились в аренду «облачные» гигахэши — примерно 10 баксов за гигахэш в год. Вроде на первый взгляд выглядит всё «в шоколаде» — вложил сотню, получил 10 гигахэшей которые генерят (в пересчёте по курсу) примерно по 6 баксов в день. Одна только загводка: когда это «личное облако бабла» введут в строй, никто не знает. А вспоминая, как «физические» асики кто-то ждал по полгода и больше — с виртуальными гигахэшами может оказаться примерно так же.

    OFFTOP: обратил внимание, что страничка с прайсом бабочек (http://products.butterflylabs.com) заблокирована. Интересно, что там нашли — пропаганду суицида, наркоты или детской порнографии?
    • 0
      У меня все открывается.
  • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    А скажите, можно использовать компьютеры в офисе?
    Допустим офис 100-200 компов, сеть 1Гб или 100Мб, + сервера.
    Можно ли эти мощности задействовать?
    • +1
      Допустим, у вас в офисе в компах процессоры Core i3-2100 или что-то похожее. Допустим, майнить вы будете на 3 потоках из 4, что бы хоть как-то этим компом пользоваться. Это даст в районе 6 MH/s с одного компа. Значит, 600 MH/s со всего офиса, если у вас там 100 компов. Это равняется производительности видеокарты HD7970, которая стоит порядка 500$. Ваши офисные компы в количестве 100 штук только за счет процессоров будут кушать примерно 6 квт/ч электричества в час, а HD7970 кушает около 250 ватт в час. С производительностью в 600 MH/s можно намайнить примерно 0,007 BTC за месяц непрерывной работы, по текущему курсу это около 8,5$.
      • +1
        Один ASIC за 900 рублей дает 333MH/s и кушает всего до 4W
  • 0
    Зачем гонять все это вживую, если вычислительная мощность уже известна, и можно математически рассчитать вероятность нахождения блока?

    Для тех же 12 Mh/s если сложность не будет больше увеличиваться потребуется в среднем всего лишь 8028 лет.
    • 0
      Для этого существуют пулы — блок ищут сообща и при нахождении делят полученное на всех, пропорционально их вкладу в дело. Поэтому майнить можно и на небольших мощностях, вопрос лишь в рентабельности.
  • –1
    Халявы нет.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разное