- PVSM.RU - https://www.pvsm.ru -

Майнинг на микроконтроллере ESP32 оказался не очень выгоден

Майнинг на микроконтроллере ESP32 оказался не очень выгоден - 1

20-летний немецкий программист Джейк описал свой эксперимент [1] по майнингу на микроконтроллере ESP32.

ESP32 — серия недорогих микроконтроллеров, которые используются в некоторых гаджетах, например, в браслетах, умных лампах и одноплатных компьютерах [2]. Майнинг на таких устройствах имеет мало смысла, но интересен как концептуальный эксперимент. Теоретически, можно представить, что в будущем количество умных устройств в мире кардинально увеличится. Возможно, кто-то уже сейчас продумывает технологию для создания гигантского многомиллиардого ботнета.

Джейк говорит, что на этот проект его вдохновила инициатива коллеги по майнингу на микроконтроллере ESP8266 [3]. Тот рассчитал вероятность успешного нахождения блока как 1 из 1e16. Блоки появляются каждые десять минут, так что это своеобразная лотерея, только шансы на выигрыш исчезающе малы.

Майнинг на микроконтроллере ESP32 оказался не очень выгоден - 2
Майнинг на микроконтроллере ESP8266

Так или иначе, но для проверки концепции Джейк взял уже найденный блок 56333 [4] и вычислил такие начальные параметры, чтобы микроконтроллер «нашёл» этот блок через небольшое количество раундов вычисления двойного SHA256 [5], как в реальной сети Bitcoin.

Код опубликован на Github [6]. Он использует TLS-библиотеку mbed (см. руководство [7]), осуществляет хеширование, проверяет каждый полученный хеш, затем останавливается в случае валидного результата или увеличивает значение nonce в противном случае — и продолжает считать. Когда программа останавливается на валидном хеше, то выдаёт результат в консоль:

Started mining...
Valid Block found!
Hash: 0000000000000000000740ba375bbafbb871e0e201ded9c260a8b6aa1537c3f0
With nonce: 423644052 | 0x19404b94
In 10000 rounds, 831.635000 ms
Hash Rate: 12.024506 kH/s

Как можно видеть, микроконтроллер майнит со скоростью 12 KH/s, то есть в десять раз быстрее, чем ESP8266. И это только одно ядро ESP32, пишет автор, так что потенциально скорость можно увеличить до 24 килохешей/с.

Впрочем, даже десятикратное ускорение не позволит обогатиться. Сам автор подсчитал, что ботнет даже из 100 млн устройств намайнит всего лишь $150 в год.

Если же майнить на единственном микроконтроллере, то он должен найти блок через 24 ZH / 24 KH/s = 1018 секунд = 277 777 млрд часов = 11 574 млрд дней = 31 млрд лет, что в два с половиной раза превышает возраст Вселенной.

Автор: alizar

Источник [8]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/nenormal-noe-programmirovanie/312069

Ссылки в тексте:

[1] свой эксперимент: https://blog.ja-ke.tech/2019/03/16/esp32-bitcoin.html

[2] одноплатных компьютерах: https://en.wikipedia.org/wiki/ODROID

[3] майнингу на микроконтроллере ESP8266: https://www.instructables.com/id/ESP8266-Bitcoin-Miner/

[4] 56333: http://learnmeabitcoin.com/browser/block/0000000000000000000740ba375bbafbb871e0e201ded9c260a8b6aa1537c3f0

[5] двойного SHA256: https://gchq.github.io/CyberChef/#recipe=From_Hex(

[6] опубликован на Github: https://github.com/Jakeler/ESP32-Bitcoin

[7] руководство: https://techtutorialsx.com/2018/05/10/esp32-arduino-mbed-tls-using-the-sha-256-algorithm/

[8] Источник: https://habr.com/ru/post/444454/?utm_campaign=444454