Bitcoin Forum

Local => Développement et technique => Topic started by: sebastien247 on July 23, 2014, 04:49:10 PM



Title: [DEV] Différents moyens d’obtenir un block
Post by: sebastien247 on July 23, 2014, 04:49:10 PM
Bonjour,

Je début dans le bitcoin est pour mieux comprendre je me suis lancer dans la programmation d'un miner. Mais je suis confronté a un premier problème. Pour obtenir un block sur lequel miner il existe avec le daemon bitcoind 2 méthodes : getwork, getblocktemplate. Utilisé avec le protocole RPC.

Quel est la différence entre ces 2 méthodes ?

Les miners actuel (cgminer, ccminer, cudaminer,...) n'utilise pas le deamon de bitcoin et autre cryptomonaies pour miner. Comment récupères t'ils les blocks ? Est-ce via le protocole "strutum" ?

Quels sont les différentes solutions existante pour récupérer les blocks a miner?

Merci  :-*


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: superresistant on July 23, 2014, 05:18:03 PM
Est-ce via le protocole "strutum" ?

Stratum oui.


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: sebastien247 on July 23, 2014, 06:17:31 PM
Ok, il y a d'autres moyens pour ce connecter au serveur et récupérer le block ? Via une API ou autre ? J'aimerais connaitre toutes les possibilités afin de  choisir la plus adapté pour mon appli développé en PHP.


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: superresistant on July 24, 2014, 08:20:46 AM
Ok, il y a d'autres moyens pour ce connecter au serveur et récupérer le block ? Via une API ou autre ? J'aimerais connaitre toutes les possibilités afin de  choisir la plus adapté pour mon appli développé en PHP.

Que veux tu dire exactement par "récupérer un block" ? C'est un peu abstrait.
Tu parles des infos des blocks ?


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: sebastien247 on July 24, 2014, 12:07:13 PM
C'est un peux abstrait pour moi aussi ^^ Je fait ca pour mieux comprendre le fonctionnement du bitcoin

J'ai peut être utilisé le mauvais terme. Un block (ou block header comme dit dans le wiki) est une transaction que je doit hasher pour valider la transaction.

Je pense en effet qu'il s'agit des infos de blocks.


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: superresistant on July 24, 2014, 12:14:06 PM
 
C'est le travail de la pool d'envoyer les infos des blocks au mineurs dès qu'un block est trouvé sur le réseau par le biais du protocole stratum.

La pool est une sorte de super node qui centralise le hash et distribue les infos des blocks.



Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: sebastien247 on July 24, 2014, 12:42:00 PM
Ok, mais je doit bien faire une requête a la pool pour avoir ces infos. A l'aide du protocole RPC (getwork, getblocktemplate ) ou Stratum.

Visiblement je ne peux pas utiliser le protocole rpc car il me faudrait l'user et pass du Server RPC. Donc il me reste comme possibilité le protocole Stratum. Mais il semble ne pas avoir de standard et j'ai du mal a trouver des infos sur ce protocole.


Title: Re: [DEV] Différents moyens d’obtenir un block
Post by: LainZ on July 24, 2014, 12:45:50 PM
Renseigne toi ici :

https://www.btcguild.com/new_protocol.php

https://bitcointalk.org/index.php?topic=108533.0

http://mining.bitcoin.cz/stratum-mining