SHA-256 : l'algorithme du minage Bitcoin
Un ASIC Bitcoin fait une seule chose : hacher deux fois un en-tête de bloc de 80 octets jusqu'à tomber sous une cible. Comprendre cette boucle explique pourquoi le nonce tourne en permanence, pourquoi une carte graphique ne rattrape pas son retard, et quoi regarder quand le pool ne voit pas votre hashrate.
Ce que la machine hashe vraiment
Le travail utile d'un mineur Bitcoin, c'est de produire un double SHA-256 (souvent noté hash256) sur un en-tête de bloc de 80 octets. Cet en-tête n'est pas le bloc entier. Il contient, dans l'ordre habituel : la version, le hash du bloc précédent, la racine de Merkle des transactions, l'horodatage, le champ de compactage de la cible (nBits), et un nonce de 32 bits.
Le reste du bloc, c'est-à-dire la liste des transactions, n'est pas re-haché à chaque essai. Il est résumé une fois dans la racine de Merkle. Changer une transaction (ou l'extranonce dans le coinbase) change cette racine, donc l'en-tête, donc tout l'espace de recherche.
SHA-256 prend une entrée et rend 32 octets. Double SHA-256, c'est SHA-256(SHA-256(en-tête)). Le réseau compare ce digest à la cible courante : le hash doit être numériquement inférieur à cette cible. Plus la cible est petite, plus les hashes valides sont rares.
Aucun raccourci connu ne permet de calculer le bon nonce à l'avance. La machine les essaie un par un.
Nonce et extranonce : pourquoi le balayage ne s'arrête jamais
Le nonce de l'en-tête fait 32 bits, soit environ 4 milliards de valeurs. Un ASIC moderne épuise cet espace en une fraction de seconde. Ensuite il faut changer autre chose.
En pratique, le pool fournit un job via Stratum : version, prevhash, parties du coinbase, branches de Merkle, nBits, nTime. Le firmware assemble l'en-tête et fait tourner le nonce. Quand l'espace est brûlé, il incrémente un extranonce dans le coinbase, recalcule la racine de Merkle, et recommence. L'horodatage (nTime) peut aussi bouger dans une fenêtre réduite.
La machine ne vise donc pas un bloc à chaque seconde. Elle balaie un espace énorme et envoie au pool tout hash qui passe la cible de share, bien plus facile à atteindre que la cible réseau. C'est ce flux de shares qui remplit votre tableau de bord.
Pourquoi le hash est appliqué deux fois
Le proof-of-work de l'en-tête utilise deux passages SHA-256 successifs, pas un seul. C'est le contrat du protocole, et l'ASIC est câblé pour cette boucle précise, pas pour du SHA-256 générique au sens d'un outil de checksum.
Conséquence pratique : le hashrate affiché est un débit d'essais sur ce puzzle. Un chiffre en TH/s ne se compare à rien d'autre qu'au TH/s d'un autre ASIC SHA-256, jamais à la puissance de calcul d'une machine généraliste.
Pourquoi des ASIC, et pas des GPU
SHA-256 est régulier et ne demande pas de mémoire. On peut donc aligner des milliers de cœurs identiques qui ne font que ça, avec peu de SRAM et beaucoup de pipelines. Un ASIC (Application-Specific Integrated Circuit) est ce circuit : il ne joue pas, il ne rend pas d'images, il hashe.
Une GPU reste polyvalente et perd sur les deux tableaux, le débit utile et les joules par térahash. En 2026, miner du Bitcoin autrement qu'avec un ASIC SHA-256 relève du hobby ou de la démonstration.
Ce que ça change au moment d'acheter :
- Le matériel doit être spécifique Bitcoin / SHA-256. Un ASIC conçu pour une autre famille d'algorithme ne minera pas de Bitcoin.
- L'unité qui compte pour le pool est le TH/s, c'est-à-dire le nombre d'essais par seconde.
- L'unité qui compte pour la facture est le J/TH (watts divisés par TH/s). Deux machines au même TH/s ne coûtent pas la même chose à faire tourner.
Il n'y a rien à optimiser dans SHA-256 lui-même. Les leviers sont ailleurs : choisir la machine, régler un mode de puissance, installer un firmware stable, puis vérifier que le hashrate vu par le pool colle au hashrate local, aux shares perdues près.
Ce que l'opérateur surveille
Un hash gagnant de bloc est rare. Ce que vous voyez toutes les secondes, ce sont des shares. Une share acceptée prouve que la machine a produit un double SHA-256 sous la difficulté du pool ; elle ne dit rien sur un bloc trouvé.
Si le hashrate local est haut et que le pool ne voit rien, SHA-256 n'est pas en cause. Vérifiez dans cet ordre : le job reçu, la connexion réseau, le nom du worker, puis un firmware qui hasherait à côté du template.
La difficulté réseau se recalcule tous les 2016 blocs. C'est un chiffre à relire au moment où vous refaites vos calculs de rendement, pas une constante à recopier. Votre machine, elle, continue de hasher le même en-tête avec le même algorithme.
Acheter ou comparer via The Bitcoin Bay
The Bitcoin Bay est apporteur d'affaires indépendant : nous référençons les ASIC neufs sourcés directement chez les constructeurs (Bitmain, MicroBT, Bitdeer, Canaan) et les machines reconditionnées via revendeurs partenaires vérifiés. Chaque modèle est apparié à des options de hosting professionnel chez nos sites en Europe du Nord et au Paraguay.
Pas de promesse de rendement, pas de paiement traité chez nous — la transaction se signe directement avec le partenaire choisi. Statut CIF/AMF non sollicité.
Sur le même sujet
Monitoring d'un miner : outils et métriques
Surveiller un mineur, c'est comparer ce que la machine dit à ce que le pool compte. Les six familles de signaux à suivre et la méthode pour les interpréter sans se tromper de cause.
LireLogs Bitmain et kernel panic : diagnostic
Lire les logs d'un contrôleur Bitmain dans l'ordre du temps, classer le motif en cinq familles, et traiter un kernel panic comme un arrêt du contrôleur plutôt que comme un problème de minage.
LireJobs Stratum et clean_jobs
Un job Stratum est un contrat de travail, le drapeau clean_jobs le révoque. Les cinq causes d'invalidation et ce que vous pouvez réellement corriger.
Lire