Skip to content

feat(sdk-core): add EdDSA MPCv2 full 3-round signing orchestration#8697

Open
Marzooqa wants to merge 1 commit intoWCI-153from
WCI-154
Open

feat(sdk-core): add EdDSA MPCv2 full 3-round signing orchestration#8697
Marzooqa wants to merge 1 commit intoWCI-153from
WCI-154

Conversation

@Marzooqa
Copy link
Copy Markdown
Contributor

@Marzooqa Marzooqa commented May 5, 2026

  • Add signTxRequest, signTxRequestForMessage, and signRequestBase to EddsaMPCv2Utils implementing WASM round 0 + API rounds 1 and 2
  • Verify PGP signatures on BitGo round1Output and round2Output
  • Return latestTxRequest after round 2 (round 3 + send deferred to next PR)
  • Add signTxRequest unit tests using nock with real BitGo DSG sessions

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

TICKET: WCI-154

@linear-code
Copy link
Copy Markdown

linear-code Bot commented May 5, 2026

@Marzooqa Marzooqa changed the title feat(sdk-core): add EdDSA MPCv2 signing rounds 1 and 2 feat(sdk-core): add EdDSA MPCv2 full 3-round signing orchestration May 6, 2026
- Add signTxRequest, signTxRequestForMessage, and signRequestBase to
  EddsaMPCv2Utils implementing the full online DSG protocol:
  WASM round 0, API rounds 1-3, and sendTxRequest
- Verify PGP signatures on BitGo round1Output and round2Output
- Use pickBitgoPubGpgKeyForSigning with isEddsaMpcv2=true for ed25519 key
- Use decodeWithCodec for type-safe parsing of signature share responses
- Add comprehensive signTxRequest unit tests covering:
  - tx signing (all 3 rounds + send)
  - message signing (all 3 rounds + send)
  - 429 rate-limit retry handling (up to 3 retries)
  - rejection after 4+ consecutive 429 errors
  - rejection on wrong round1Output type

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

TICKET: WCI-154
@Marzooqa Marzooqa marked this pull request as ready for review May 6, 2026 15:14
@Marzooqa Marzooqa requested review from a team as code owners May 6, 2026 15:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant