From 52311c0b4697a8f6802727a44744089dd89dd1c3 Mon Sep 17 00:00:00 2001 From: yuriy0803 <68668177+yuriy0803@users.noreply.github.com> Date: Tue, 24 Oct 2023 12:37:09 +0200 Subject: [PATCH] Update miner.go --- proxy/miner.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/proxy/miner.go b/proxy/miner.go index 039ad22..852b9da 100644 --- a/proxy/miner.go +++ b/proxy/miner.go @@ -39,21 +39,28 @@ func (s *ProxyServer) processShare(login, id, ip string, t *BlockTemplate, param nonceHex := params[0] hashNoNonce := params[1] + mixDigest := params[2] nonce, _ := strconv.ParseUint(strings.Replace(nonceHex, "0x", "", -1), 16, 64) shareDiff := s.config.Proxy.Difficulty stratumHostname := s.config.Proxy.StratumHostname var result common.Hash if stratum { - hashNoNonceTmp := common.HexToHash(params[1]) + hashNoNonceTmp := common.HexToHash(params[2]) - _, hashTmp := hasher.Compute(t.Height, hashNoNonceTmp, nonce) + mixDigestTmp, hashTmp := hasher.Compute(t.Height, hashNoNonceTmp, nonce) params[1] = hashNoNonceTmp.Hex() + params[2] = mixDigestTmp.Hex() + hashNoNonce = params[1] result = hashTmp } else { hashNoNonceTmp := common.HexToHash(hashNoNonce) - _, hashTmp := hasher.Compute(t.Height, hashNoNonceTmp, nonce) + mixDigestTmp, hashTmp := hasher.Compute(t.Height, hashNoNonceTmp, nonce) + // check mixDigest + if mixDigestTmp.Hex() != mixDigest { + return false, false + } result = hashTmp }