Un mining pool è uno spazio che consente ai miner di lavorare in modo cooperativo per estrarre blocchi di criptovalute. Sono stati creati per facilitare notevolmente il lavoro di mining e per affrontare in modo più efficace la crescente difficoltà di mining di Bitcoin e di altre criptovalute.
Las pool of mining Sono un gruppo di minatori che collaborano con l'obiettivo di estrarre blocchi da una blockchain. Lo scopo di questo raggruppamento è quello di facilitare il lavoro di mining e ottenere equi benefici per tutti all'interno del gruppo.
La creazione di questi gruppi risponde alla necessità di poter risolvere in modo soddisfacente gli enigmi di una blockchain man mano che aumentano la potenza della sua rete e della sua mining difficulty. Un lavoro che sarebbe troppo difficile da realizzare se fatto individualmente.
Il primo mining pool di Bitcoin
Il primo mining pool ad essere stato creato si chiama SlushPool. Fu presentato nel forum Bitcointalk il 27 novembre 2010 dall'utente Slush. Questo utente è stato CEO e co-fondatore di Trezor.SlushPool è stato implementato in Europa, in particolare in Polonia, il paese di origine di Slush. L'intenzione del suo creatore era di unire le forze dei miner dalle scarse prestazioni. Questo per affrontare la crescente pratica del GPU mining nata in Bitcoin. Il risultato di questa interessante visione è stato sorprendente consentendo a questi miner di realizzare profitti migliori in gruppo piuttosto che individualmente.
Come funziona un mining pool?
Il funzionamento dei mining pool dipende da tre attori ben definiti, responsabili della cooperazione tra tutte le unità di mining che fanno parte di suddetto pool.
Protocollo di lavoro cooperativo
Il funzionamento dei mining pool non sarebbe possibile se il protocollo Bitcoin non consentisse questa operazione. Questo avviene grazie ad una funzione incorporata nel cliente base di Bitcoin. Questa funzionalità era nota all'epoca come getwork. Quest'ultima ha permesso a un gruppo di miner sparsi di avere come obiettivo un blocco da estrarre in cooperazione. In questo modo la potenza di mining si concentra su un target specifico piuttosto che su quelli individuali, di conseguenza serve per ottimizzare il processo di mining complessivo.
In effetti, Il ruolo di getwork era di mettere in contatto un gruppo di miner in modo che insieme potessero estrarre lo stesso blocco. In questo modo, ogni miner lavora su soluzioni uniche fino a quando uno di loro non riesce a risolvere il blocco in modo soddisfacente. In questo modo il blocco veniva estratto più velocemente e si evitavano ritardi in rete dovuti all'aumento della difficoltà che si presentavano. A quel tempo Bitcoin stava crescendo rapidamente, dal mining per CPU è successo a GPU, mentre FPGA e ASIC si stavano sporgendo fuori dalle porte.
Tuttavia, Getwork aveva alcuni punti deboli che sono stati successivamente superati grazie alla funzione getblocktemplate. Questa nuova funzione permette di superare le debolezze dei vecchi sistemi consentendo una migliore scalabilità e sicurezza.
Servizio di mining cooperativo (server)
Per consentire a più miner di unire la loro potenza di calcolo in un punto, è necessario disporre di un server che funge da collegamento. Può sembrare ironico che una tecnologia decentralizzata come la blockchain si basi su un servizio centralizzato. Ma ci sono buone ragioni per questo: mantenere il ritmo della produzione di blocchi e consentire profitti ai più piccoli.
Il software per i server di mining cooperativo più comune è lo stesso servizio ufficiale di Bitcoin, il bitcoin. Altri software abbastanza comuni sono BFGMiner, p2pool, ecoinpool o stratum. In ognuno di questi casi, l'operazione è sostanzialmente la stessa.
Innanzitutto, si installato il software del servizio da utilizzare, ad esempio bitcoind. Questo servizio è configurato in modo tale da poter sentire le connessioni che provengono da Internet al suo server. In questo modo, è possibile aprire un canale di comunicazione tra i miner e il server di mining cooperativo. A questo punto, ogni miner deve avere un account registrato in modo che il server possa dargli accesso al servizio. Tuttavia, anche il registro serve anche a distribuire i profitti di mining tra coloro che fanno parte del pool.
Il lavoro del server è semplice:
- Riceve transazioni dalla rete.
- Comunica le informazioni ai miner.
- Controlla e monitora il lavoro.
- Invia i blocchi risolti correttamente alla rete.
- Effettua la contabilità dei blocchi risolti e del lavoro apportato dai miner.
- Infine, invia il profitto corrispondente ai miner del pool.
Software di data mining (Client)
Ogni software di mining ha caratteristiche e supporti diversi. I minatori devono scegliere correttamente il software di mining che si adatta alle caratteristiche del pool di mining a cui si uniranno. Il lavoro di un software di mining è semplice. Questo si collegherà al server di mining cooperativo o pool, riceverà le informazioni e inizierà a risolvere il puzzle del blocco dato. Una volta trovata la risposta al blocco, la invia e continua il suo lavoro aiutando a risolvere il blocco successivo.
In aggiunta a questo lavoro, il software di mining gestisce l'autenticazione e il pagamento corrispondente al miner per il suo lavoro. Per fare ciò, il software di mining di solito indica un nome utente, una password e un indirizzo per il pagamento. Tutto questo diretto all'indirizzo IP e alla porta che il server mantiene attivo per svolgere il proprio lavoro.
Tuttavia, il software da utilizzare dipende in forma parziale dalla componente di controllo dell'hardware di mining stesso. Negli ultimi anni, ad esempio, il software più utilizzato dai miner nella rete Bitcoin è stato minatore. Il software cgminer è stato sviluppato da un anestesista australiano. Alla Bit2Me Academy abbiamo un articolo dedicato a questo creatore chiamato Con Kolivas, ben noto sul forum Bitcointalk come "-cmq».
In conclusione, l'insieme di questi tre elementi è ciò che consente a un mining pool di svolgere la sua funzione di collegamento per la comunicazione e la gestione dei compiti in modo cooperativo.
Grandi mining pool oggi
A partire dall'apparizione del primo mining pool, questi spazi si sono ampliati. Sono comparsi nuovi mining pool e allo stesso tempo hanno diversificato le loro opzioni. In linea di principio, i pool erano dedicati solo a Bitcoin, ma poi iniziarono ad apparire pool di altre criptovalute. Oggi, praticamente tutte le principali criptovalute posseggono dei mining pool. Il motivo è molto semplice: facilitano il mining e garantiscono il corretto funzionamento della rete in generale.
Tuttavia, tra tutti i servizi di mining pool alcuni si distinguono per molte ragioni. Fra questi i più importanti sono:
AntPool
AntPool è il più grande mining pool di Bitcoin in termini di potenza di hash rate. La sua base operativa è in Cina. Questo mining pool è controllato dal produttore di miner ASIC BitMain, azienda con la più grande distribuzione di miner al mondo negli ultimi cinque anni. L'utilizzo del servizio di mining pool è aperto e gratuito. Ha un alto livello di sicurezza e le commissioni addebitate dal servizio non sono molto elevate.
AntPool offre mining pool per criptovalute Bitcoin (BTC), Bitcoin Cash (BCH), Litecoin (LTC), Ethereum (ETH), Ethereum Classic (ETC), Zcash (ZEC), Dash (DASH), Siacoin (SIA), Monero Classic (XMC) e Bitom (BTM).
Nanopool
Nanopool è uno dei pool minerari più grandi sulla rete Ethereum e una buona alternativa per l'estrazione di altcoin popolari. I suoi server sono distribuiti in tutto il mondo, quindi ha una maggiore tolleranza agli errori. La commissione di Nanopool non supera il 2% per il suo gruppo di criptovalute supportate tra cui, Ethereum, Ethereum Classic, Zcash, Monero, SiaCoin, Sorriso, Raven, Electroneum e Pascal. Il suo livello di sicurezza è pari a quello di AntPool, con opzioni per resistere agli attacchi DDOS alla sua infrastruttura.
F2Pool
F2Pool È un'altra delle più importanti mining pool di Bitcoin situate in Cina con molte altre opzioni di mining di altcoin, lanciata nel 2013. Nella comunità mineraria è anche conosciuta come "Discus Fish mining pool «. Il sito ha un'interfaccia disponibile in spagnolo ed è semplice e facile da capire. Le commissioni di questo pool sono un po' più alte ma non superano il 4%. Tra le criptovalute supportate ci sono: Bitcoin (BTC), Ether (ETH), Litecoin (LTC), Zcash (ZEC), Ethereum Classic (ETC), Siacoin (SC), Trattino (DASH), Monero (XMR), Monero Classic (XMC), Decred (DCR), Zcoin (XZC) e Verge (XVG).
Vantaggi e svantaggi di un mining pool
Il vantaggio principale di una mining pool è il fatto che faciliti il lavoro di mining a coloro che partecipano a tale pool. Ciò consente ai partecipanti di ottenere guadagni che individualmente costerebbero loro molto più tempo. Un altro dei suoi vantaggi è che il sistema consente di mantenere la scalabilità del mining. Grazie alla concentrazione della potenza di mining, è garantito che la rete possa trovare la necessaria risoluzione di ogni blocco nei tempi concordati. In questo modo, la generazione di blocchi vuoti nella blockchain è ridotta al minimo. Inoltre, tutti i miner che partecipano al pool ricevono profitti in base alla potenza di mining che posseggono. Nessuno di loro rimane senza ricevere il proprio profitto, non importa quanto piccolo possa essere.
Il rovescio della medaglia è fare affidamento su un'organizzazione centralizzata. Gli amministratori del pool possono modificare l'azione del pool e mantenere il file ricompense minerarie per intero. Una situazione che si è presentata più volte con mining pool abbastanza conosciute all'epoca, come 50BTC y BTC Guild.