Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

security fix: any participant could disable DKG #464

Merged
merged 1 commit into from
Jul 7, 2022
Merged

security fix: any participant could disable DKG #464

merged 1 commit into from
Jul 7, 2022

Conversation

vibs29
Copy link
Contributor

@vibs29 vibs29 commented Jul 5, 2022

A deal with a bogus signature would still get stored (before producing
an error). That would prevent a properly signed deal coming later from
being stored. This fixes the bug.

The test was also written in a flawed way. It measured two failure
situations ("wrong index" and "wrong deal") after a success situation. But
written that far down, those measurements could well end up measuring
failures due to a duplicate deal instead. This changeset also patches
the test flaw.

A deal with a bogus signature would still get stored (before producing
an error). That would prevent a properly signed deal coming later from
being stored. This fixes the bug.

The test was also written in a flawed way. It measured two failure
situations ("wrong index" and "wrong deal") after a success situation. But
written that far down, those measurements could well end up measuring
failures due to a duplicate deal instead. This changeset also patches
the test flaw.
@CLAassistant
Copy link

CLAassistant commented Jul 5, 2022

CLA assistant check
All committers have signed the CLA.

@ineiti
Copy link
Member

ineiti commented Jul 5, 2022

Looks good to me, thanks a lot!

You will have to sign the CLA before your PR can be merged, though.

@nikkolasg
Copy link
Collaborator

(just a reminder that I have rewrote the whole DKG the the drand fork in a single unit (not separating with VSS) which is more secure, has been audited internally and externally, more readable, and provides high level APIs to use it securely https://github.com/drand/kyber/tree/master/share/dkg)

@ineiti
Copy link
Member

ineiti commented Jul 5, 2022

I have rewrote the whole DKG the the drand fork in a single unit

Do you think it would make sense to add this directory to the dedis/kyber repo under share/dkg/xxx, with some to-be-found value for xxx?

@nikkolasg
Copy link
Collaborator

It would but I've added some tweaks to the group definition,signature schemes, hashable point as well (basically all the things we were exploring of doing back in dedis but never got around to do :D ).
That would need some review and that may or may not be to the kyber maintainers's liking 🤷‍♂️

@ineiti
Copy link
Member

ineiti commented Jul 5, 2022

That would need some review and that may or may not be to the kyber maintainers's liking 🤷‍♂️

OK, that's @pierluca's call then. Even though C4DT could lend a hand starting September...

@sonarcloud
Copy link

sonarcloud bot commented Jul 7, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@nkcr
Copy link
Contributor

nkcr commented Jul 7, 2022

Thanks a lot!

@nkcr nkcr merged commit 3c0d867 into dedis:master Jul 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants