Litepaper

Overview of MPC SDK

The MPC SDK provides tools for managing cryptographic keys securely using distributed key-sharing techniques. This ensures that no single device or entity holds the full key, enhancing security and eliminating single points of failure.

Key operations include Key Generation, Signing, Key Rotation, and Backup/Recovery, designed to support secure Blockchain interactions across various environments.

Core Concepts

  1. Secret Key
  • Definition: The foundational key for Blockchain transactions, used for signing and verification.

  • Supported Types: ECDSA and EdDSA, widely used in Bitcoin, Ethereum, and other Blockchains.

  1. Key Shards
  • Each secret key is divided into shards stored across multiple devices.

  • Purpose: Enhance security by ensuring no single device holds the complete key.

  • Shards include the public key and must be stored securely.

  1. MPC Parties
  • Devices or nodes that participate in managing shards.

  • Examples: Mobile devices, cloud servers, hardware wallets.

  1. Threshold Configuration
  • Defines the number of shards required for operations.

  • Example: A 3-4 threshold allows any 3 out of 4 shards to perform signing.

MPC SDK Functionalities

  • Organizes keys and shards for efficient management.

  • Features:

    • Supports multiple keys per group.

    • Flexible configurations for different applications (e.g., ECDSA vs. EdDSA keys).

Key Operations

  1. Key Generation

The MPC SDK provides two flexible modes for generating cryptographic keys: Key Generation with Mnemonic and Key Generation without Mnemonic. Both modes leverage the distributed nature of MPC to ensure maximum security while supporting diverse user needs.

① Key Generation with Mnemonic

This mode integrates with mnemonic phrases, widely used in Blockchain ecosystems, to ensure compatibility with existing wallet recovery standards.

  1. Mnemonic Creation:

    • A mnemonic phrase is generated by a trusted dealer (typically the user’s mobile device).

    • This phrase serves as the seed for deriving secret keys for various Blockchains (e.g., Bitcoin, Ethereum).

  2. Key Derivation:

    • The secret keys are derived from the mnemonic.

    • The trusted dealer generates MPC key shards for each secret key.

  3. Shard Distribution:

    • The key shards are securely distributed to all MPC parties (e.g., mobile, cloud, hardware wallet).

    • The mnemonic is also distributed to these parties.

  4. Mnemonic Deletion:

    • After shard distribution, the trusted dealer deletes the mnemonic and the original secret keys for security.

  5. Adding New Wallets:

    • If new wallets are needed in the future:

    • Reconstruct the mnemonic from the shards.

    • Derive a new secret key from the mnemonic.

    • Distribute the new key’s shards to MPC parties.

    • Delete the mnemonic and new secret key after distribution.

    Ideal for users who prioritize compatibility with existing wallet systems and require secure recovery options.

② Key Generation without Mnemonic

This mode eliminates the need for mnemonic phrases, focusing on direct and highly secure key generation within the MPC system.

  1. MPC Key Generation:

    • The user triggers the generation process (usually from their mobile).

    • All MPC parties collaboratively generate a new secret key.

    • The secret key is never revealed during this process; each party only holds a shard.

  2. Shard Storage:

    • Each MPC party securely stores its shard of the secret key.

  3. Master Key and Child Keys:

    • The generated secret key serves as a Master Key.

    • Child keys for different Blockchains are derived from this Master Key using a derivation path.

    • Only the child key’s public key is retained for wallet address generation; child key shards are not stored.

    Ideal for users prioritizing maximum security and who do not require mnemonic-based recovery options.

  1. Signing
    • Secure signing without revealing the secret key.

    • Threshold parties collaborate to sign transactions (e.g., Blockchain transfers).

  2. Key Rotation
    • Periodically refreshes shards to enhance security.

    • Mitigates risks if a shard is compromised.

  3. Key Resharing

    • Adjusts the number of parties or the threshold configuration.

    • Adds or removes devices from the MPC system as needed.

  4. Backup and Recovery

    • Shards can be securely backed up on the cloud.

    • Allows restoration if a device is lost or compromised.

  5. Key Import & Export

    • Import: Supports integration with external wallets using mnemonic phrases.

    • Export: Enables secure sharing of keys or mnemonic data when required

MPC SDK Advantages
  • Enhanced Security: Distributed shard storage ensures no single point of failure.

  • Flexibility: Compatible with various Blockchain ecosystems and use cases.

  • Reliability: Backup and recovery options protect against device loss or failure.

  • Scalability: Designed to manage multiple keys and configurations efficiently.

MPC SDK is a cutting-edge solution for secure cryptographic key management. Its unique shard-based architecture provides unparalleled protection for Blockchain assets while maintaining usability and flexibility.