Pull to refresh

Comments 37

А нельзя все что в CI крутится — отрубить от внешнего мира? На вход — только код, на выход — только артефакты, и никакого доступа в сеть?

В CI часто устанавливаются зависимости проекта из внешних репозиториев (npm, packagist, и д.р.).

И что будет в whitelist? Весь GitHub, Dockerhub и т.д.? А смысл? Весь код и так там. Создаётся новый репозиторий, в него заливается что угодно и вперёд.

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

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

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

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

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

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

Мне кажется, что требовать от бесплатного CI работы за секунды — нагло и бесцеремонно.
Никто ж не предлагает платный тормозить.

Действительно, почему бы всем тем, кто нормально использовал бесплатный сервис не поужаться, если майнеры обнаружили что на нем можно заработать?
Это «новое цифровое золото» давно уже не только электричество потребляет, но и весьма ощутимо бьет по кошелькам тех, кто криптовалютами не пользуется. Ну ничего, начали же геймеры платить в разы больше за более слабые видеокарты, ну так и пользователи СI привыкнуть, что за то что раньше было бесплатным теперь нужно платить либо страдать. Пусть скажут спасибо, что не блэкауты как порой бывает.
Ну давайте поругаем море, авось шторм пройдёт.

Cicd с такими задержками не рабочий инструмент

Для подписчиков задержек не должно быть.

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

У меня CI гоняет нагрузочное тестирование, и оно требует внешних элементов.
Впрочем, функциональное тестирование без моков точно также требует внешних элементов.

Разумнее было бы сделать белый список ресурсов куда можно стучаться из CI. Тот же npm к примеру.

А помимо proof of work (CPU) и proof of space (SSD/HDD)
может есть например proof of traffic, а то у меня интернет безлимитный...

Да, есть валюта, поддерживающая децентрализованный стриминг — например, Theta.
там вообще CPU\GPU тоже нехило так используется, я проверял
Это для отдельного процесса — транскодинга видео. Его можно отключить, оставив только ретрансляцию.

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

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

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

идея простая — если майнинг происходит на системе, где это запрещено правилами, это считается нелегальным


Нужно придумать, как запретить подсчет sha-512 и использование циклов.
Увы, результат математических вычислений не зависит от машины. Если каким-то образом он не будет засчитываться с адреса 1.1.1.1 (github), то будет переправляться на «легальный» адрес (2.2.2.2) и оттуда уже засчитываться, будто б там и был рассчитан.

Это уж надо прямо другую математику на машине иметь, чтоб избежать такого ;-)

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

Пора уже всем геймерам, разработчикам и просто хорошим людям бить майнеров по лицу…

Я бы предложил просто ломать ноги, но боюсь меня никто не поддержит. Кроме проблем всей IT индустрии эта категория людей, мне кажется, ничего не производит. Много хайпа, много движухи, мало толку для кого-то кроме них. Но да, я помню, никто никому ничего не должен. И всё же… Эмоционально они воспринимаются, как "класс" людей занятых не пойми чем и одновременно ничего не делающих.

Криптовалюты.
Ожидание: анархия, анонимность, киберпанк.
Реальность: раковая опухоль на теле IT индустрии.
А какие вообще прорабатываются способы борьбы с майнингом? Где почитать?

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

Когда появляется tor/vpn/onion/you name it, поддерживающие свободу от цензуры, ими пользуются распространители наркотиков и детской порнографии, и появляется пропаганда, что «эти ваши випиэн никакая не технология будущего, и с ними надо бороться».

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

Так вот, ответ прост. Бороться надо с нечистью, а не с технологией.
Надо бороться с чёрными майнерами (программно, как научились это делать в браузерах, чтобы не майнилось монеро). Надо бороться с черными репозиториями (да, подключать службу поддержки и живых людей, и пытаться автоматизировать). Надо бороться с черными сайтами (да, делать контрольные закупки и проводить расследования, где и как производят наркоту, и ловить, а не просто «блокировать»).

Да, блин, это сложно. Лёгкий путь «заблокировать» и «запретить» — это не решение, совсем. Как и пропаганда про «телеграм для террористов» или «vpn и твиттер для детской порнографии».
Проблема в том что в крупных масштабах этими плохими штуками в основном занимаются свои же…
Поэтому борьба с ними символическая, ловят только тех кто отдельно от главной банды.
Те кто по-крупному занимаются — любой свой софт могут сделать.
Это лишь отмазка чтобы бороться с анонимными мессенджерами и сетями. Нужно чтобы на каждого можно было легко вести досье. Не дай бог кто-то станет народным активистом в оппозиции, должен быть простой способ его потихому угомонить.
Only those users with full accounts are able to leave comments. Log in, please.