I'm still trying to get a handle on how all this pool mining stuff works so I decided to use this guy's project -- https://github.com/cryptonoter/CryptoNoter/ to give it a whirl. In particular I notice when I send a message (I believe this is when I'm authenticating into the pool) ...


I get a response that looks like


What does this mean? In particular, what is the "hashes" field?

1 Answer 1


It's the number of valid shares that the miner has sent to the pool.

Relevant excerpt from the CryptoNoter source:

// (whenever the upstream pool accepts a share)

// increment the number of accepted shares

// notify the miner via websockets
buf = {
    "type": "hash_accepted",
    "params": {
        "hashes": conn.accepted
buf = JSON.stringify(buf);
  • Is this documented anywhere other than in teh source code? That is, is this the number of valid shares that the miner has submitted since it started participating in the pool or since it last connected to the pool?
    – Dave
    Apr 1, 2018 at 18:10
  • It's just the number of shares submitted in this connection. It's there because whoever wrote the CoinHive code put it there, and CryptoNoter is just a copy of it. Apr 1, 2018 at 20:07
  • Last follow up, it seems that all the pools I plug in all use this same protocol, e.g. they all send back things that looks like '{"type":"authed","params":{"token":"","hashes":0}}'. It seems like some kind of agreed upon convention taht everyone uses. Is taht true? If so, is taht documented anywhere? Reading your comment, it seems that the Coinhive authors made up the convention themselves, but they would still have to get the pools to go along with it to have meaning, unless I'm thinking about this wrong.
    – Dave
    Apr 2, 2018 at 2:42
  • There's two different protocols going on here. One for the WebSocket connection (the one with "hashes": 0) and one for the TCP connection. Unfortunately, for Monero, neither one is standard. Apr 2, 2018 at 8:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.