How keys are created & managed in the new architecture (full MPC) of Web3Auth?

Hi Web3Auth Community, I have a few questions regarding MPC Core kit flow.

  1. What DKG protocol do you use for localSign(), is that DKLS19?
  2. Is the set of nodes in signing phase the same as the set of nodes in the login/attestation phase?
  3. How nodes are chosen for each user? Are they rotated/re-selected for each user on each user session or each epoch?
  4. How the nodes can trust the user to work on signing, is it just based on OAuth attestation/session key just like when creating session or based on shares?
  5. How different set of attached nodes across time persist the threshold key for a specific user? Or the key does not persist at all and keep changing? I heard you use Proactive secret sharing of AVSS, is that true?
  6. Why in the method mpc-core-kit/src/mpcCoreKit.ts:localSign(), you use a hardcoded verifier info and hardcoded number of parties which is 3? And the nodes of SSS, TSS, RSS are hardcoded too.
  7. What is the purpose of pre-compute via socket each time the user wants to sign? Is that a step of the async dkg protocol? It should be calculated from the beginning only once when user signs in, isn’t it?
  8. Are shares part of this MPC & Threshold signature protocol, or they are just for SSS flow? How many shares of a specific user are maintained in the network and how they are used to create threshold signature on behalf of the user?
  9. Do we still have SSS in the full TSS/MPC flow?

Could you please show me the lines of code for these questions? The doc is outdated and does not contain enough information about these. I would appreciate anyone who could help me answer this. Thank you.

hi @achung0147
I’m sorry for the delay in responding to your query. I realize how valuable your time is and I appreciate your patience. I’ll be consulting with our team to ensure that I can provide you with a clear and accurate answer. Thank you for bearing with us, and I’ll reach out to you with an update as soon as possible.

Hi @achung0147,

I hope you’re doing well! I noticed you have some questions that might already be covered in our comprehensive documentation. I highly recommend taking some time to go through it, as it could provide you with the answers you’re looking for and even more useful insights.

Here’s the link to get you started: Web3Auth Wallet Management Infrastructure | Documentation | Web3Auth.

After you’ve had a chance to read through the documentation, if there’s anything that’s not clear or if you have any further questions, please don’t hesitate to reach back out. I’m here to help clarify any doubts and assist you in any way I can.

Looking forward to hearing from you, and I’m eager to help with any additional queries you might have!