Часто на Хабре можно встретить комменты в духе «Майнер — хороша замена/дополнение к рекламе на сайте» или «Я лучше отдам 10-40% CPU». Данная статья приведёт аргументы, почему такие утверждения в корне неверны. Также статья выдвинет предположение, как можно решить приведённые проблемы (не все), позволив майнерам стать дополнительным источником монетизации, что может положительно сказаться на вебе.

Справка: майнер — это программа для майнинга криптовалюты. Может встраиваться в сайты, принося автору сайта прибыль. Майнинг может использовать как мощности процессора, так и видеокарты (javascript может запускать шейдеры с помощью WebGL).

Почему майнер — зло


Данные причины могут быть очевидны многим, но выступающие за майнинг их не учитывают.

  1. Пользователь купил дорогую процессор/видеокарту чаще всего не для того чтобы половину ядер отъели майнеры. Допустим, я потратил на процессор 20к. Если у меня отожрут половину его ядер, получается, 10к потрачено впустую. А если я купил дешёвый процессор/видеокарту, то этот пункт ещё критичнее, ведь тогда ресурсы мне ещё важнее.
  2. Из-за недобросовестных майнеров лагает не только открытый сайт, но и другие сайты и даже вся система. Но если вы — добросовестный майнер, отжирать только часть ресурсов — не решение, т.?к:
    • Это всё-равно не гарантирует отсутствия лагов.
    • Если пользователь открыл несколько вкладок, и майнят сразу несколько сайтов, то мы всё-равно получим превышение, после которого начнутся лаги. В условиях, когда могут быть открыты сотни вкладок, такой сценарий очень вероятен.
    • Аналогично мы получим превышение, если пользователь сам запустил какие-то программы.

    Лаги из-за майнинга сложно контролировать. Как пользователю, мне лучше вообще было не открывать тот сайт, чем получить лаги. Только не всегда я знаю о майнере.
  3. Если сайт не уведомил меня о майнинге, он просто может мешать моей работе. Например, если я купил 8 ядер, то будут времена, когда они будут простаивать, но будут также и времена, когда они нужны все. Один из самых простых примеров — я решил посмотреть фильм, но не смог сделать это из-за майнера. Причём насколько бы мощный комп Вы не купили, его ресурсы будут отжираться майнером.
  4. Майнинг — это перевод электричества в деньги, поэтому майнер, который не уведомляет меня о своей работе, по факту крадёт мои деньги, т.?к. оплачивать затраченную электроэнергию приходится мне.
  5. Майнер приводит к разряду батареи.
  6. Майнеры не могут проверить, запущены ли майнеры на других открытых сайтах. Уже открыв несколько вкладок можно полностью перегрузить систему.
  7. Обычно для нормальной работы всегда должно быть свободно какое-то количество ресурсов. Майнер не может узнать, сколько ресурсов свободно в данный момент.
  8. Майнеры вызывают шум вентилятора.
  9. Майнер обычно действует скрытно. Например, увидя сайт с рекламой, я могу отдать предпочтение другому сайту, т.?е. у меня есть выбор. А вот с майнером выбора у меня нет.
  10. Неопытные пользователи могут не понимать, почему лагает система.
  11. Когда Вы поняли, что Вам мешает майнер, поиск вкладки с майнером очень раздражает. А ещё хуже, когда Вы не поняли, что Вам мешает майнер.
  12. Добросовестность майнера трудно контролировать. При этом добросовестные майнеры — редкость.
  13. Нагрев устройства (ноутбука, мобильного телефона и т.?д.).
  14. Достаточно критичные финансовые проблемы (см. ниже).

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


Финансовые проблемы

  1. Если бы все сайты начали устанавливать майнеры, прибыль, которую они могут получить, тоже бы падала, т.?к. ресурсы пользователя ограничены. Даже сейчас прибыль очень мала, а что, если она упадёт ещё в 10 раз? При этом неудобства пользователю мы причиняем огромные.
  2. Отличия в стоимости электричества. Например, часть пользователей потратив 2$ могут сгенерить только, к примеру, 1$.
  3. Производительность. Но этот пункт вряд ли применим, т.?к. javascript может майнить на видеокарте с помощью шейдеров, написанных на GLSL. А если мы говорим о майнинге на CPU, то подразумевается валюта, заточенная именно под CPU — на видеокарте её майнинг невозможен или неэффективен. Причём для ускорения на CPU мы можем поюзать WebAssembly.

Усиление экологической проблемы

Раньше электричество для майнеров было не бесплатное, поэтому невыгодным майнингом они не занимались. Но когда работа начала перекладывается на пользователя, майнеру больше нет смысла экономить, что приведёт к намного более огромным тратам электричества.

Если раньше потребление электричества было равно рыночной стоимости монет (и тоже было огромным), то теперь увеличится ещё в несколько раз. Очень сомнительная перспектива.

Решения некоторых проблем


п.?2 (лаги), п.?3 (мешает работе), п.?6 (несколько вкладок) и п.?7 (оставление свободных ресурсов) можно попытаться решить программно, например, делая раз в секунду на долю секунды тестовую загрузку на 100%, и проверяя, сколько вычислений удалось провести. Из минусов:

  • Мы не можем узнать, насколько сильно мы при этом ущемили другие процессы, поэтому определить таким способом свободные ресурсы можно было бы только в случае, если бы мы запускались с самым низким приоритетом, но такой возможности нет.
  • Определение будет с задержкой.
  • Невысокая точность.
  • Не учитывается наличие скачкообразных нагрузок. Особенно этот пункт актуален на видеокарте — нам часть может потребоваться много ресурсов (от общего процента) на короткое время.
  • Нельзя учесть использование shared-ресурсов. Например, даже если майнер будет работать в половину мощности, это не значит, что он не может забить кэш L3, который может кому-то понадобиться. Кроме того, забитие кэша понизит производительность однопоточных приложений.

п.?5 (разряд батареи) — можно решить, если браузер будет уведомлять, подключено ли устройство от сети.

п.?8 (шум вентилятора) и п.?13 (нагрев устройства) — можно решить, если установить в браузере настройку, какой процент ресурсов может быть суммарно задействован в системе. Данная настройка должна учитываться сайтами. Из минусов — она может использоваться для отслеживания.



Решение сразу всех пунктов (кроме финансовых и экологических)


Решить сразу все пункты можно, если браузеры будут заносить в чёрный список сайты с майнерами, не соблюдающими следующие правила:

  1. Майнер должен оставлять как минимум 50% свободных ресурсов вне зависимости от нагрузки системы. Если система уже загружена на 50%, майнер не должен работать.
  2. Майнер должен посылать браузеру специальное уведомление о майнинге. Данное уведомление браузер отобразит значком в адресной строке, а также на самой вкладке, как это уже делается с проигрыванием аудио.
  3. Майнер не должен работать, если пользователь запретил майнинг на всех сайтах или на текущем сайте.
  4. Майнер не должен работать при работе от батареи.

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

Недостаток в том, что проверять сайты очень трудоёмко, а также майнер может показываться не всем посетителям. Другой недостаток — не решён восьмой пункт (шум вентилятора).



Более продвинутое решение


Более продвинутое решение — встроить майнинг прямо в браузер, тогда сам браузер автоматически проконтролирует выполнение всех пунктов, а пользователю не будет доставлено никаких неудобств (обратите внимание на четыре правила, которые я привёл выше). Автору сайта остаётся лишь выбрать, какую валюту майнить.

Преимущества

  1. Теперь все встроенные майнеры будут считаться недобросовестными, т.?е. выявление майнеров не станет сложнее, чем сейчас. В предыдущем же способе это было усложнено.
  2. Мы можем обеспечить лучшую производительность (равно как и худшую, т.?к. нет конкуренции между программами-майнерами).
  3. Решёна проблема с шумом вентиляторов, ведь теперь настройка мощности хранится в самом браузере и не передаётся сайтам, а значит и не может использоваться для отслеживания.
  4. Простота настройки для автора сайта.

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

Недостатки

Решение обладает рядом существенных недостатков:

  1. Поддерживать это всё со стороны браузеров трудоёмко. Особенно трудоёмка поддержка разных программ-майнеров от разных валют. С другой стороны, браузеры могут получить дополнительную монетизацию за счёт продвижения определённых валют.
  2. Девятый пункт (отсутсвие выгоды, когда все начнут майнить) мы побороть никак не можем. Это значит, что разработчики браузеров должны проделать огромную работу, которая может не принести никакой пользы вебу.
  3. При определении свободных ресурсов осталось много нюансов. Мне, как пользователю, выгоднее отключить майнинг. Впрочем, отключив общий майнинг, я могу принудительно включить его на любимых сайтах, благодаря чему им не придётся конкурировать с остальными сайтами.
  4. Прибыльность майнинга очень нестабильна. Мало кто захочет реализовывать функционал, польза которого очень сомнительна.
  5. Не решена ни одна из проблем, описанных в разделе «Финансовые проблемы».
  6. Не решена экологическая проблема, в которой траты электричества увеличиваются в несколько раз по сравнению с текущей ситуацией, т.?к. майнерам больше не нужно экономить на электричестве. Ну и просто, поддерживая майнинг, мы поддерживаем бессмысленную трату энергии.


Итоги


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

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


Нужно также отметить:

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

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

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

P.S.: Эта статья — не истина в последней инстанции, поэтому было бы интересно услышать другие аргументы, которые я упустил.

P.S.: Эта статья не выступает за или против майнинга, а лишь указывает недостатки, способы их исправления и преимущества. Но если определять точку зрения, то скорее против, т.?к. без поддержки браузерами не имеет смысла, а с поддержкой никогда не окупится и имеет ряд других серьёзных проблем.

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


  1. aamonster
    30.01.2018 14:29

    "Более продвинутое решение — встроить майнинг прямо в браузер"
    Зачем в браузер? Давайте сразу деньги с пользователей собирать и распределять их между сайтами через РАО!
    (здесь должна быть табличка "Sarcasm")


    1. Schokn-Itrch
      31.01.2018 02:36

      Что за крамольные мысли? Так на вас Михалков в суд подаст.

      Даёшь скрытый майнер в каждый носителе информации, «анализатор», «думатель» и «неонку»! А всех, кто блокирует, задерживать на 24 часа и колоть, колоть, колоть.


  1. m1n7
    30.01.2018 14:52

    встроить майнинг прямо в браузер

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


    Добро пожаловать в дивный новый мир


    1. Vest
      30.01.2018 15:00

      Вы забыли ещё про «умные устройства» добавить — пусть часы/телевизоры/приставки/читалки/чайники тоже зря не простаивают :)


      1. leshakk
        30.01.2018 21:34

        А насчёт чайника — это идея!
        Раз чайник всё равно электрическую энергию в тепловую преобразует,
        так пусть делает это не просто так, а с пользой.
        Осталось только придумать, как майнер на чайнике запустить...


        1. imwode
          30.01.2018 22:41

          Майнер может и нет, а вот генератор случайных чисел — вполне


          1. domix32
            31.01.2018 10:22

            BREAKING NEWS: спецслужбы обведены вокруг пальца обычным чайником


            1. IGR2014
              31.01.2018 14:15

              Прям вижу XXII век, в котором заходишь в туалет чтобы помайнить


  1. exformat
    30.01.2018 16:19

    да ну фтопку… запретить этот веб майнинг на уровне ос. толку от него никакого, а грузит неслабо… не горю желанием тратить возможности своего ПК на чью-то прибыль.


    1. vitaliy2 Автор
      30.01.2018 16:52

      На уровне ОС? Это как? Или Вы про определение некоторых скриптов как вредоносных антивирусами?


      1. Self_Perfection
        30.01.2018 19:53

        Ограничить файрволлом доступ к майнинг пулам? Мера может быть эффективной до тех пор пока не начнёт применяться массово, обойти это создателю сайта, понятно, нетрудно.


      1. Legion21
        31.01.2018 01:27

        на уровне анализа трафика — легко, так вроде антивирусники эту дичь и определяют…


    1. leshakk
      31.01.2018 00:00

      Вангую появление в скором времени (а может быть, они уже появились) соответствующих фильтров для AdBlock/uBlock/etc. Для тех, кто еще не поставил такой блокировщик будет дополнительный повод сделать это.


  1. Akdmeh
    30.01.2018 16:22
    +2

    Да у меня Хром с обвеской плагинов и 8 открытыми вкладками съедает 2GB оперативной памяти (еще в 2010 году этой памяти было вполне достаточно для большинства офисных задач).
    Куда уж еще больше нагружать оперативную память и процессор…


    1. VBKesha
      30.01.2018 17:17

      В 2010 с таким количеством оперативки можно было вполне себе играть на компе. А не то что офисные задачи.


  1. elve
    30.01.2018 16:41

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


    1. vitaliy2 Автор
      30.01.2018 17:12

      Майнер, не перегружающий систему не будет мешать сайту, т.?к. исполняется в отдельном потоке. Причём это справедливо даже для нынешних майнеров (но поскольку они перегружают систему, то лагать всё-равно будет, и очень сильно).

      А тот js, который исполняется на сайтах, он исполняется в один поток, поэтому лаги намного более вероятны. Впрочем, нагружает обычно не сам js, а отрисовка и прочая работа с dom, которая исполняется в том же потоке (браузер может исполнять часть операций в другом потоке, но как и перестановкой инструкций в процессоре, как только мы обращаемся к результату предыдущих вычислений, дальнейшая оптимизация скорости невозможна).


    1. lexxpavlov
      30.01.2018 17:15

      Формально, это увеличивает вариативность монетизации сайта:
      1) Реклама
      2) Подписка
      3) Донат
      4) сабжевый майнинг — то есть, как бы явно разрешённый пользователем майнинг
      Может, какие-то другие способы я пропустил? (не считая незаконные, типа кража данных о карточках и ПДн и пр.).


  1. pyrk2142
    30.01.2018 17:39

    Насколько эффективен такой майнинг? Не получается ли так, что пользователь отдал 10$ за электричество, а владелец сайта получил 1$ (а то и ещё меньше)?


    1. Revertis
      30.01.2018 20:44

      Так и получается обычно, об этом просто не говорим. Эффективно сейчас только на видеокарте получается майнить. И то, если майнер-программа написана оптимально, электричество не особо дорогое и т.п.


    1. vitaliy2 Автор
      30.01.2018 23:34

      Javascript может майнить на видеокарте с помощью шейдеров, которые пишутся на GLSL. Впрочем, сам WebGL может показывать разные результаты по сравнению с другими библиотеками (как лучше, так и хуже).

      Если же мы говорим о майнинге на CPU, то надо понимать, что подразумевается валюта, заточенная именно под CPU — на видеокарте её майнинг невозможен или неэффективен. И опять же, для ускорения мы можем поюзать WebAssembly либо asm.js. Хотя конечно это не значит, что мы достигнем полностью нативной скорости.

      Как результат, указанной проблемы не должно существовать. А если мы говорим о майнере, встроенном в браузер, то никаких ограничений нет вообще. Но кроме производительности программ ещё есть стоимость электричества.


    1. Funix
      30.01.2018 23:37

      А именно так и получится. КПД на самом деле никакущее.
      Но поскольку для владельца кошелька все полученные таким путем деньги все равно — «халява», ему строго без разницы на какую сумму (и прочие неприятности) влетит пользователь ресурса. Именно в этом и есть вся суть недобросовестности такого вида «монетизации».


      1. vitaliy2 Автор
        30.01.2018 23:38

        Смотрите мой коммент выше. Если майнер нормальный, так не должно получиться.


    1. dionket
      30.01.2018 23:39

      Примерно так и получится. Пробовал я этот майнер на javascript, у него производительность около 25% от нормального.
      Попал я как-то на сайт с майнером, сайт ресторана, при нагруженном на 100% своими задачами процессоре и включившимся майнером на сайте я этот сайт около минуты закрывал, не мог курсор с места сдвинуть и с клавиатуры ничего не работало. Я им написал, ответа не получил, больше у этих жлобов ничего не заказываю.


      1. vitaliy2 Автор
        30.01.2018 23:41

        А как Вы замерили производительность 25%? А вообще в статье говорится не о криво написанных майнерах, а о майнерах, использующих все доступные технические средства. Их производительность не должна быть сильно ниже нативных (см. мой коммент выше).


        1. dionket
          31.01.2018 05:09

          Сравнил хэшрейт XMR-Stak и javascript майнера для браузера. Браузерных майнеров использующих GPU я еще не видел.


  1. boblenin
    30.01.2018 20:50

    Майнинг выгоден настолько, чтобы это имело смысл из-за перегретости. Перед выходом на стабильный уровень будет еще отскок.

    Ну и наконец… когда же уже гринписы и всякие смузи, вайполюбы наконец-то примутся уже за криптовалюты. Это ж зараза похуже пластиковых пакетов.


  1. maslyaev
    30.01.2018 20:54

    Более продвинутое решение — встроить майнинг прямо в браузер
    Уйду в тот браузер, который не майнит.

    А вообще давайте себе представим такую ситуацию. Чисто гипотетическую. Пофантазируем. Никто ведь не запрещает, правда?
    Допустим, на волне золотой лихорадки майнинг встроили куда только можно. Не только в сайты, текстовые редакторы и записные книжки, но и в смарт-ТВ, кофеварки, тостеры и даже бортовые компьютеры автомобилей. А почему нет, когда бабосика хочется так, что просто невтерпёж? Холодильник урчит и потихоньку майнит, автомобилька едет и тоже майнит, экскаватор роет траншею, и тоже заодно майнит.
    А потом хренак, и вся тема основанных на PoW блокчейнов нежданно-негаданно оказывается тупиковой веткой человеческой мысли. Ну то есть внезапно придумали, как делать «P» без «W». Вот потомкам будет потеха погадать, зачем в тостер встроена схема, непрерывно считающая миллиарды хешей…


    1. alexeykuzmin0
      30.01.2018 23:13

      А потом хренак, и вся тема основанных на PoW блокчейнов нежданно-негаданно оказывается тупиковой веткой человеческой мысли. Ну то есть внезапно придумали, как делать «P» без «W».
      PoS уже придуман


      1. maslyaev
        30.01.2018 23:15

        PoS — это костылик к PoW. В основе любого PoS лежит старый добрый PoW.


    1. vitaliy2 Автор
      31.01.2018 00:27

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


      1. maslyaev
        31.01.2018 10:12

        Знаем мы, как это бывает. Сначала можно, потом можно, но трудно, а потом и совсем нельзя.


      1. ozonar
        01.02.2018 13:10

        Зачем мне ставить браузер, к примеру, родственнику, зная что мне придётся лезть в настройки и что-то там отключать (и может быть не раз), если рядом есть браузер, но только без майнинга?

        Вообще, не дан ответ на самый важный вопрос — зачем это нужно браузеру?


        1. vitaliy2 Автор
          01.02.2018 14:12

          Ну Вы ведь уже сейчас ставите браузер с уведомлениями, и ничего. А ведь в уведомлениях даже общей настройки нет, если только на каждом сайте отдельно отключать — т.?е. выходит ещё хуже, чем с майнингом.

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

          Вообще, не дан ответ на самый важный вопрос — зачем это нужно браузеру?
          А какая польза браузеру от уведомлений?


  1. MaxAkaAltmer
    30.01.2018 21:01
    -1

    Я, например, вырубил WebGL, а майнинг на проце — его хорошо заметно, еще бы Роскомнадзор блокировал сайты со скрытым майнингом…


    1. MaxAkaAltmer
      30.01.2018 22:36

      Это мне за то, что я WebGL вырубил, майнеры минусят? Или за то, что Роскомнадзор предлагаю использовать в мирных целях? =)


    1. vitaliy2 Автор
      31.01.2018 00:31

      Это ужасное решение. Нужно вырубить WebGL в фоновых вкладках. Если всё-равно остался какой-то любимый сайт, который майнит, либо подумать о смене сайта, либо вырубить WebGL именно для этого сайта. А вырубить весь WebGL то же самое, что вырубить javascript, только эффект в данный момент значительно ниже.


      1. MaxAkaAltmer
        31.01.2018 10:16

        Браузер, имхо, не место для игр или САПР, поэтому ничего ужасного в этом для себя не вижу. Если даже мир сойдет с ума и сайты начнут делать только в 3D, уверен к тому времени и проблема со скрытым майнингом будет решена.


  1. alexeykuzmin0
    30.01.2018 23:13

    Забыт еще такой неслабый минус как обжигание коленей ноутом.


    1. vitaliy2 Автор
      31.01.2018 00:51

      Спасибо, добавил.


  1. some_name
    31.01.2018 00:31

    Майнер должен оставлять как минимум 50% свободных ресурсов вне зависимости от нагрузки системы. Если система уже загружена на 50%, майнер не должен работать.

    JavaScript-код сейчас исполняется в своей «песочнице» (мне так кажется) и доступ к такой информации о системе очень ограничен
    Майнер должен посылать браузеру специальное уведомление о майнинге. Данное уведомление браузер отобразит значком в адресной строке, а также на самой вкладке, как это уже делается с проигрыванием аудио.

    Отличная идея, вот это точно нужно реализовать, как была реализована опция «Не отслеживать»
    Майнер не должен работать, если пользователь запретил майнинг на всех сайтах или на текущем сайте.

    Это уже поддержка такой опции в браузерах.
    Майнер не должен работать при работе от батареи.

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

    При встраивании майнинга в браузер всё равно необходимо оповещать пользователя о поведении страниц как в предыдущем пункте.


    1. vitaliy2 Автор
      31.01.2018 00:33

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


  1. aPiks
    31.01.2018 00:33

    Новая Опера блокирует майнинг-скрипты на сайтах.
    И создает черный список из адресов, где скрипт был замечен.
    Скорее всего за ней последуют и другие. Сказке конец.
    А по поводу майнинга, когда вы спрашиваете об этом пользователя — наивно полагать, что кто-то может согласиться. Особенно в эру носимых устройств еле доживающих к обеду от одного заряда батареи.
    Майнинг — зло. Майнеры — тоже зло. Скоро видеокарты по цене самолетов продавать будут.


    1. vitaliy2 Автор
      31.01.2018 00:53

      Новая Опера блокирует майнинг-скрипты на сайтах.
      И создает черный список из адресов, где скрипт был замечен.
      Это очень хорошее решение. Блокируется по умолчанию или надо что-то включать?


      1. aPiks
        31.01.2018 10:53

        blogs.opera.com/russia/2018/01/new-year-new-browser
        вот тут детали и как включить.


    1. IGR2014
      31.01.2018 14:25

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


  1. vikarti
    31.01.2018 05:48

    Более продвинутое решение — встроить майнинг прямо в браузер, тогда сам браузер автоматически проконтролирует выполнение всех пунктов, а пользователю не будет доставлено никаких неудобств (обратите внимание на четыре правила, которые я привёл выше). Автору сайта остаётся лишь выбрать, какую валюту майнить.


    По сути сводится к тому что пользователь должен оплачивать однократный просмотр страницы. А собственно… почему бы и нет? То что это не делается сейчас — так потому что платить доли цента существующими способами — на transaction fee разорится.

    Встроить в браузер — отключаемый майнер чего то что можно майнить без ASIC/крутых видеокарт и заодно — какой то упрощенный кошелек (чтобы не тянуть целиком блокчейн). Добавить возможность пополнять этот кошелек извне (в том числе и с карты). Добавить в браузерный API возможность сайту попросить перевести указанную сумму на кошелек автора сайта за посещения в пределах сайта + автоавторизацию минимального платежа.
    Недостаток тут один — браузер становится платежным средством и логичным становится допустим покупка с того же встроенного кошелька в Steam (просто больше сумма транзакции). Появляется интерес у хакеров, появляется интерес у центробанков потому что террористы! педофилы! без лицензий! но можно ж жестко ограничить сумму транзакции так чтобы не возникала эта проблема, пусть даже для Steam'а не хватит уже этих лимитов.


  1. Shakhmin
    31.01.2018 12:54
    +1

    имхо — бред.


    js-быдло-майнеры встанут на одну ступень вместе с прочим вредоносным кодом. соответственно репутация у сайтов, которые их используют будет примерно такая, как и у сайтов с троянами сейчас.


    окупаемость таких майнеров — очень сомнительна. два xeon'а в полной загрузке дадут баксов 10 (да, десять) за месяц. это без js. c js и через браузер еще меньше.
    такое может быть интересно сайтам с миллионной посещаемостью и не совсем белой репутацией (как вариант — порноархив), если сайт параллельно еще и свой контетнт будет отдавать с нормальной скоростью.
    либо "хакерам", которые вместо злобного баннера будут вешать js-майнера на взломанные сайты.


    единственный способ борьбы с ними — это введение ограничений на вывод намайненных средств с пула (например не ниже, чем X), а для "новых" пользователей еще и с задержкой (первые несколько дней выводить нельзя). И параллельно ввести практику блокировки таких "новых" пользователей на пулах, если такой пользователь окажется скомпрометирован.


    делается несложно, а вот экономический эффект будет нести колоссальный — без профита никто майнер сажать на сайт не будет.


  1. agaruppa
    31.01.2018 15:14

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


    1. vitaliy2 Автор
      31.01.2018 15:15
      +1

      без моего согласия
      То, что Вы описали, явно не нормальный майнер. И нормальных сейчас не бывает, т.?к. нельзя сделать технически.


  1. hooyec
    31.01.2018 15:15

    Поржал со словоблудия про «кражу ресурсов». Давайте признаем это уголовным преступлением и будем сажать быдлокодеров и пропагандистов модной тенденции «НЕ НАДО ЭКОНОМИТЬ РЕСУРСЫ».


    1. MaxAkaAltmer
      31.01.2018 16:35

      Сарказм тут не уместен, по существу, это осознанное преступление с целью наживы и принятия никаких дополнительных законов не требует — электричество стоит денег, учитывая что хищение электричества происходит в особо крупных размерах и в данном деянии как правило участвует группа лиц — сроки очень серьезные можно получить. Это только по УК РФ 158. А еще за незаконное распоряжение чужим имуществом можно по совокупности из статьи УК РФ 160 добавить.