Minatore di Bitcoin - pagina 36

 
prostotrader:

Finito il passaggio automatico tra gli algoritmi, quando

"la GUI stessa, la posterò (forse qualcuno la troverà utile).



Qual è il principio del cambio di algoritmo?

 
Aleksey Vyazmikin:

Qual è il principio del cambio di algoritmo?


1. la velocità della scheda è testata su OGNI algoritmo, i dati sono registrati (in modo permanente).

2. Attraverso l'API del server che hai estratto, ottieni i tassi per ogni algoritmo in intervalli di 30 secondi.

3. Calcola la redditività <costo*velocità>.

4. Scegliete il miglior tasso.

 
prostotrader:

1. la velocità della scheda è testata su OGNI algoritmo, i dati sono registrati (in modo permanente).

2. Attraverso l'API del server su cui si estrae, si ottengono i tassi per ogni algoritmo con un intervallo di 30 secondi.

3. Calcola la redditività <costo*velocità>.

4. Scegliete il miglior tasso.


Ragionevole. Ma c'è una correlazione diretta tra velocità e redditività? Possiamo sostenere che maggiore è la velocità di calcolo, maggiore è la probabilità di risolvere il problema - non dovremmo considerare la quantità di dati che devono essere elaborati per risolvere il problema? Forse questo sarà diverso per ogni criptovaluta. O non importa, c'è un uso (hmmm... mi è sfuggito come si chiama - in generale sei una cella di una rete comune che distribuisce i compiti)?

 
Aleksey Vyazmikin:

Ragionevole. Ma c'è una correlazione diretta tra velocità e reddito? Possiamo sostenere che maggiore è la velocità di calcolo, maggiore è la probabilità di risolvere il problema - non dovremmo considerare la quantità di dati da elaborare per risolvere il problema? Forse questo sarà diverso per ogni criptovaluta. O non importa, c'è un uso (hmmm... mi è sfuggito come si chiama - in generale sei una cella di una rete comune che distribuisce i compiti)?


I ricavi sono molto dipendenti dalla velocità, ma molto bvzhe fattore come rasceka per MN.

Tutto il mondo è costituito da celle solide in una zona o nell'altra. :)

 
Andy:

Il software originale del produttore funziona secondo lo stesso principio e in che modo il vostro differisce da esso?


Il principio è stato preso dal programma originale, ma ha smesso di funzionare :(

 

Il mio 'insuccesso' al lavoro...

 
anonymous:

1. Non è stato redditizio minare BTC sulle schede video in particolare per diversi anni. Anche il costo dell'elettricità non sarà recuperato. Solo gli ASIC di fascia alta...

2. Se ti unisci a un grande pool - la taglia al giorno sarà approssimativamente uguale a <bounty per blocco> * <numero di blocchi estratti al giorno> * <il tuo hashrate> / <l'hashrate totale della rete> - <la commissione del pool>.

Un blocco viene generato circa una volta ogni 10 minuti. La tassa di blocco è attualmente, se non sbaglio, 12,5 BTC; con il mining diminuisce periodicamente di 2 volte. L'attuale tasso di hash della rete è ~10.6M THash/sec.

Senza alcun pool - l'aspettativa di profitto è la stessa, ma il valore casuale della ricompensa avrà una varianza molto grande: nella maggior parte dei casi, il profitto sarà zero, ma forse sarai fortunato e aspetterai un momento, quando riuscirai a fare un blocco e ottenere tutta la ricompensa per esso.

3. Vendi di persona o mettilo su una delle decine di scambi e scambialo con la valuta desiderata. Per prelevare su un conto bancario o su una carta, potrebbe essere necessario passare attraverso le procedure antiriciclaggio. Alcuni scambi non funzionano con persone di certi paesi.

Per favore, descrivete brevemente cosa significa "generare un blocco", qual è l'algoritmo o dove posso leggerlo? Ci sono modi per ottimizzare questo processo?
 

Tutte le informazioni sulle transazioni nella rete Bitcoin sono contenute in un database speciale (blockchain), questo database è sincronizzato tra tutti i nodi bitcoin (wallet, client e server contemporaneamente, non c'è un nodo master, tutti sono uguali tra loro. Così per esempio bitcoin è decentralizzato, e uno non può fare una transazione non valida, tutti gli altri nodi la rifiuteranno).

Ogni dieci minuti un nuovo record (blocco) viene aggiunto a questo database (blocco), il blocco contiene informazioni sulle nuove transazioni dall'ultimo blocco (per ogni transazione - l'indirizzo da cui provengono i bitcoin, l'indirizzo dove sono andati e il numero di bitcoin).
Il processo di generazione di un tale blocco è chiamato mining. La funzione hash sha256 viene applicata a questa lista di transazioni, il cui risultato è un lungo codice hash. C'è un requisito per il codice - deve avere un certo numero di zeri all'inizio, e quel numero dipende dal numero attuale di minatori. Più capacità di estrazione nel mondo - più zeri nel codice hash sono necessari affinché il tempo medio di generazione del blocco rimanga approssimativamente lo stesso e non diventi più veloce.
I minatori possono aggiungere un numero casuale alla lista delle transazioni in modo che la funzione hash risulti in un diverso numero di zeri nell'hash, e lo fanno fino a raggiungere il numero richiesto di zeri nell'hash, nel qual caso il nuovo blocco è considerato trovato e sincronizzato con tutti gli altri nodi della rete. Come ricompensa per aver trovato un blocco, il minatore riceve commissioni dalle transazioni in quel blocco, e un numero aggiuntivo di nuovi bitcoin.

L'ottimizzazione del mining può essere fatta accelerando le funzioni sha256, ad esempio utilizzando una scheda grafica per eseguire i calcoli invece di un processore, o utilizzando un processore costruito appositamente che può solo leggere la funzione (FPGA, ASIC).

Il risultato della funzione hash è completamente casuale, e non è possibile calcolare il numero giusto, il problema può essere risolto solo tramite bruteforcing.
hash = sha256(transazioni + random)
il requisito dell'hash è che il risultato deve iniziare con un certo numero di zeri, ad esempio 0000000000000.....Z4lYFzZET4vE8OVtCNfKrgZY2wLZHCr
casuale - numero casuale da ciclare

Più informazioni lì -https://en.bitcoin.it/wiki/Mining, e nei link sotto "Vedi anche"

 
Dr. Trader:

Il risultato della funzione hash è completamente casuale, ed è impossibile calcolare il numero giusto, il problema può essere risolto solo tramite bruteforcing.

hash = sha256(transazioni + random)

Non esattamente. Il risultato del calcolo di hash=sha256(dati) è deterministico e può essere ottenuto secondo un algoritmo ben noto.

Ma la funzione _verse_ data=sha256^-1(hash) è così complessa che in compiti pratici e sotto vincoli realistici di risorse computazionali, possiamo assumere che non ci sia un algoritmo per calcolarla che sia molto più efficiente della forza bruta. I vincoli sul valore dei dati aumentano esponenzialmente ad ogni iterazione di sha256.

Yousufkhodja Sultonov:
Ci sono modi per ottimizzare questo processo?

Quelli ben noti vi sono stati raccontati sopra. Puoi provare a trovare qualcosa di nuovo e dirlo agli altri ;)

Ho descritto un paio di attacchi teoricamente possibili alle piscine minerarie qui: https://www.mql5.com/ru/forum/217910/page8#comment_5941539 Ti daranno una pacca sulla testa per questo, ma solo con una chiave inglese.
 

Il lavoro sulla GUI è rallentato, a causa delle richieste HTTPs

Res:= IdHTTP1.Get('https://api.nicehash.com/api?method=simplemultialgo.info');

stanno (a volte) "andando in crash", causando eccezioni che devono essere gestite con cura.

Ma il lavoro procede (poco a poco)