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

Multisig: Connect request and SignMultisigTransaction request #458

Open
wants to merge 29 commits into
base: master
Choose a base branch
from

Conversation

sisou
Copy link
Member

@sisou sisou commented Dec 1, 2022

Related: nimiq/hub#521

This PR adds two requests:

  • Connect
  • SignMultisigTransaction

Connect

For this request, I am adding deterministic RSA key generation from the user's Key's secret. The public RSA key is then shared with the connected app, to be able to encrypt data that only the Keyguard can decrypt again. Encryption and decryption uses the window.crypto.subtle APIs.

SignMultisigRequest

For this request, I am adding a WebAssembly file + JS loader, and the raw Rust code that produces it. This is needed as with the multisig scheme Nimiq is using, scalar multiplication is required, which we cannot do in Javascript. A minimal Rust crate does the trick, and is used as WASM when signing.

@sisou
Copy link
Member Author

sisou commented Dec 1, 2022

@danimoh Do you maybe have a better idea of how to solve the double KeyguardCommand.KeyguardCommand in this commit?
2532190

@sisou sisou force-pushed the multisig branch 2 times, most recently from 08af4d0 to 08748bb Compare December 5, 2022 17:05
@sisou sisou force-pushed the multisig branch 2 times, most recently from 0482b2d to da83212 Compare May 22, 2023 10:10
@sisou sisou force-pushed the multisig branch 2 times, most recently from 26cbddd to 58a01c6 Compare October 22, 2023 14:45
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.

None yet

1 participant