Blizzard authenticator using AndOTP, FreeOTP and other TOTP apps

You can setup Blizzard on your own TOTP app instead of theirs.

Update December 2023: Blizzard is sending out ‘Your Battle.net Authenticator is Changing’ and changing their TFA system. These instructions no longer work because BNA no longer works due to this change. There are some alternatives listed in that thread but they are ugly and difficult.

For some reason companies like to push their own authenticator apps instead of using the TOTP standard. Blizzard is one of them with the Blizzard Authenticator app. However, it uses a version of the TOTP behind the scenes. This means you might be able to use your favourite TOTP app.

This is an improved version of Hugo’s Using FreeOTP with Battle.net.

Apps

Your app has to support 8 digits, rather than the more common 6 digits. A few apps that support 8 digits include:

Requirements

You’ll need to install the following:

You’ll also need to be able to run those pip packages that get installed.

Setup your authenticator

  1. Sign in to your Blizzard account and go to Account > Security.
  2. Select ‘Set up an authenticator’.
  3. Under ‘Other options’ select ‘Set up a mobile authenticator’.
  4. Run bna new
    $ bna new
    Success! Your new authenticator is: US-XXXX-XXXX-XXXX
    
  5. Copy the code and paste it into the ‘Serial Number’ field in your Blizzard account.
  6. Run bna show
    $bna show
    12345678
  7. Copy the code into the ‘Authenticator Code’ field in your Blizzard account.
  8. Select ‘Add Authenticator’. From here your Blizzard authenticator is setup and working, but the only way you can use it is with bna.

Get it into your TOTP app

  1. Run bna show-url | qr and you should see a QR code.
  2. Open your TOTP app and point it at the QR code. If you get an error, you may need to add a missing colon.
  3. You can now sign in to your Blizzard account and use your TOTP app like most other sites you use.

7 thoughts on “Blizzard authenticator using AndOTP, FreeOTP and other TOTP apps”

  1. how to install pip, python-bna (with pip3 install bna) ,python-qrcode (with pip3 install qrcode[pil]) ?
    Please make a youtube video lol

    Reply
    • How to install/replicate guide yourself:

      1. Download python-bna Git-repo (linked above – on Github).
      2. Install Poetry (python package manager).
      3. Run `poetry install` to install python-bna dependencies.
      4. Add `python-qrcode` with command `poetry add qrcode[pil]`
      5. Run the `bna X` commands listed with `poetry run ` as prefix.

      Worked for me with above instructions^^

      Reply
  2. This works great! I always thought the Blizzard Authenticator was the only option. Great to find a solution that allows FreeOTP to work with Battle.net!

    Reply
  3. worked great but I had to write

    py -m bna

    py -m pip install bna

    etc

    qrcode wouldnt work used an online generator that worked

    Reply
  4. Amazing tutorial, thanks! Though I had to look for the bna and qr executables someplace else in my Macbook, under:

    /Users/[my-user]/Library/Python/3.8/bin/bna
    and
    /Users/[my-user]/Library/Python/3.8/bin/qr

    Reply

Leave a Comment