Visto che a volte si parla dei bei tempi in cui si minava con il pc di casa o con i primi artefatti legati alla storia di bitcoin, oggi vi propongo questa guida che avevo scritto su un altro forum per far provare ai novizi l'emozione del mining nella sua forma più semplice, ossia con la CPU del vostro computer a prescindere dalla potenza che avete a disposizione. Alcuni sanno dell'affetto che provo per questa criptovaluta che ritengo complementare a bitcoin, ossia, in modo molto intelligente i dev hanno sviluppato un protocollo che non fosse l'ennesimo "bitcoin killer" (terminologia che odio profondamente) ma che fosse quello che io definisco lo "Stepbrother" di Bitcoin.
Sentitevi liberi poi di scambiare XMR con BTC per accumulare satoshi. Ci vorrà del tempo ma sarà divertente.
Spero sia gradito. Buono studio.
La seguente guida riguarderà il mining su pool Monero che è l'unica che garantisce un ritorno veloce dei pagamenti con soglia bassa, successivamente spiegherò il mining attraverso il proprio nodo. La differenza è che partecipando alle pool si da potenza computazionale per la creazione dei blocchi della blockchain di monero (1 blocco ogni 2/3 minuti); con il proprio nodo si partecipa principalmente alla decentralizzazione della rete Monero. Due differenze TOTALi tra loro.
MoneroMonero è una criptovaluta full privacy e full anonymity che permette di eseguire transazioni, swap e pagamenti in maniera totalmente anonima. Rispetto alle transazioni in Bitcoin, la cui blockchain pubblica promette privacy ma non anonimato infatti è totalmente tracciabile (una volta che viene svelata l'identità di un indirizzo, a cascata viene rivelata tutta la sua storia trasativa); mentre Monero, tramite un protocollo crittografico di ring signature e stealth address permette di oscurare completamente mittente, destinatario e importo.
Differenze tra mining di Monero e BitcoinAgli albori di Bitcoin il suo mining veniva effettuato prima con le CPU per poi passare rapidamente alle GPU e poi sistemi erupter che erano un primo tentativo di togliere il "peso" del mining dall'hardware di un pc e decentralizzarlo su sistemi esterni lasciando all'harware il compito di dirigere il traffico. Da qui inizia l'era degli asic e finisce l'era del mining casalingo in senso stretto. Quindi per Btc chi ha maggiore potenza computazionale, vince.
A differenza di Bitcoin, Monero ha mantenuto un sistema premiante legato alle prestazioni delle CPU, infatti il suo algoritmo RandomX permette di livellare il campo di competizione e permettere la sola partecipazione di uniche CPU eliminando eventuali sistemi hardware dedicati come ASIC. Infatti un sistema ASIC o un sistema Erupter sono totalmente inefficienti per Monero perchè usano un altro tipo di algoritmo deterministico, SHA256, che a fronte di un algoritmo complessivamente semplice richiede una forza bruta di calcolo enorme.
Questo porta ad una decentralizzazione ENORME della rete di Monero rispetto a quella di Bitcoin (affermazione che potrebbe portarmi delle critiche). In realtà la possibilità di minare Monero con sistemi CPU e semplificati dalla partecipazione alle pool di mining riduce la decentralizzazione e la accentra verso le pool che stanno diventando una reale potenza, ma facilmente si riesce anche ad avere un proprio nodo scaricando la blockchain (circa 200 gb) e minare singolarmente in maniera meno profittevole. Invece, Bitcoin, punta sulla convenienza del detentore ad attivare un proprio nodo per partecipare alla decentralizzazione e garantirla, che è la forze reale di Bitcoin rispetto a tutto il resto del mondo crypto.
Monero su Linux vs Monero su WindowsTagliando corto, il mining di Monero su sitemi windows oltre ad essere non costituzionale è anche non accettato dai sistemi stessi e poco sicuro, infatti si deve passare attraverso un sistema di eccezioni di sistema e di sicurezza che permette a windows di aprire un canale verso una pool, ma prima di tutto di installare il wallet Monero. Una strada lunga e noiosissima utile a proteggere utenti poco esperti ma di fatto rende inutilizzabili questi SO a tale scopo.
la cosa migliore è utilizzare sistemi Linux. In alternativa potete installare una Virtual Machine installandoci Linux e procedere in una sorta di sandbox ad installare tutto quanto utile a minare, però con questo metodo avete ridotto accesso alla cache L3 e alle hugepage di sistema vedendo drasticamente ridotto la vostra potenza computazionale.
Consiglio 1: se usate VM usate una distro Linux leggera tipo Lubuntu (consigliato) o LinuxLite o ancora phoenix
Consiglio 2: dedicate alla virtual machine almeno il 70% della CPU, se nel sistema host dovete fare elaborazioni che richiedono RAM e CPU meglio non usare il sistema virtual machine, il pc potrebbe surriscaldarsi e laggare
Consiglio 3: una CPU decente è necessaria perchè oltre ai thread della CPU avrete bisogno anche di velocità di comunicazione con la RAM, com la cache L3 e con le hugepage.
Monero wallet - SOLO il Monero GUI ufficialePer eseguire il mining di Monero la prima cosa fondamentale è quella di avere un indirizzo Monero su cui farsi mandare le ricompense, quindi vi consiglio di andare nel sito ufficiale di Monero e installare il software nativo per Linux o richiamarlo dalla console di Linux se siete più esperti.
DIFFIDATE DI ALTRI WALLET MONERO. Monero a fronte della sua privacy ed anonimato è pieno zeppo di delinquenti che non vedono l'ora di appropriarsi dei vostri fondi e farli sparire in maniera irrintracciabile. Per sempre. Quindi, tassativo, si installa Monero GUI dal sito ufficiale e si crea il file json per far girare randomX dal sito ufficiale. Punto. (
https://www.getmonero.org/downloads/)
L'installazione è molto facile e guidata e permette di avere una seed phrase come per tutti gli altri wallet.
MOLTO IMPORTANTE: quando create il wallet prendete nota del così detto block height perchè vi verrà richiesto se sposterete il vostro wallet in altro dispositivo. Questo perchè è come se all'altezza di quel blocco ci fosse un check di rete per essere certi che quel wallet è stato creato. Quindi: SEED PHRASE e BLOCK HEIGHT.
Modalità Pool Mining - Installazione di Monero XMRigAnche qui l'installazione deve partire dal github ufficiale di monero (
github.com/xmrig/xmrig) o tramite console di installazione. Una volta installata troverete al suo interno la cartella "build" con un file json che sarà proprio il motore comandi della vostra xmrig. La creazione del file json avviene nel wizard nel sito ufficiale di Monero (
https://xmrig.com/wizard), qui potete scegliere la vostra pool a cui partecipare.
Osservazione: la migliore pool è la "supportxmr" molto stabile e sempre connessa però con soglia di pagamento molto elevato per quello che è il mining casalingo (0.1 xmr) e con il vostro pc casalingo vi ci vorrà quasi un anno per arrivare a questa soglia (...). Per avere una soglia più bassa (0.001 xmr) vi consiglio la pool "hashvault.pro" che ho provato e funzione. Io di solito uso supportxmr ma lo faccio solo per sostenere gli sviluppatori, infatti gli giro il 100% delle revenue a titolo di ringraziamento. Comunque sul sito di monero troverete anche una tabella con la resa dei vari processori.
Una volta selezionata la pool "hashvault.pro" o "supportxmr" inserirete il vostro indirizzo wallet e un nickname, sul backend successivo sarete ovviamente su CPU, sulla percentuale di donazione potere scegliere tra 0 e 100. Il vostro file json è pronto per far funzionare la vostra xmrig.
A questo punto inizierete a far girare il vostro xmrig direttamente su console linux e quando ricevere il messaggio "new job" vorrà dire che la pool avrà iniziato ad inviarvi porzioni di calcolo da risolvere. Vi incollo qui il mio miner coprendo i dati sensibili riferiti a velocità hashrate e difficoltà assegnata.

Come vedete nell'immagine il minig è attivo e si collega con successo alla pool di supportxmr (o hashvault se avete selezionato quella) tramite la porta 5555 (su hashvault sarà diversa). Un po' di glossario:
New job: indica che la pool vi sta mandando richieste di potenza di calcolo
Height: indica il blocco corrente nella blockchain di Monero, quando il blocco viene risolto il numero cambierà
diff xxxxxxxxxx: è un numero e rappresenta la difficoltà assegnata dalla pool al vostro worker in funzione alla potenza computazionale che mettete a disposizione.
algo rx/0: conferma che state usando un algoritmo randomX
(120 tx, xxx tx): indica quante transazioni sono incluse nel blocco in quel momento, a parità di blocco il numero di transazioni può cambiare se nel frattempo ne arrivano di nuove alla mempool.
speed 10s/60s/15m: indica la vostra velocità di hashrate media in queli intervalli di tempo e il picco massimo di velocità raggiunto
accepter 13/0: vuol dire che da quando ho riavviato il miner ho inviato 13 soluzioni/share e sono state accettate dalla pool con zero rifiuti, con una determinata difficoltà di calcolo predefinita (diff xxxxxxx) e con una latenza di ping verso il pool indicato nell'ultimo numero tra parentesi (45 ms).
Nella pool hashvault avrete blocchi risolti molto più velocemente, perchè è meno competitiva e fatta su misura per piccoli miner, quindi nello stesso lasso di tempo avrete il doppio o triplo di soluzioni inviate e accettate dalla pool. Tutto normale.
EDIT: vi ho postato un esempio con supportxmr perchè è quella che uso abitualmente, mi risulta però che hashvault sia sotto attacco DNS da qualche giorno, quindi nel caso esercitatevi con supportxmr e poi passate ad hashvault quando si ristabilirà.
La convenienza del mining è funzione di quanto costa l'energia dove vivete e l'eventuale disponibilità da fonti alternative, infatti piuttosto che cederla in rete a prezzo regalo vi conviene fare un minimo di mining che forse a conti fatti ci guadagnate di più o almeno contribuite a sostenere le reti decentralizzate.Modalità Solo Mining - Minare attraverso un proprio nodoLa quintessenza del mining è quello di farlo non in una pool ma attraverso il proprio nodo, avere a disposizione la completa blockchain e partecipare al processo di decentralizzazione che rappresenta l'anima delle monete virtuali (Bitcoin e Monero su tutte). Le ricompense ci saranno SOLO se risolverete un vostro blocco, quindi prima controllate il benchmark del vostro processore (
https://xmrig.com/benchmark)
Per realizzare ciò si parte dall'installazione di monerod tutto via console per evitare interferenze o download corrotti, inoltre, la creazione di cartelle temporanee (:~/tmp) garantirà privacy invece di una cartella che collegherà il vostro rig ad un nome su desktop:
mkdir -p ~/tmp/node && cd ~/tmp/node
wget --content-disposition https://downloads.getmonero.org/cli/linux64
tar -xvf monero-x86_64-linux-gnu-*.tar.bz2
wget https://github.com/xmrig/xmrig/releases/latest/download/xmrig-linux-static-x64.tar.gz
tar -xvf xmrig-linux-static-x64.tar.gz
a questo punto potrete lanciare il demon di monero ed iniziare il download della blockchain in modalità pruned (che già sarà 200 gb) impiagherà parecchie ore.
cd monero-x86_64-linux-gnu-*
./monerod --detach --prune-blockchain --sync-pruned-blocks --log-file=/dev/null --log-level 0
./monerod status
a questo punto state scaricando la pruned blockchain senza creare log sul disco, quindi prendete il vostro file json e sulla riga
"daeemon" : false,
fatelo diventare:
"daemon": true,
Quindi avviate le hugepages necessarie per linux:
sudo sysctl -w vm.nr_hugepages=1280
Avviate il miner e sarete in modalità mining in solitaria e starete contribuendo allo spettacolo della decentralizzazione!!
Consiglio: se dovesse risultarvi qualche errore in fase di installazione o in fase di lancio del miner in pool o in solo potrebbe essere legato alla mancanza di qualche dipendenza linux, oppure legato a conflitti firewall o chissàcchè. Vi consiglio CALDAMENTE di non impazzire e caricare l'errore su qualche strumento AI che vi darà direttametne la soluzione. Vi consiglio la finestra AI di Brave (LeoAI) che incrocia i migliori modelli free del mercato senza limitazioni. Niente male.
Buon mining a tutti.