Skip to content

Conversation

@jeffrystone
Copy link

The snap now brings full ZIP-48 transparent multisig support with Asigna into MetaMask Snaps by exposing new RPC methods that can be invoked via wallet_invokeSnap. Every method enforces well-formed ZIP-48 derivation paths (starting with m/…), derives keys through snap_getBip32Entropy, and displays a user-facing confirmation dialog before any sensitive action is performed.

  • signTransparent – takes a list of transaction sighashes tied to a ZIP-48 derivation path, shows the recipient/amount/network to the user, and upon confirmation returns DER signatures with SIGHASH_ALL, ready to be assembled into the multisig transaction.
  • signTransparentMessage – signs arbitrary text messages with the selected transparent key, applies ZIP-302 message framing, verifies the signature on-device, and optionally checks the derived address against a provided expectedAddress to prevent account mix-ups.
  • getTransparentPublicKey – safely derives and returns the compressed public key for any ZIP-48 path after the user approves a dialog showing the origin and requested derivation path.

This makes the snap cover the full transparent ZIP-48 workflow—transaction signing, message signing, and key disclosure—with explicit user consent at each step.

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.

1 participant