@web3auth/mpc-remote-signer-plugin
TypeScript icon, indicating that this package has built-in type declarations

0.1.1-alpha.0 • Public • Published

mpc-remote-signer-plugin

MPC remote signer plugin allow signing happen on the server - server computation

Usage

Initialize

    const localCorekitInstance = new Web3AuthMPCCoreKit({
        web3AuthClientId,
        web3AuthNetwork: network,
        storage: memoryStorage,
        manualSync: params.manualSync ?? false,
        tssLib: dklsLib,
        uxMode: "nodejs",
    });
    await localCorekitInstance.init();
    const { idToken } = await mockLogin(params.email);
    await localCorekitInstance.loginWithJWT({
        verifier: params.verifier,
        verifierId: params.email,
        idToken,
    });

    const authenticatorFactorManager= new AuthenticatorFactorManager({
        backendUrl: BACKEND_URL,
        remoteSignerInstance: instance,
        storage: memoryStorage,
    });
    await authenticatorFactorManager.init();

    const remoteSignerPlugin = new MPCRemoteSignerPlugin(localCorekitInstance, authenticatorFactorManager);
    await remoteSignerPlugin.init();

Register

   
    const result = await authenticatorService.startRegisterFactor();
    mfaSecret = result.secretKey;
    // prompt secret in qr or key in sercret in authenticator
    // retrieve totp code

    await authenticatorService.verifyRegistration(code);

Login with remote factor

    await authenticatorService.setupRemoteSignerUsingAuthenticatorCode(code);

Remote Sign

    await localCorekitInstance.sign(Buffer.from("Hello, world!"))

Rehydrate

    // ... after core kit login with JWT

    await authenticatorService.init();

Package Sidebar

Install

npm i @web3auth/mpc-remote-signer-plugin

Weekly Downloads

1

Version

0.1.1-alpha.0

License

ISC

Unpacked Size

589 kB

Total Files

22

Last publish

Collaborators

  • chaitanyapotti
  • archit_web3
  • himanshunpm009