The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Activation
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)