Skip to content
by Unity Nodes
MPC (Chain Signatures)Stable

MPC (Chain Signatures) 3.2.0

3.2.0github.com

This is our last release for 2025! Its main features are derivation path support for CKD and initial support for Robust ECDSA. The release also includes several fixes and optimizations related to gas usage, and bumps…

MPC 3.2.0

This is our last release for 2025! Its main features are derivation path support for CKD and initial support for Robust ECDSA. The release also includes several fixes and optimizations related to gas usage, and bumps the underlying nearcore version to 2.10.3.

What's Changed

🚀 Features

  • #1627(@gilcu3): Add derivation path support for ckd (#1627)

  • #1670(@gilcu3): Add robust ecdsa SignatureScheme variant (#1670)

  • #1658(@kevindeforth): Add new signature scheme variant to contract (#1658)

  • #1679(@gilcu3): Robust_ecdsa provider implementation (#1679)

🐛 Bug Fixes

  • #1614(@DSharifi): Use gas value in the new config for the update promise (#1614)

  • #1620(@DSharifi): Code hashes can now be be voted for in all code protocol states (#1620)

  • #1635(@barakeinav1): Correct error reporting of invalid TEE participants (#1635)

  • #1636(@pbeza): Remove votes from UpdateEntry (#1636)

  • #1665(@pbeza): Bump ProposedUpdatesEntries to V3 and clean up V2 (#1665)

  • #1673(@gilcu3): Fix derivation_path params in ckd-example-cli (#1673)

🚜 Refactor

  • #1626(@pbeza): Remove ReportData::new() (#1626)

  • #1642(@DSharifi): Remove stale comment and improve if condition for charging of attestation storage (#1642)

  • #1668(@pbeza): Move gas constants for voting from test to common module (#1668)

  • #1695(@DSharifi): Clarify that tee_state contains attestations for not just active participants (#1695)

📚 Documentation

  • #1456(@barakeinav1): Create a guide for localnet + MPC node running in TEE setup (#1456)

  • #1604(@barakeinav1): Testnet with tee support guide (#1604)

⚡ Performance

  • #1659(@netrome): Use procedural macro to include expected measurements at compile time (#1659)

🧪 Testing

  • #1623(@DSharifi): (pytest) Run all pytests with 1 validator (#1623)

  • #1637(@kevindeforth): Migration system test (#1637)

  • #1671(@gilcu3): Refactor pytests, several improvements preparing for robust ecdsa integration (#1671)

  • #1672(@gilcu3): Refactor integration test in the node, improve PortSeed struct (#1672)

  • #1678(@kevindeforth): Fix sign sandbox tests (#1678)

  • #1682(@gilcu3): Add tests for robust ecdsa (#1682)

⚙️ Miscellaneous Tasks

  • #1613(@DSharifi): Remove latest_code_hash method from contract (#1613)

  • #1612(@pbeza): Introduce a gas constant for vote_update (#1612)

  • #1618(@barakeinav1): Update config files (#1618)

  • #1633(@gilcu3): Update reference to ts repo (#1633)

  • #1648(@gilcu3): Enforce kebab-case for crate names (#1648)

  • #1651(@gilcu3): Broken contract verification (#1651)

  • #1653(@netrome): Bump nearcore to 2.10.2 (#1653)

  • #1676(@DSharifi): Run test profile on cargo nextest invocation (#1676)

  • #1681(@DSharifi): Enable debug-asserttions on CI test profile (#1681)

  • #1692(@gilcu3): Update version and changelog for 3.2.0 release (#1692)

  • #1683(@kevindeforth): (contract) Sandbox code organization (#1683)

  • #1698(@gilcu3): bump nearcore to 2.10.3 (#1698)

Docker images

  • nearone/mpc-node:3.2.0
    • Manifest digest: sha256:b97b15387ed32ac6ada5d4445bd4ddf35004064577ae2a1c550400071830ae83
    • Image ID: sha256:00006c1059cc0219005b21956a4df8238b0cc33ad559a578a63169de4e28c81e
  • nearone/mpc-node-gcp:3.2.0
    • Manifest digest: sha256:70a9a77e9da1f6ed76b5ff6dba1a956573c7693a22311a32e6a4866ba2a9bc93
    • Image ID: sha256:758cd5c68a065cc1e206a698b98ee1a1b0acfdabd623997c87692197d039cee8
  • nearone/mpc-launcher:3.2.0
    • Manifest digest: sha256:4065f2fce41415962be92471a4e793ff5147b00b2784617c7e8098be2761a875
    • Image ID: sha256:bad670e1ec573c3d242f83abcf95f5b6beb8811a16ed2822b0d492252a67ec39

MPC contract

  • mpc-contract-v3.2.0.wasm: now with embedded ABI (file included in the release attachments)
    • digest: sha256:64ad42f303275d0a0b8e1c7eef6c3347355d08b7f831df5f9b3ff3fb1ae3ba09