Users has a different wallet address when Sign in

Hello,
Several of our users have a different wallet address from the first sign-in on our platform.
Do you know where this problem could be coming from ?

One of them needs to use MFA, even though it’s not activated in our settings.

Do you have any ideas where this could be coming from ?

Thank you very much in advance for your help.

Hi @Romain,

I hope you’re doing well. Regarding the issue you mentioned, it’s a bit challenging to provide specific advice without knowing more about your configuration and how you’re managing the verifiers. Could you share more details about these aspects? It’s also crucial to know whether the users are utilizing the same email and the same social logins, as the solution might vary based on these factors.

For some general guidance, here’s a link to our documentation that might shed some light on the issue you’re encountering: https://web3auth.io/docs/troubleshooting/different-private-key.

Please have a look and let me know if it helps, or if there’s anything else specific you would like to discuss. I’m here to help!

Hi @TomTom,

Thank you for the quick reply.

We’re using passwordless authentication to authenticate the users.
Please find below the settings we’re using.

{
        loginProvider: "email_passwordless",
        mfaLevel: "none",
        extraLoginOptions: {
          login_hint: email, // email to send the OTP to
          flow_type: "link",
        },
      }

Could you please provide more details such as code snippets, settings, and the package you’re using? Additionally, are you working with Flutter? Your additional context would help us provide more targeted assistance. Thanks a lot for your cooperation!

Hello @TomTom,

Of course:
We are working on VueJS.

Theses are the packages :
    "@web3auth/base": "^8.0.0",
    "@web3auth/ethereum-provider": "^8.0.1",
    "@web3auth/modal": "^8.2.1",
    "@web3auth/no-modal": "^8.2.1",
    "crypto-browserify": "^3.12.0",

This is code being used:

import { Web3Auth } from "@web3auth/modal";
import { CHAIN_NAMESPACES, IProvider, WEB3AUTH_NETWORK } from "@web3auth/base";
import { EthereumPrivateKeyProvider } from "@web3auth/ethereum-provider";
import Web3 from "web3";

    const chainConfig = {
      chainNamespace: CHAIN_NAMESPACES.EIP155,
      rpcTarget: "https://polygon-rpc.com/",
      blockExplorer: "https://polygonscan.com/",
      chainId: "0x89",
      displayName: "Polygon Mainnet",
      ticker: "MATIC",
      tickerName: "Matic",
    };

    const privateKeyProvider = new EthereumPrivateKeyProvider({
      config: { chainConfig: chainConfig },
    });

    const web3auth = new Web3Auth({
      clientId,
      web3AuthNetwork: WEB3AUTH_NETWORK.CYAN,
      privateKeyProvider: privateKeyProvider,
    });

    onMounted(async () => {
      const init = async () => {
        try {
          // IMP START - SDK Initialization
          await web3auth.initModal();
          // IMP END - SDK Initialization
          provider = web3auth.provider;

          if (web3auth.connected) {
            loggedIn.value = true;
          }
        } catch (error) {
          console.error(error);
        }
      };

      init();
    });

    const login = async () => {
      // IMP START - Login
      provider = await web3auth.connect();
      // IMP END - Login
      if (web3auth.connected) {
        loggedIn.value = true;
      }
    };

Some of our users have the following error in the modal.
Also, they have a 2FA requested (Code sent mobile phone number) which we never activated on our end.

Could not get result from torus nodes. idtoken incorrect from sub params. Expected: c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 Got: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL3RvcnVzLmF1LmF1dGgwLmNvbS8iLCJhdWQiOiJLRzd6azg5WDNRZ3R0U3lYOU5KNGZHRXlGTmhPY0pUdyIsIm5hbWUiOiIrMzMtNzcwMDQzNTcxIiwicGhvbmVfbnVtYmVyIjoiKzMzLTc3MDA0MzU3MSIsImlhdCI6MTcxMzI3ODcxOSwiZWF0IjoxNzEzMjc5MDE5LCJleHAiOjE3MTMyNzkwMTl9.pkQZFXpWOC-JLymh7QnFU6Ld9LcmcSbtezpjQekKpxaI4m_UUpSktkx5reJfXjO-WiB5BMnZXhnSHYkLS496TQ

Thank you very much in advance for your help !

Also, there seems to be an additional problem :

  1. If a user sign-in for the first time in our application with “email_passwordless” login_provider and “mfaLevel” set to “none”.
  2. And then sign-in in an other app with “email_passwordless” login_provider and “mfaLevel” set to “mandatory”.
  3. If he tried to sign in again in our app, he has to use the MFA even though it is sets to “none”. But the worst part is that it create a new wallet for the user. He doesn’t have the wallet he had on the first sign in without the MFA.

Hi @Romain,

I’ll discuss this issue with the product team and get back to you with an update. Thanks for your patience!

1 Like

Hi @Romain,

I’ve just tested what you mentioned with a temporary email, and I’m also getting the same public address. If you could record all your processes to obtain a different public address, it would be greatly appreciated because we’re currently unable to reproduce the issue.

Additionally, I want to assure you that if any accounts enable MFA, they would need to use it always, even if you change the MFAlevel to none.

I also recommend reviewing the documentation on how to obtain different public addresses: Link to Documentation

Please don’t hesitate to contact me if you have any concerns about this issue.

Hello @TomTom,

Thank you for the reply, unfortunately I’m not able to reproduce it on my end either.
Is there a way to help our customers to retrieve the email used for the creation of the wallet ?

Thank a lot for your help,
Romain.

Hi @Romain

Yes, there is a way.

Please check the documentation: https://web3auth.io/docs/sdk/pnp/ios/usage#getuserinfo

const userInfo = await web3auth.getUserInfo();

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.