Monero / XMR

Всё что касается денежных средств

Модераторы: Olej, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Monero / XMR

Непрочитанное сообщение Olej » 14 окт 2021, 17:41

Почему Monero? (из числа других).
Меня интересует эта монета:
- вообще то, в чисто познавательных (сравнительных) целях ... в том числе: кошелёк, майнинг и др.
- потому что оно позволяет экспериментировать с майнингом на CPU!
Факты о Monero. Что такое Monero (XMR)?
И еще одна актуальная для многих в сообществе Monero проблема - это то, что майнинг Monero довольно централизован. Почти 35% монет Monero добываются на четырех крупных пулах. И хотя самый крупный из них добывает 16% монет Monero на момент написания статьи, важно поддерживать как можно более децентрализованный процесс добычи.
Как майнить Monero на CPU?
Благодаря алгоритму Cryptonight используемого для хеширования, майнинг Monero можно осуществлять как на процессорах, так и на видеокартах и при определенных условиях - это будет выгодно.
CryptoNight является частью протокола CryptoNote и реализует Proof of Work алгоритм.
Задача алгоритма устранить разрыв производительности между CPU и GPU / FPGA / ASIC майнерами.
Также различают соло майнинг и майнинг в пуле.
Соло майнинг это когда одно устройство (нода) ищет блок для блокчейна. Достаточно долгая процедура и победить в гонке генерации блока сложно, это ведет к непредсказуемому доходу, поэтому майнеры объединяются в пулы. Посчитать среднее время нахождения блока в соло можно так: сложность (diff) / хешрейт (H/s) = секунд. Например для среднего хешрейта 200h\s и текущей сложности (на момент написания): 56000439029 / 200 = 280002195 секунд или почти 9 лет.
...
В пуле все устройства занимаются генерацией блока вместе, награда в случае победы пула
делится среди майнеров пула, пропорционально объему произведенной работы. Принципы работы пулов отдельная большая тема, в том числе варианты начисления награды.
...
Примеры пулов для установки:
https://github.com/sammy007/monero-stratum
https://github.com/Snipa22/nodejs-pool
https://github.com/zone117x/node-cryptonote-pool
...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 18:50

Что такое Monero (XMR)?
Происхождение Monero
В июле 2012 года был запущен Bytecoin - первая успешная реализация протокола CryptoNote. CryptoNote - это протокол на уровне приложений, который является основой многих децентрализованных валют. В то время как похожий программный код используется и в Bitcoin, во многих аспектах есть целый ряд сильных различий в принципах реализации этих двух криптовалют.
...
... было решено, что оригинальный блокчейн Bytecoin будет форкнут (разделен на две цепи) и новые монеты в новом блокчейне будут называться BitMonero, что в конце концов привело к переименованию новой ветви в Monero (название переводится как «монета» с языка эсперанто). В этом новом блокчейне время нахождения нового блока майнерами было изменено на 2 минуты.
Monero в те времена возглавлялась группой из 7 разработчиков, 5 из которых предпочли остаться анонимными, а 2 из 7 часто появляются на публике. Это Дэвид Латапай (David Latapie) и Риккардо Спаньи «Fluffypony» (Riccardo Spagni). Проект был изначально с открытым исходным кодом и финансируемый самим сообществом.
Подробная история Monero интересно описана для почитать на досуге:
Странная история рождения Monero Часть I: Что такое этот Bytecoin?
Странная история рождения Monero Часть II: BitMonero
Странная история рождения Monero Часть III: Децентрализованная команда
Странная история рождения Monero Часть IV: Monero в настоящее время
8 сен 2017.
И что очень важно - Майнинг Монеро (XMR) — алгоритмы, настройка оборудования и расчет доходности:
Повышение сложности продолжалось до начала апреля 2018 года и достигло максимального уровня в 129,5 GH/s. В это время разработчики проекта внесли изменения в протокол майнинга для борьбы с ASIC-устройствами. Мотивацией такого решение стало желание сделать сеть Монеро более децентрализованной
Изображение
Обновление протокола сделало невыгодным работу при помощи ASIC-устройств, и сложность сети упала со 129 GH/s до 32 GH/s и в короткий промежуток скорректировалась на уровне 50-60 GH/s.
(выделено мной)
До недавнего времени майнить Монеро можно было при помощи специальных вычислительных устройств — ASIC. Они отличаются высокой производительностью и низким потреблением электроэнергии.
Обновление алгоритма майнинга сделало невыгодным применение таких устройств. На этот шаг руководство проекта Монеро пошло из-за подозрений о сосредоточении огромной вычислительной мощности под контролем одной компании. Подозревали известного производителя асик-устройств для майнинга — Bitmain. После апрельского обновления сложность сети, которая напрямую связана с общей вычислительной мощностью, упала более чем в 3 раза. Это является подтверждением подозрений разработчиков.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 19:04

Olej писал(а):
14 окт 2021, 17:41
Меня интересует эта монета:
С чего начать
Кошелек
Для хранения собственных средств необходим Monero-кошелек. Кошелек это сгенерированные файлы, конкретного кошелька, где хранятся ключи, которые используются при операциях с этим конкретным кошельком, но чаще всего говоря о кошельке подразумевают ПО для работы с этими файлами.
Загрузки
Там существует 2 клиента кошелька: CLI & GUI.
Monero GUI Wallet

Код: Выделить всё

olej@R420:~/2021/Monero$ ls -l monero-gui-linux-x64-v0.17.2.3.tar.bz2
-rw-rw-r-- 1 olej olej 128822608 окт 14 10:32 monero-gui-linux-x64-v0.17.2.3.tar.bz2
Monero CLI Wallet

Код: Выделить всё

olej@R420:~/2021/Monero$ ls -l monero-linux-x64-v0.17.2.3.tar.bz2
-rw-rw-r-- 1 olej olej 83878544 окт 14 10:41 monero-linux-x64-v0.17.2.3.tar.bz2
После разархивирования, соответственно:

Код: Выделить всё

olej@R420:~/2021/Monero$ tree monero-gui-v0.17.2.3 
monero-gui-v0.17.2.3
├── extras
│   ├── monero-blockchain-ancestry
│   ├── monero-blockchain-depth
│   ├── monero-blockchain-export
│   ├── monero-blockchain-import
│   ├── monero-blockchain-mark-spent-outputs
│   ├── monero-blockchain-prune
│   ├── monero-blockchain-prune-known-spent-data
│   ├── monero-blockchain-stats
│   ├── monero-blockchain-usage
│   ├── monero-gen-ssl-cert
│   ├── monero-gen-trusted-multisig
│   ├── monero-wallet-cli
│   └── monero-wallet-rpc
├── LICENSE
├── monerod
├── monero-gui-wallet-guide.pdf
├── monero-wallet-gui
└── monero-wallet-gui.AppImage

1 directory, 18 files

Код: Выделить всё

olej@R420:~/2021/Monero$ tree monero-x86_64-linux-gnu-v0.17.2.3 
monero-x86_64-linux-gnu-v0.17.2.3
├── LICENSE
├── monero-blockchain-ancestry
├── monero-blockchain-depth
├── monero-blockchain-export
├── monero-blockchain-import
├── monero-blockchain-mark-spent-outputs
├── monero-blockchain-prune
├── monero-blockchain-prune-known-spent-data
├── monero-blockchain-stats
├── monero-blockchain-usage
├── monerod
├── monero-gen-ssl-cert
├── monero-gen-trusted-multisig
├── monero-wallet-cli
└── monero-wallet-rpc

0 directories, 15 files
Руководство (последняя на сегодня версия - Latest commit c5da09b on Jan 1) по установке и настройке - Guide for the Monero GUI wallet:
All you need to understand every single part of your Monero wallet, plus some useful tips
v1.9

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 19:22

Olej писал(а):
14 окт 2021, 19:04
Руководство (последняя на сегодня версия - Latest commit c5da09b on Jan 1) по установке и настройке - Guide for the Monero GUI wallet:
Для запуска Monero GUI wallet достаточно:

Код: Выделить всё

olej@R420:~/2021/Monero/monero-gui-v0.17.2.3$ ./monero-wallet-gui 
2021-10-14 08:00:10.072	W Qt:5.15.2 GUI:0.17.2.3-113efbf | screen: 1920x1080 - available: QSize(1875, 1080) - dpi: 96 - ratio:0.746896
2021-10-14 08:00:13.318	W qrc:/qt-project.org/imports/QtQuick/Controls/ApplicationWindow.qml:259:9: QML ContentItem: Binding loop detected for property "implicitWidth"
2021-10-14 10:49:06.166	W Logging to "/home/olej/.bitmonero/monero-wallet-gui.log"
...
2021-10-14 16:11:16.695	W Logging to "/home/olej/.bitmonero/monero-wallet-gui.log"
И дальше начинается последовательное создание:
Вложения
Снимок экрана от 2021-10-14 11-01-26.png
Снимок экрана от 2021-10-14 11-01-26.png (158.85 КБ) 1646 просмотров
Снимок экрана от 2021-10-14 11-01-59.png
Снимок экрана от 2021-10-14 11-01-59.png (196.92 КБ) 1646 просмотров
Снимок экрана от 2021-10-14 11-02-59.png
Снимок экрана от 2021-10-14 11-02-59.png (183.69 КБ) 1646 просмотров

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 21:14

Устанавливаю "Продвинутый режим", потому что только он позволяет вести майнинг в режиме solo прямо из клиента кошелька.
К окончанию этого процесса (последняя картинка) начинается синхронизация (скачивание) блокчейна.
Он намеревается скачать 78.6Gb :-o ... на ещё и на относиельно невысокой скорости отдачи (поряядка 1000Kb/s), так что это затянется на несколько часов, или даже десятков часов.
После установки кошелек начнет качать к себе блокчейн, так же как и во многих других криптовалютах. Ускорить этот процесс можно двумя способами:
1. Скачать блокчейн (https://xmr.ru/redirect.php?url=https:/ ... kchain.raw) и импортировать его в кошелек. Это будет гораздо быстрее синхронизации и использует меньше памяти.
...
Каким образом можно импортировать - я этого пока не нашёл. А будет ли это быстрее, а тем более "гораздо" - совершенно не уверен, т.к. я начал такую закачку, и прогноз мне показывал что-то типа 23 часов... :evil:
Вложения
Снимок экрана от 2021-10-14 13-53-53.png
Снимок экрана от 2021-10-14 13-53-53.png (156.23 КБ) 1645 просмотров
Снимок экрана от 2021-10-14 14-02-01.png
Снимок экрана от 2021-10-14 14-02-01.png (137.65 КБ) 1645 просмотров
Снимок экрана от 2021-10-14 15-36-30.png
Снимок экрана от 2021-10-14 15-36-30.png (91.17 КБ) 1645 просмотров

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 21:25

Olej писал(а):
14 окт 2021, 19:04
Там существует 2 клиента кошелька: CLI & GUI.
Но оба клиента предоставляются в исходниках, и гораздо лучше способ, разобравшись до конца с деталями использования, собирать их из исходников себе!
Они даются а GitHub репозитории + с детальными и внятными инструкциями сборки и использования.

- CLI клиент: monero-project/monero

- GUI клиент: monero-project/monero-gui

Я позже вернусь к этому занятию...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 14 окт 2021, 22:22

Olej писал(а):
14 окт 2021, 21:25
Я позже вернусь к этому занятию...
А тем временем к вопросу о динамике курса Монеро:
График курса Монеро за всю историю
Или за год, полгода, месяц ... - Курс Монеро по отношению к доллару
... и множество других подобных источников...
Вложения
Monero.png
Monero.png (105.09 КБ) 1642 просмотра

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 15 окт 2021, 13:11

Olej писал(а):
14 окт 2021, 21:14
Он намеревается скачать 78.6Gb ... на ещё и на относиельно невысокой скорости отдачи (поряядка 1000Kb/s), так что это затянется на несколько часов, или даже десятков часов.
У меня этот процесс синхронизации занял 22 часа! И это на оптоволоконном GPON Интернет канале 50 MiB/s + сервере в 40 потоков (2 процессора Xeon E5-2470 v2)... т.е. время синхронизации не зависит от технических характеристик.
Вид синхронизированного блокчейна:

Код: Выделить всё

olej@R420:~/Загрузки/Monero$ tree lmdb
lmdb
├── data.mdb
└── lock.mdb

0 directories, 2 files

Код: Выделить всё

olej@R420:~/Загрузки/Monero$ ls -l lmdb
итого 119855788
-rw-r--r-- 1 olej olej 122732306432 окт 15 18:42 data.mdb
-rw-r--r-- 1 olej olej         8192 окт 15 18:42 lock.mdb
т.е. порядка 120 Gb.

(Наблюдая за системным монитором, я вижу большие паузы в трафике, и трафик идёт не на максимальной скорости - скорее всего это скорость отдачи. Кроме того, темп синхронизации существенно падает по ходу продвижения синхронизации...).
Вложения
Снимок экрана от 2021-10-15 12-53-05.png
Снимок экрана от 2021-10-15 12-53-05.png (162.81 КБ) 1639 просмотров

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 15 окт 2021, 18:25

Olej писал(а):
15 окт 2021, 13:11
У меня этот процесс синхронизации занял 22 часа!
Теперь, после синхронизации блокчейна, можно поиграться с майнингом, в режиме solo, индивидуально (не в пуле).
При максимальных 40 потоках ... видно по системному монитору что все процессоры загружены по 100%!
Мне этот эксперимент был интереснее всего для оценки максимальной производительности - порядка 4000 kH/s.
Вложения
Снимок экрана от 2021-10-15 13-11-52.png
Снимок экрана от 2021-10-15 13-11-52.png (137.44 КБ) 1638 просмотров
Снимок экрана от 2021-10-15 13-17-17.png
Снимок экрана от 2021-10-15 13-17-17.png (147.97 КБ) 1637 просмотров
Снимок экрана от 2021-10-15 13-14-32.png
Снимок экрана от 2021-10-15 13-14-32.png (181.71 КБ) 1637 просмотров

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Monero

Непрочитанное сообщение Olej » 15 окт 2021, 18:39

Olej писал(а):
14 окт 2021, 21:14
Каким образом можно импортировать - я этого пока не нашёл. А будет ли это быстрее, а тем более "гораздо" - совершенно не уверен, т.к. я начал такую закачку, и прогноз мне показывал что-то типа 23 часов...
Нашёл!
В составе и CLI и GUI клиента (в подкаталоге extras) есть утилиты экспорта-импорта:

Код: Выделить всё

olej@R420:~/2021/Monero/monero-gui-v0.17.2.3/extras$ pwd
/home/olej/2021/Monero/monero-gui-v0.17.2.3/extras

Код: Выделить всё

olej@R420:~/2021/Monero/monero-gui-v0.17.2.3/extras$ ./monero-blockchain-export --help
Monero 'Oxygen Orion' (v0.17.2.3-release)

Allowed options:

Command line options:
  --help                                Produce help message

Command line options and settings options:
  --data-dir arg (=/home/olej/.bitmonero, /home/olej/.bitmonero/testnet if 'testnet', /home/olej/.bitmonero/stagenet if 'stagenet')
                                        Specify data directory
  --output-file arg                     Specify output file
  --testnet                             Run on testnet. The wallet must be 
                                        launched with --testnet flag.
  --stagenet                            Run on stagenet. The wallet must be 
                                        launched with --stagenet flag.
  --log-level arg                       0-4 or categories
  --block-start arg (=0)                Start at block number
  --block-stop arg (=0)                 Stop at block number
  --blocksdat                           Output in blocks.dat format

Код: Выделить всё

olej@R420:~/2021/Monero/monero-gui-v0.17.2.3/extras$ ./monero-blockchain-import --help
Monero 'Oxygen Orion' (v0.17.2.3-release)

Allowed options:
  --data-dir arg (=/home/olej/.bitmonero, /home/olej/.bitmonero/testnet if 'testnet', /home/olej/.bitmonero/stagenet if 'stagenet')
                                        Specify data directory
  --test-drop-download                  For net tests: in download, discard ALL
                                        blocks instead checking/saving them 
                                        (very fast)
  --test-drop-download-height arg (=0)  Like test-drop-download but discards 
                                        only after around certain height
  --testnet                             Run on testnet. The wallet must be 
                                        launched with --testnet flag.
  --stagenet                            Run on stagenet. The wallet must be 
                                        launched with --stagenet flag.
  --regtest                             Run in a regression testing mode.
  --keep-fakechain                      Don't delete any existing database when
                                        in fakechain mode.
  --fixed-difficulty arg (=0)           Fixed difficulty used for testing.
  --enforce-dns-checkpointing           checkpoints from DNS server will be 
                                        enforced
  --prep-blocks-threads arg (=4)        Max number of threads to use when 
                                        preparing block hashes in groups.
  --fast-block-sync arg (=1)            Sync up most of the way by using 
                                        embedded, known block hashes.
  --show-time-stats arg (=0)            Show time-stats when processing 
                                        blocks/txs and disk synchronization.
  --block-sync-size arg (=0)            How many blocks to sync at once during 
                                        chain synchronization (0 = adaptive).
  --check-updates arg (=notify)         Check for new versions of monero: 
                                        [disabled|notify|download|update]
  --fluffy-blocks                       Relay blocks as fluffy blocks 
                                        (obsolete, now default)
  --no-fluffy-blocks                    Relay blocks as normal blocks
  --test-dbg-lock-sleep arg (=0)        Sleep time in ms, defaults to 0 (off), 
                                        used to debug before/after locking 
                                        mutex. Values 100 to 1000 are good for 
                                        tests.
  --offline                             Do not listen for peers, nor connect to
                                        any
  --disable-dns-checkpoints             Do not retrieve checkpoints from DNS
  --block-download-max-size arg (=0)    Set maximum size of block download 
                                        queue in bytes (0 for default)
  --sync-pruned-blocks                  Allow syncing from nodes with only 
                                        pruned blocks
  --max-txpool-weight arg (=648000000)  Set maximum txpool weight in bytes.
  --block-notify arg                    Run a program for each new block, '%s' 
                                        will be replaced by the block hash
  --prune-blockchain                    Prune blockchain
  --reorg-notify arg                    Run a program for each reorg, '%s' will
                                        be replaced by the split height, '%h' 
                                        will be replaced by the new blockchain 
                                        height, '%n' will be replaced by the 
                                        number of new blocks in the new chain, 
                                        and '%d' will be replaced by the number
                                        of blocks discarded from the old chain
  --block-rate-notify arg               Run a program when the block rate 
                                        undergoes large fluctuations. This 
                                        might be a sign of large amounts of 
                                        hash rate going on and off the Monero 
                                        network, and thus be of potential 
                                        interest in predicting attacks. %t will
                                        be replaced by the number of minutes 
                                        for the observation window, %b by the 
                                        number of blocks observed within that 
                                        window, and %e by the number of blocks 
                                        that was expected in that window. It is
                                        suggested that this notification is 
                                        used to automatically increase the 
                                        number of confirmations required before
                                        a payment is acted upon.
  --keep-alt-blocks                     Keep alternative blocks on restart
  --extra-messages-file arg             Specify file for extra messages to 
                                        include into coinbase transactions
  --start-mining arg                    Specify wallet address to mining for
  --mining-threads arg                  Specify mining threads count
  --bg-mining-enable                    enable background mining
  --bg-mining-ignore-battery            if true, assumes plugged in when unable
                                        to query system power status
  --bg-mining-min-idle-interval arg     Specify min lookback interval in 
                                        seconds for determining idle state
  --bg-mining-idle-threshold arg        Specify minimum avg idle percentage 
                                        over lookback interval
  --bg-mining-miner-target arg          Specify maximum percentage cpu use by 
                                        miner(s)
  --db-sync-mode arg (=fast:async:250000000bytes)
                                        Specify sync option, using format 
                                        [safe|fast|fastest]:[sync|async]:[<nblo
                                        cks_per_sync>[blocks]|<nbytes_per_sync>
                                        [bytes]].
  --db-salvage                          Try to salvage a blockchain database if
                                        it seems corrupted

Command line options:
  --count-blocks                        Count blocks in bootstrap file and exit
  --pop-blocks arg (=0)                 Remove blocks from end of blockchain
  --drop-hard-fork                      Drop hard fork subdbs
  --help                                Produce help message

Command line options and settings options:
  --input-file arg                      Specify input file
  --log-level arg                       0-4 or categories
  --batch-size arg (=20000)
  --block-stop arg (=0)                 Stop at block number
  --dangerous-unverified-import arg (=0)
                                        Blindly trust the import file and use 
                                        potentially malicious blocks and 
                                        transactions during import (only enable
                                        if you exported the file yourself)
  --batch arg (=1)                      Batch transactions for faster import
  --resume arg (=1)                     Resume from current height if output 
                                        database already exists

Ответить

Вернуться в «Финансы, деньги, платёжные системы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя