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

Create a wrapper for synedrion::KeyShare with a wasm binding #488

Closed
ameba23 opened this issue Nov 9, 2023 · 1 comment
Closed

Create a wrapper for synedrion::KeyShare with a wasm binding #488

ameba23 opened this issue Nov 9, 2023 · 1 comment
Assignees

Comments

@ameba23
Copy link
Contributor

ameba23 commented Nov 9, 2023

Currently when running the DKG protocol on wasm, the user's keyshare is returned as a JSON encoded string.

Why is this issue relevant?

This is a bit space inefficient and does not allow the user access to useful information which can be obtained from the keyshare, eg: the verifying key (the public signing key the keyshare is used to sign messages with).

What steps are required to resolve this?

Make a type with a wasm binding which wraps synedrion::KeyShare, exposes a getter for the verifying key, and maybe includes a method to serialize it with some binary serialization, eg: bincode.

We do already have something very similar in synedrion-wasm: https://github.com/entropyxyz/synedrion/blob/c1958bce332140cd294de99f5dc6c0120fe084ca/synedrion-wasm/src/lib.rs#L50 - but i am not sure whether to use that or rather avoid having an extra dependency and just keep it in entropy-protocol.

Does this change the spec? HTTP, extrinsic, or storage? Is it breaking? Clearly describe the new interface.

This would be a breaking change to entropy-protocol wasm interface

@ameba23 ameba23 added this to the Core v0.1.0 - Devnet 🚀 milestone Nov 9, 2023
@ameba23 ameba23 self-assigned this Nov 9, 2023
@ameba23
Copy link
Contributor Author

ameba23 commented Nov 23, 2023

Resolved with #512

@ameba23 ameba23 closed this as completed Nov 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant