Multi-party Computation

Multi-party computation allows security, privacy, self-sovereignty and decentralization for many features of Silk. The MPC architecture can be found in the Silk white paper.

Silk aggregates MPC networks to achieve redundancy, high data availability, and decentralization. A particular implementation of Discrete Log Equality proofs allows for verifiable message passing of inert key shares across MPC networks with imperceptible latencies.

Decentralized Custody

MPC protocols are used to split, and maintain availability of a user's key so that they can log in on any device as long as they can prove their identity. The protocol meets the following requirements for decentralized custody:

  1. Preservation of user custody so that Silk cannot see the user's private key under any circumstances

  2. Verification that username and password can generate a wallet with (unlike weak local key derivation algorithms).

  3. Compatible with trusted set up for the zero-knowledge proofs used in wallet recovery.

Silk additionally uses MPC networks such as Lit, Medusa, and TACo to encrypt and decrypt data without a centralized data custodian. Since security of these networks are still being battle-tested, Silk is careful never to entrust the user's private key to a single MPC network. This way, the user is always in control, even if a network is compromised.

Scaling with MPC

Computation time across MPC networks for authentication and signing has been benchmarked in the 10s of milliseconds. Network latency is similarly negligible, requiring few communication rounds and having strong cryptographic properties that obviate the need for HTTPS handshake overhead.

Last updated