Got 2 wallet address with same clientId, verifier (urgent)

Hi dev team,

I have some issue still blocking release application:
I got 2 wallet address with same clientId, verifier.
The application use twitter verifier only, but that issue was randomly.

  • SDK Version: WebModal
  • Platform: Web
  • Browser Console Screenshots:
  • If the issue is related to Custom Authentication, please include the following information (optional):
    • Verifier Name: default
    • JWKS Endpoint:
    • Sample idToken (JWT):
const web3AuthInstance = new Web3Auth({
          chainConfig: isProduction()
            ? CHAIN_CONFIG.mainnet
            : CHAIN_CONFIG.polygon,
          web3AuthNetwork: isProduction()
            ? 'sapphire_mainnet'
            : 'sapphire_devnet',
          clientId: WEB3_AUTH_CLIENT_ID,
          uiConfig: {
            loginMethodsOrder: ['twitter'],
          },
          sessionTime: 86400 * 7,
          enableLogging: true,
        });

const adapter = new OpenloginAdapter({
          adapterSettings: {
            network: isProduction()
              ? WEB3AUTH_NETWORK.SAPPHIRE_MAINNET
              : WEB3AUTH_NETWORK.SAPPHIRE_DEVNET,
            clientId: WEB3_AUTH_CLIENT_ID,
            uxMode: 'redirect',
          },
        });

await web3AuthInstance.initModal({
          modalConfig: {
            // Disable Wallet Connect V2
            [WALLET_ADAPTERS.WALLET_CONNECT_V2]: {
              label: 'wallet_connect',
              showOnModal: false,
            },
            // Disable Metamask
            [WALLET_ADAPTERS.METAMASK]: {
              label: 'metamask',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.TORUS_SOLANA]: {
              label: 'torus',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.PHANTOM]: {
              label: 'phantom',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.SOLFLARE]: {
              label: 'solfare',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.SLOPE]: {
              label: 'slope',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.TORUS_EVM]: {
              label: 'torus',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.COINBASE]: {
              label: 'coinbase',
              showOnModal: false,
            },
            [WALLET_ADAPTERS.OPENLOGIN]: {
              label: 'openlogin',
              loginMethods: {
                twitter: {
                  name: 'twitter',
                  mainOption: true,
                },
                google: {
                  name: 'google',
                  showOnModal: false,
                },
                facebook: {
                  name: 'facebook',
                  showOnModal: false,
                },
                reddit: {
                  name: 'reddit',
                  showOnModal: false,
                },
                discord: {
                  name: 'discord',
                  showOnModal: false,
                },
                twitch: {
                  name: 'twitch',
                  showOnModal: false,
                },
                apple: {
                  name: 'apple',
                  showOnModal: false,
                },
                line: {
                  name: 'line',
                  showOnModal: false,
                },
                github: {
                  name: 'github',
                  showOnModal: false,
                },
                linkedin: {
                  name: 'linkedin',
                  showOnModal: false,
                },
                weibo: {
                  name: 'weibo',
                  showOnModal: false,
                },
                wechat: {
                  name: 'wechat',
                  showOnModal: false,
                },
                email_passwordless: {
                  name: 'email_passwordless',
                  showOnModal: false,
                },
                sms_passwordless: {
                  name: 'sms_passwordless',
                  showOnModal: false,
                },
                kakao: {
                  name: 'kakao',
                  showOnModal: false,
                },
              },
              // setting it to false will hide all social login methods from modal.
              // showOnModal: true,
            },
          },
        });

@peter1 Thanks for reaching out.

Sorry to hear you are facing issues.

On which environment is this happening? Sapphire Mainnet/Devnet?

thank @vjgee

I got issue on production env (Sapphire mainnet)

My application using Sapphire Mainnet (copy from dashboard)

On the onset this seems like it could be one of two things:

  1. async issue. Is there any chance that you have something calling the login twice on the same front-end?

Caching that might be saving it across sessions?

  1. did the verifierID change? this might be because the user/wallet’s twitter handle might have changed or your firebase setup accordingly?

Hi @zhen ,

  1. I suppose correctly because few of account got issue
  2. I use default verifierID, no firebase at all. (I have give snippet code above)
    The issue generated 2 wallets and those wallet switching randomly.

hi @vjgee @zhen

I created simple project, that just integrating with web3auth only, and I still got the issue.

I tried login and clear storage few time and got issue.

please look at it.

Thanks for sharing these details.

Our team are reviewing this and will get back with an update.

hi @vjgee
Any update for this issues?

@peter1 Our team are still reviewing this and as soon as there is a meaningful update to share, I will reply.

Thanks for your patience.

Thank you for reaching out, @peter1 . I wasn’t able to get your sample app to work, I was facing some issues with that. Could you please try our demo at https://demo-app.web3auth.io/ and record a video when getting different wallet addresses? This will help us better understand and swiftly resolve the issue you’re experiencing. Your assistance is greatly appreciated.

hi @maharshi

I have recorded video to show 2 wallet when logged same twitter account
please watch the video

I thought your algorithm have some bug because I always got exactly two wallets.

cc: @vjgee

thanks.

Hey @peter1

Thanks a lot for reporting this. This looks like a major issue as I see your screen recording from our demo app. I think since twitter doesn’t return the id token themselves, and we’re leveraging auth0 there might be some config issue which needs further investigation. I’ve involved our engineering team into this. We’ll resolve it asap and get back to you.

hi @yashovardhan

thank for your response.
hope hears you soon.

thank

Hey @peter1,
By any chance, do you have two Twitter accounts logged into your browser?
Can you please try this on incognito mode and let us know if this issue persists?

Hi, @peter1 , can you please share some other user’s verifier and verifier id who got this issue. We are trying to detect some common pattern in the issue as it doesn’t happen always some other cases would be really helpful for us.

hi @maharshi , @himanshu
I make sure only one twitter account logged, because I create new profile on chrome. Not only me some my team member got the same issue when tried on your demo.
I measures 20-30% issues happened.

Hi @peter1 , we are able to replicate the issue using your account, releasing a fix for this. Can you DM me twitter id of any of your teammate who got this issue that would be helpful for us in order to test the fix, if you dont want to share publicly please share in inbox.

@himanshu
I can’t see the dm on the website.

some of twitter ids got issues:

thanks

@himanshu
my email address:
peter@newbitcoincity.com

Can you send me a email to discuss further

hi @himanshu
Did you find the root cause?