Activation

From The iPhone Wiki
Revision as of 04:46, 31 March 2009 by Geohot (talk | contribs)
Jump to: navigation, search

Activation is the process by which a new (or newly restored) iPhone can get by the "Emergency Call Screen" to access the SpringBoard. The code in charge of this resides in Lockdownd, which is always running on the iPhone and monitors the activation status of the device. Lockdownd patches (which require a jailbreak) activate your phone and obviate the need to activate legitimately through iTunes with an official carrier.

Activation is handled by albert.apple.com https://albert.apple.com/WebObjects/ALActivation.woa/wa/deviceActivation

iTunes uses AMDeviceCopyValue on ActivationInfo to get the token to send.

Here's a python script to spoof it:

import httplib,urllib
import time
ai=open("a.plist",'r')
aidata=ai.read()
conn = httplib.HTTPSConnection("albert.apple.com")
headers = {"Content-type": "application/x-www-form-urlencoded", "User-Agent": 'iTunes/7.5 (Windows; U; Microsoft Windows XP Professional Service Pack 2 (Build 2600)) DPI/96}'}
params = urllib.urlencode({
	'activation-info': aidata
	})
conn.request('POST', '/WebObjects/ALActivation.woa/wa/deviceActivation',params,headers)
response = conn.getresponse()
resdata=response.read()
f=open("arsp.xml",'w')
f.write(resdata)
#time.sleep(1)