Commit e72f7675 authored by 贾浩@五瓣科技's avatar 贾浩@五瓣科技

skip empty proof

parent fe2b03cf
......@@ -38,6 +38,9 @@ func (s *Server) PushProof(ctx context.Context, req *witnessv1.PushProofRequest)
log.WithFields(log.Fields{"miner": miner, "reward": reward, "proofs": len(proofs)}).Debug("push proof")
for _, proof := range proofs {
if proof.Workload == 0 {
continue
}
hashPayload := append(append([]byte(proof.TaskId), proof.ReqHash...), proof.RespHash...)
containerPubKey, err := crypto.SigToPub(crypto.Keccak256(hashPayload), proof.ContainerSignature)
if err != nil {
......
......@@ -369,6 +369,7 @@ func (w *Witness) GetMerkleProof(address common.Address) (workload uint64, proof
w.Unlock()
if !ok {
// todo
return 0, nil
}
object := w.state.GetMinerObject(address)
......
......@@ -11,9 +11,12 @@ import (
func TestMT(t *testing.T) {
proofs := make([]common.Hash, 0)
proofs = append(proofs, common.HexToHash("0x1"))
proofs = append(proofs, common.HexToHash("0x2"))
proofs = append(proofs, common.HexToHash("0x3"))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x1").Bytes()))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x2").Bytes()))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x3").Bytes()))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x4").Bytes()))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x5").Bytes()))
proofs = append(proofs, crypto.Keccak256Hash(common.HexToHash("0x6").Bytes()))
address := common.HexToAddress("0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326")
amount := big.NewInt(0).SetUint64(10)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment