Bonjour,
-Les transactions qui se trouvaient dans le bloc de la branche devront être insérer dans un nouveau bloc sur le tronc
OK, vu le nombre de mineurs, j'imagine le nombre d'insertions de transactions avortées puis recommencées
et aussi l'importance du flux permanent de communication entre les mineurs. En fait, celui qui a un peu de retard sur la vision de la chaîne de bloc. (Ho ! tiens ! Ça fait exotique de le dire en français

) risque beaucoup de choisir des transactions déjà insérées par dautres.
En fait, il n'y a pas de communication direct entre les mineurs. Les mineurs ne communiquent qu'avec leur noeud bitcoin (en général bitcoin-core). Le mineur demande le travail à effectuer directement au noeud. Lorsque le noeud détecte qu'un nouveau bloc a été ajouté dans la blockchain, le noeud va prévenir le mineur qu'il peut arrêter de travailler sur son bloc courant (car celui-ci contient très certainement des transactions qui viennent d'être validées par le dernier bloc de la blockchain, et le nouveau bloc doit contenir une référence sur le dernier bloc insérer dans la blockchain) et qu'il doit construire un autre bloc pour essayer de le valider. Pour construire son nouveau bloc, le mineur va récupérer une liste fraiche de transactions depuis le noeud. Cette liste ne contient plus les transactions qui viennent d'être validées.
Donc dans l'idéal, tous les noeuds informent au même moment tous les mineurs qu'ils doivent commencer le travail sur un nouveau bloc. Cela évite l'insertion d'une transaction déjà validé dans le bloc courant d'un mineur.
A l'heure actuel, le réseau bitcoin est suffisamment fluide pour éviter la majeur partie des problèmes de synchronisation (quelques secondes de retard n'est pas réellement impactant). En revanche, sur des monnaies alternatives qui utilise un temps de génération de bloc plus court (10 minutes pour bitcoin, 2.5 pour litecoin), les problèmes de synchronisation se font plus rapidement ressentir par les mineurs.
-Pour définir lequel des deux blocs le réseau va définir comme la branche, le réseau regarde lequel des deux blocs à un hash d'entête avec la valeur la plus petite (donc le bloc qui a potentiellement nécessité le plus de travail).
C'est à dire celui qui commence par le plus de "0" ?
C'est bien ça