WoW:Battle.net Mobile Authenticator Specification: Difference between revisions

Line 9: Line 9:
====Authenticator Initialization Request====
====Authenticator Initialization Request====
Initialization request is an HTTP POST request to
Initialization request is an HTTP POST request to
:* ''<nowiki>http://m.eu.mobileservice.blizzard.com/enrollment/enroll.htm</nowiki>'' (Europe)
* ''<nowiki>http://m.eu.mobileservice.blizzard.com/enrollment/enroll.htm</nowiki>'' (Europe) (old)
:* ''<nowiki>http://m.us.mobileservice.blizzard.com/enrollment/enroll.htm</nowiki>'' (North America)
* ''<nowiki>http://m.us.mobileservice.blizzard.com/enrollment/enroll.htm</nowiki>'' (North America) (old)
* ''<nowiki>http://mobile-service.blizzard.com/enrollment/enroll.htm</nowiki>'' (new)
with Content-type "application/octet-stream".
with Content-type "application/octet-stream".




The plaintext of the request has the following format:
The plaintext of the request has the following format:
{|class="darktable"
{| class="darktable"
|-
|-
!style="width:15%;" align="left"| function code
! style="width:15%;" align="left" | function code
!style="width:40%;" align="left"| response encryption key
! style="width:40%;" align="left" | response encryption key
!style="width:15%;" align="left"| region code
! style="width:15%;" align="left" | region code
!style="width:30%;" align="left"| mobile model
! style="width:30%;" align="left" | mobile model
|-
|-
| 1 byte
| 1 byte
Line 47: Line 48:
====Authenticator Initialization Response====
====Authenticator Initialization Response====
The HTTP body of the response has the following format:
The HTTP body of the response has the following format:
{|class="darktable"
{| class="darktable"
|-
|-
!style="width:40%;" align="left"| current server time
! style="width:40%;" align="left" | current server time
!style="width:60%;" align="left"| encrypted initialization data
! style="width:60%;" align="left" | encrypted initialization data
|-
|-
| 8 bytes
| 8 bytes
Line 62: Line 63:


After decryption the initialization information has the following format:
After decryption the initialization information has the following format:
{|class="darktable"
{| class="darktable"
|-
|-
!style="width:60%;" align="left"| secret key for code calculation
! style="width:60%;" align="left" | secret key for code calculation
!style="width:40%;" align="left"| authenticator serial number
! style="width:40%;" align="left" | authenticator serial number
|-
|-
| 20 bytes
| 20 bytes
Line 80: Line 81:
====Authenticator Time Synchronization Request====
====Authenticator Time Synchronization Request====
Synchronization request is simply an HTTP GET request to
Synchronization request is simply an HTTP GET request to
:* ''<nowiki>http://m.eu.mobileservice.blizzard.com/enrollment/time.htm</nowiki>'' (Europe)
:* ''<nowiki>http://m.eu.mobileservice.blizzard.com/enrollment/time.htm</nowiki>'' (Europe) (old)
:* ''<nowiki>http://m.us.mobileservice.blizzard.com/enrollment/time.htm</nowiki>'' (North America)
:* ''<nowiki>http://m.us.mobileservice.blizzard.com/enrollment/time.htm</nowiki>'' (North America) (old)
:* ''<nowiki>http://mobile-service.blizzard.com/enrollment/time.htm</nowiki>'' (new)




====Authenticator Time Synchronization Response====
====Authenticator Time Synchronization Response====
The HTTP body of the response has the following format:
The HTTP body of the response has the following format:
{|class="darktable"
{| class="darktable"
|-
|-
!align="left"| current server time
! align="left" | current server time
|-
|-
| 8 bytes
| 8 bytes
Anonymous user