-
Notifications
You must be signed in to change notification settings - Fork 37
Description
How do we utilize multi-wallet encryption amongst all Motor Nodes connected to a User?
Read some interesting stuff about Multi-Party Computation (MPC). TLDR; MPC enables multiple parties – each holding their own private data – to evaluate a computation without ever revealing any of the private data held by each party (or any otherwise related secret information).
- MPC based Wallets: With an MPC wallet, the private keys and their control are divided between several devices. This means that in order to use the funds in an MPC wallet, all of the devices must be used. (If you see where I’m getting at)
- ZenGo Wallet: This is a consumer-facing application for an MPC-based wallet. Right now, it is a two-part system where your devices communicate with ZenGo’s servers
Solution
Since root level DID is currently supposed to be using the MultiSig mechanism and it is not implemented yet (along with Race conditions/Edge cases). Therefore, we should do some R&D on how MPC could be integrated with a Motor Node for our transactional mechanism and authorization mechanism. This would allow the Libp2p motor host to operate as the most secure Wallet on the market. Along with this, I was thinking that private key generation should be tied to Users Vault Bucket - tangential to how ZenGo is handling it, except the data is retained with the User (Due to our DID mechanism).
Resources
- Go MPC Library and Associated Slideshow
- Go Multi Party Sig
- Awesome MPC
- [WHITEPAPER] MPC Wallet by Unbound
- [ARTICLE] MPC Primer by ZenGo
- [VIDEO] MPC Basics
Diagram(s)
┆Issue is synchronized with this Asana task by Unito
