Were you looking for Blizzard Authenticator (key fob device)?

The Mobile Authenticator is a small mobile phone application that functions similarly to the Blizzard Authenticator key fob device. However, it cannot be used in conjunction with the other device, one or the other can be used, but not both.[1]

On January 9, 2012, three new languages were supported (not on BlackBerry): Português (Portuguese), Italiano (Italian), and Polski (Polish).[2]

The application is available for the iPhone, iPod Touch and iPad (like every other iPhone or iPod Touch application) with iOS 3.x[3] and later. An iPad without 3G support or an iPod Touch needs a wi-fi connection for a setup, re-setup or a re-sync.[3] The iOS application is free of charge.

It's also available for many other mobile smartphones including phones running the Android operating system, Windows Phone 7 OS,[4] and some BlackBerry®[5] smartphones.

Until December 13, 2011 a version of the authenticator was available for some mobile devices like the Motorola RAZR, Nokia's Series 40, and other "non-smartphones."[6]

Supported mobile phone OSes and languages Edit

Mobile phone OS:

  • Android™
  • BlackBerry®
  • iOS (iPhone®, iPod touch®)
  • Windows™ Phone 7


  • English
  • Français (French)
  • Deutsch (German)
  • Italiano (Italian)
  • Polski (Polish)
  • Português (Portuguese)
  • Русский (Russian)
  • Español (Spanish)

Not BlackBerry.

Discontinued Java-based version Edit

On November 10, 2011, Blizzard announced it would be discontinuing support for the Java-based (J2ME) versions[6] of the Mobile Authenticator that were available for download at Updates will no longer be provided after December 13, 2011.

Unsupported Mobile Devices Edit

It is possible to install and use the mobile authenticator on many mobiles which are not officially listed as supported by Blizzard. Most mobile phones are capable of runing the basic java authenticator application, information on installing the authenticator on unsupported devices can be found here.

Specification Edit

Main article: Mobile Authenticator Specification

The initialization of a Mobile Authenticator is done via an RSA encrypted request to Blizzards initialization servers including an one time pad key for encryption of the response. The server generates an 160-bit key which is later used for code generation and a serial number is connected to that key. Both things are stored on the server and are also sent back to the client (encrypted with the one time pad key from the request).

The code generation is done via encrypting the current time (milliseconds since 1970/01/01 0:00 UTC divided by 30,000) with HMAC-SHA1 using the key from the initialization. From the result are some bytes selected and displayed as current authenticator code.

Security Vulnerability Edit

Because of a weak one time pad key generation algorithm on the client side, an attacker who is able to capture the encrypted initialization response between server and client device can fully compromise the security of the Mobile Authenticator[7]. The reason is, that the one time pad key used for encryption of the server response only depends deterministic from the current time on the client device. Normally that time shouldn't differ too much from the common time. So an attacker only needs to guess some time values, calculate the corresponding one time pad keys, use them for decryption of the captured server response and check, whether one of the results make sense (because of the known format of the included serial number, it is easy to say, whether a result makes sense or not). If he finds such a result, it is very likely that he guessed the correct one time pad key and now knows the authenticator ID and the secret code calculation key from the decrypted response.

To prevent this attack even if there is no real randomness (e. g. hardware random generator) is available on the client device, there should be used aside from the current time also some kind of user generated randomness (pressing random buttons on the device, ...) for creating the one time pad key used for encryption of the initialization data.

Desktop ports Edit

It is possible to re-implement the specification to run the Mobile Authenticator also directly on the PC. It is difficult to say, whether this is less secure or not in comparison to running it on a real mobile device. Of cause an attacker could read out the necessarily stored secret code calculation key from the PC via a trojan and so breaks the security of such a PC authenticator. But with a trojan on the PC of the victim, the attacker could also read the typed authenticator code when the victim is logging into the game, interrupting the connection of the victim and using the current authenticator code by itself for immediate game login (maybe with a bot) while preventing further game logins of the victim via the trojan.

List of desktop ports with public source code availability:

It is also possible to run Blizzards implementation within a mobile phone emulator on the desktop.

An online version also exists* and is publicly available since November 2011. The source code of the PHP implementation are published, but this is not the case for the website. This kind of online application are less secure than a desktop port, but, as an advantage, you can retrieve your code from anywhere.

Notes Edit

  • This application was announced on March 31st, 2009 on the US official forums and June 2nd, 2009 on the EU official forums.[8][9]
  • The Mobile Authenticator app was not available in mid to late September 2009 for some reason. Several blue posts stated this fact, but no reason was given.
  • All Android based phones can download and use the Mobile Authenticator app listed in the Android Market regardless of whether the phone is listed as being supported here.

References Edit

See also Edit

External links Edit

Other info
Old info