diff options
author | Jimmy Hu <jimmy.hu@dexon.org> | 2018-09-23 20:51:05 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-23 20:51:05 +0800 |
commit | 0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89 (patch) | |
tree | 626db6969aee92702001e5c9f3de56e2a439ccac /core/dkg-tsig-protocol.go | |
parent | 2c71e8448a9c03e924a7869351eebf2def1af057 (diff) | |
download | dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar.gz dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar.bz2 dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar.lz dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar.xz dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.tar.zst dexon-consensus-0ab5a2d4f63ece79a4df32c6fb3ac710a954fd89.zip |
core: run first DKG at startup. (#129)
Diffstat (limited to 'core/dkg-tsig-protocol.go')
-rw-r--r-- | core/dkg-tsig-protocol.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/core/dkg-tsig-protocol.go b/core/dkg-tsig-protocol.go index dc4e630..ccd2439 100644 --- a/core/dkg-tsig-protocol.go +++ b/core/dkg-tsig-protocol.go @@ -83,6 +83,7 @@ type dkgShareSecret struct { type dkgGroupPublicKey struct { round uint64 qualifyIDs dkg.IDs + qualifyNodeIDs types.NodeIDs idMap map[types.NodeID]dkg.ID publicKeys map[types.NodeID]*dkg.PublicKey groupPublicKey *dkg.PublicKey @@ -282,6 +283,7 @@ func (d *dkgProtocol) processPrivateShare( if _, exist := d.antiComplaintReceived[prvShare.ReceiverID]; !exist { d.antiComplaintReceived[prvShare.ReceiverID] = make(map[types.NodeID]struct{}) + d.recv.ProposeDKGAntiNackComplaint(prvShare) } d.antiComplaintReceived[prvShare.ReceiverID][prvShare.ProposerID] = struct{}{} @@ -330,6 +332,7 @@ func newDKGGroupPublicKey( } } qualifyIDs := make(dkg.IDs, 0, len(mpks)-len(disqualifyIDs)) + qualifyNodeIDs := make(types.NodeIDs, 0, cap(qualifyIDs)) mpkMap := make(map[dkg.ID]*types.DKGMasterPublicKey, cap(qualifyIDs)) idMap := make(map[types.NodeID]dkg.ID) for _, mpk := range mpks { @@ -339,6 +342,7 @@ func newDKGGroupPublicKey( mpkMap[mpk.DKGID] = mpk idMap[mpk.ProposerID] = mpk.DKGID qualifyIDs = append(qualifyIDs, mpk.DKGID) + qualifyNodeIDs = append(qualifyNodeIDs, mpk.ProposerID) } // Recover qualify members' public key. pubKeys := make(map[types.NodeID]*dkg.PublicKey, len(qualifyIDs)) @@ -368,6 +372,7 @@ func newDKGGroupPublicKey( return &dkgGroupPublicKey{ round: round, qualifyIDs: qualifyIDs, + qualifyNodeIDs: qualifyNodeIDs, idMap: idMap, publicKeys: pubKeys, threshold: threshold, |