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

Implement presignature generation #341

Closed
Tracked by #326
itegulov opened this issue Oct 31, 2023 · 0 comments · Fixed by #342
Closed
Tracked by #326

Implement presignature generation #341

itegulov opened this issue Oct 31, 2023 · 0 comments · Fixed by #342
Assignees
Labels
Emerging Tech Emerging Tech flying formation at Pagoda Near BOS NEAR BOS team at Pagoda

Comments

@itegulov
Copy link
Contributor

Description

A presignature is an interactive protocol with a prerequisite of two Beaver triples, but it can be computed offline. Requires 1 round of all-to-all ($n^2$) communication between participants.

Invariants

  • Presignatures should never be reused (even if the process failed mid through), so it is important to have mutually exclusive access to each of them.
  • Leaking presignature leaks the private key share, so it is very important to invest into a security layer for them
  • Presignatures do not require the payload to be known yet

Challenges

  • Consensus on which triples to use. Since nodes can start generating presignatures asynchronously they can cannibalize each other's ability to produce presignatures by using an overlapping set of triples. To overcome this we can mandate that every participant should only use triples proposed by them specifically.
  • Identification of presignatures. We need to route networking messages to generation protocol, so we need some way to distinguish presignatures before they are actually generated. One way to do this is by indentifying them by a pair (triple0, triple1) which should work, but I propose to use a separately generated random presignature id to reuse it at a later stage for signatures.

For future

This issue is focused on the core functionality, persistence layer and stockpiling are left for the future work

@itegulov itegulov added Near BOS NEAR BOS team at Pagoda Emerging Tech Emerging Tech flying formation at Pagoda labels Oct 31, 2023
@itegulov itegulov self-assigned this Oct 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Emerging Tech Emerging Tech flying formation at Pagoda Near BOS NEAR BOS team at Pagoda
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant