MPC wallet clarifications

Hello,

I would like to create this thread as a reference point for users asking about it, because not really that much people know what this means or does. Hopefully someone knowledgeable can answer the questions asked.

So for starters, somebody in the TG asked what the MPC wallet means or does and I replied with the following:

Well the easiest way to explain is to look at the name of the beast: multi party computation. This mean that multiple parties (users) can access 1 private key/account without holding the exact same key, their combined keys make the final private key. It enhances security, because you can set it up in a way that a transaction must have approval from multiple parties (treshold signatures) before execution is allowed. So in case of a hack, the hacker can’t do shit with 1 key if, for example, 5 approvals are needed from different devices/users. This is great for institutions because they don’t rely on the security of 1 single point of failure (the single private key as we currently know).

This will also help for their decentralized API keys, because now you can give those other parties different kinds of policies (e.g. only trade up to $x, disable withdrawals, etc.) through an API key. So you can have multiple users (or bots) access your account, with limited functionality (I’m not 100% sure on this API/MPC relationship so somebody please correct me if I’m wrong :smile:).

Hope this helps :clinking_glasses:

Please correct me if I’m wrong :slight_smile:

Then the following questions were asked:

  • What if 1 or more of those treshold signatures get lost? How will you be able to execute a TX anyway? Can you create or replace a new party? How will this work?
  • The different parties don’t actually have to be physical devices, but can also be things like email, biometric identification, password, etc., right?

Thanks in advance for answering these.

9 Likes

@Nick thanks for doing the community outreach on those platforms.

It is mostly correct. But I think a important note is needed: users do not collaborate on the private key, meaning that we don’t all work together with different keys to form a final key - this would mean that in a moment there was a place here a full key able to sign transactions existed, and that would be a security vulnerability.

So that is not how it works.

Nash and users collaborate in a protocol to form the final signed transaction! This means that users generate what we call a “pre-signature” using their keys, than Nash receives an encrypted message that it operates on without decryption (this property is called homomorphic) to generate the final signature.

A lot of complicated text to explain that: on our MPC users collaborate in a protocol to generate a valid signature, not a final key.

Regarding your questions:

What if 1 or more of those treshold signatures get lost? How will you be able to execute a TX anyway? Can you create or replace a new party? How will this work?

You cannot create a TX without the other parties, as a fact Nash can’t initiate transactions, it can only complete the TX created by users. What you describe on the case of a user losing his part is possible, the user is the only one with the full knowledge (the 12 words), so it can generate new pairs in a rekeying process.

On practice how this looks like ? User would “revoke” a set of keys and create a new key for the same account using his 12 words.

The different parties don’t actually have to be physical devices, but can also be things like email, biometric identification, password, etc., right?

For it to be a security improvement it should a different memory region, meaning that no information besides what is communicated in the protocol is shared. On computers if it lives in a email is really not secure, this can be done on modern processors and mobile using what is called secure enclave, so you can record a key shard there.

In practice is better that they are completely different entities, meaning: different people and businesses.

7 Likes

so your not going to go towards no seed phrase at all ? escrow solution on that other wallet (forget the name ) does look pretty nifty and prob protects the user even further … (from self harm)

just to add as far as i know (in some jurisdictions protection of speech means u can withhold passwords but biometrics can be used to open / access *things )
so yeh ud def want to maintain a component of the secret behind a password

So @canesin, after the implementation of the MPC, would you say that having your coins on Nash will be safer than having your coins on a hardware wallet? If not, do you believe Nash will ever get to the point where it is safer to keep coins with the Nash wallet than it will be to have them on a hardware wallet? or is this impossible? I know the big thing advertised was setting up withdraw limits so even if someone forces you to move funds, the damage is limited.

1 Like
1 Like

Would like to add a resource to learn more about MPC. Nash should be part of it

https://www.mpcalliance.org/

3 Likes

yah Ouriel’s club … that guys a legend :slight_smile: