Spy mining
Le spy mining est la pratique d'un pool qui mine sur l'en-tête d'un bloc d'un autre pool sans valider les transactions. Réduit le risque d'orphelinage mais pose problème de validation. Considéré comme une mauvaise pratique. Empire SPV mining.
Définition et origine
Le spy mining, aussi appelé SPV mining ou validationless mining, désigne la pratique d'un pool qui, dès qu'il voit l'annonce d'un nouveau bloc concurrent, se met à miner par-dessus sans en télécharger ni valider le contenu. Le pool se contente de l'en-tête (80 octets) et du hash du bloc précédent. Le phénomène a été observé dès 2014-2015 et a culminé lors du fork accidentel de juillet 2015, où plusieurs pools ont prolongé une chaîne contenant un bloc invalide.
Comment ça fonctionne
Un mineur a deux objectifs contradictoires : trouver vite un bloc et ne pas en miner un invalide. Télécharger un bloc adverse de plusieurs mégaoctets prend quelques centaines de millisecondes, durée pendant laquelle le mineur perd en hashrate effectif. Le spy mining contourne cela : le pool extrait l'en-tête, génère immédiatement une coinbase vide (sans autres transactions) et distribue ce template à ses mineurs. Une fois le bloc complet validé, le pool reprend un template normal.
Cas d'usage
Aucun cas d'usage légitime, mais une motivation économique claire : un pool qui valide pendant 500 ms perd statistiquement 0,5 % de sa récompense face à un concurrent rapide. Sur un halving à 3,125 BTC par bloc, cela représente plusieurs milliers d'euros par jour pour un grand pool.
Limites et risques
Le spy mining a directement causé la fork du 4 juillet 2015 : un bloc BIP-66 invalide a été prolongé pendant six confirmations par des pools pratiquant le SPV mining, créant temporairement deux chaînes. Plusieurs services de paiement opérant avec 1 ou 2 confirmations ont été exposés à un risque de double-dépense. La pratique est aussi proche du selfish mining en cela qu'elle dégrade les garanties que les utilisateurs accordent aux confirmations rapides.
À retenir
| Élément | Détail | |---|---| | Surface | En-tête seul, pas de validation | | Durée typique | Quelques centaines de ms par bloc | | Risque | Prolonger une chaîne invalide | | Solution | Compact Blocks (BIP-152) qui rend la validation quasi instantanée |
Termes lies
- Pool de minageUn pool de minage mutualise la puissance de calcul de plusieurs mineurs pour stabiliser leurs revenus. Le pool reçoit la récompense et la redistribue selon les shares. Critiqué pour la centralisation qu'il introduit. Foundry, AntPool, F2Pool, Ocean en sont les principaux.
- MinageLe minage Bitcoin est le processus par lequel des ordinateurs specialises (ASICs) resolvent des calculs cryptographiques pour valider les transactions et creer de nouveaux blocs. Les mineurs sont recompenses en bitcoins pour leur travail. Ce mecanisme de Proof of Work securise le reseau et garantit son fonctionnement decentralise.
- Selfish miningLe selfish mining (Eyal & Sirer, 2014) est une stratégie où un mineur garde secrètement ses blocs pour publier une chaîne plus longue ensuite. Théoriquement profitable au-delà de 25 % de hashrate. Jamais constatée à grande échelle. Vulnérabilité connue mais pas critique.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.