Question

je regarde le protocole de strate et j'ai un problème avec la valeur nbits de la méthode mining.notify.J'ai du mal à le calculer, je suppose que c'est la difficulté monétaire.

J'ai extrait une notification d'un pool dogecoin et elle a renvoyé 1b3cc366 et à l'époque la difficulté était 1078.52975077.

Je suppose ici que 1b3cc366 devrait me donner 1078,52975077 une fois converti.Mais je n'arrive pas à faire la conversion correctement.

j'ai regardé ici, ici et j'ai également essayé la fonction .NET BitConverter.Int64BitsToDouble.

Quelqu'un peut-il m'aider à comprendre ce que signifie la valeur nbits ?

Était-ce utile?

La solution

Tu as raison, nbits est la difficulté actuelle du réseau.

La difficulté d'encodage est entièrement décrite ici.

Représentation hexadécimale comme 0x1b3cc366 se compose de deux parties :

  • 0x1b -- nombre d'octets dans une cible
  • 0x3cc366 -- préfixe cible

Cela signifie que le hachage valide doit être inférieur à 0x3cc366000000000000000000000000000000000000000000000000 (c'est exactement 0x1b = 27 octets de long).

La représentation en virgule flottante de la difficulté montre à quel point la cible actuelle est plus difficile que celle utilisée dans le bloc de genèse.

Satoshi a décidé d'utiliser 0x1d00ffff comme une difficulté pour le bloc de genèse, la cible était donc0x00ffff0000000000000000000000000000000000000000000000000000.

Et 1078,52975077 représente de combien l’objectif actuel est supérieur à l’objectif initial :

$ echo 'ibase=16;FFFF0000000000000000000000000000000000000000000000000000 / 3CC366000000000000000000000000000000000000000000000000' | bc -l
1078.52975077482646448605
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top