Difference between revisions of "Activation"

From The iPhone Wiki
Jump to: navigation, search
(Folded in the Activate article.)
m
 
(15 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
[[Image:foto.jpg|thumb|right|iPhone with 1 signal bar and damaged [[hacktivation]] or it doesn't have an internet connection|100px]]
 
[[Image:foto.jpg|thumb|right|iPhone with 1 signal bar and damaged [[hacktivation]] or it doesn't have an internet connection|100px]]
   
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 [[iOS]] 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 the process by which a new (or newly restored) iPhone or iPod touch can get by the "Emergency Call Screen" ([[List of iPhones|iPhone]]) or "Connect to iTunes" screen (not to be confused with [[Recovery Mode]]; the activation screen has a battery icon in the top right corner to indicate this) to access the SpringBoard.
   
  +
The code in charge of this resides in [[lockdownd]], which is always running on [[iOS]] and monitors the activation status of the device. Lockdownd patches (which requires a [[jailbreak]] whereby a patched kernel can be booted by [[iBoot (Bootloader)|iBoot]] without dynamic libraries dynamically patching in RAM) activate your phone and remove the need to activate legitimately through [[iTunes]] with an official carrier (this process is also called "[[hacktivation]]"), however the iPhone cannot be used to communicate unless an [[unlock]] is found for the [[baseband]]. Lockdownd patches are only used on the [[List of iPhones|iPhone]] as the [[List of iPod touches|iPod touch]] has never been denied activation regardless of firmware, country etc.
Activation is handled by https://albert.apple.com/WebObjects/ALActivation.woa/wa/deviceActivation
 
   
  +
Activation is handled by https://albert.apple.com/deviceservices/deviceActivation
[[iTunes]] uses AMDeviceCopyValue on ActivationInfo to check your IMEI, ICCID, and Serial Number with Apple's database. If they match, you receive an [[activation token]], getting you past the emergency call screen and allowing use of the iPhone. All devices actually go through this process; even the [[iPod touch]] is not activated out of the box, but connecting to iTunes will activate the iPod.
 
   
  +
[[iTunes]] generates an [[Activation Token]] and sends it to Apple's activation server. Once the [[Activation Token]] is validated, the server will generate a [[WildcardTicket]] and signs it with Apple's private key. [[iTunes]] then calls AMDeviceActivate with the [[WildcardTicket]]; The device gets the [[WildcardTicket]] and checks if the signature matches. If it does, it get pasts the emergency call screen and allowing the use of the iPhone. All devices actually go through this process. The activation process is outlined in detail in US patent no. [http://www.freepatentsonline.com/20090061934.pdf 2009/0061934].
The [[iPhone]] needs a cellular data connection for the first time, after the activation in [[iTunes]]. You can make calls if an alert says "iPhone is activated." If you don't have a cellular data connection (3G, EDGE, GPRS) you won't be able to make calls and you have only 1 bar of reception. If you only have 1 bar and no carrier at the status bar, it isn't activated correctly. Installing [[ultrasn0w]] over Wi-Fi will fix it.
 
   
  +
Although the [[List of iPod touches|iPod touch]] can be "activated" without an internet connection, some services such as YouTube and Push Notifications will fail to work due to not having a valid authentication token ([http://support.apple.com/kb/TS3305 iPad and iPod touch: Unable to use YouTube or Push notifications]) so connecting to iTunes will activate the [[List of iPod touches|iPod touch]] fully.
   
  +
The [[List of iPhones|iPhone]] needs a cellular data connection for the first time, after the activation in [[iTunes]]. You can make calls if an alert says "iPhone is activated". If you don't have a cellular data connection (3G, EDGE, GPRS) you won't be able to make calls and you have only 1 bar of reception. If you only have 1 bar and no carrier at the status bar, it isn't activated correctly.
   
  +
[[SAM]] (Subscriber Artificial Module) can simulate official activation for hacktivated devices.
Here's a python script to spoof it:
 
  +
import httplib,urllib
 
  +
== See Also ==
import time
 
  +
* [[Activation Token]]
ai=open("a.plist",'r')
 
  +
aidata=ai.read()
 
  +
== External Links ==
conn = httplib.HTTPSConnection("albert.apple.com")
 
  +
* [[User:posixninja|posixninja]]'s [http://github.com/posixninja/ideviceactivate iDeviceActivate]
headers = {"Content-type": "application/x-www-form-urlencoded", "User-Agent": 'iTunes/7.6 (Windows; U; Microsoft Windows XP Professional Service Pack 2 (Build 2600)) DPI/96}'}
 
  +
* [http://www.freepatentsonline.com/20090061934.pdf Apple Patent]
params = urllib.urlencode({
 
  +
'activation-info': aidata
 
  +
{{stub|firmware}}
})
 
  +
conn.request('POST', '/WebObjects/ALActivation.woa/wa/deviceActivation',params,headers)
 
  +
[[Category:Baseband]]
response = conn.getresponse()
 
resdata=response.read()
 
f=open("arsp.xml",'w')
 
f.write(resdata)
 
#time.sleep(1)
 

Latest revision as of 00:49, 16 October 2017

iPhone with 1 signal bar and damaged hacktivation or it doesn't have an internet connection

Activation is the process by which a new (or newly restored) iPhone or iPod touch can get by the "Emergency Call Screen" (iPhone) or "Connect to iTunes" screen (not to be confused with Recovery Mode; the activation screen has a battery icon in the top right corner to indicate this) to access the SpringBoard.

The code in charge of this resides in lockdownd, which is always running on iOS and monitors the activation status of the device. Lockdownd patches (which requires a jailbreak whereby a patched kernel can be booted by iBoot without dynamic libraries dynamically patching in RAM) activate your phone and remove the need to activate legitimately through iTunes with an official carrier (this process is also called "hacktivation"), however the iPhone cannot be used to communicate unless an unlock is found for the baseband. Lockdownd patches are only used on the iPhone as the iPod touch has never been denied activation regardless of firmware, country etc.

Activation is handled by https://albert.apple.com/deviceservices/deviceActivation

iTunes generates an Activation Token and sends it to Apple's activation server. Once the Activation Token is validated, the server will generate a WildcardTicket and signs it with Apple's private key. iTunes then calls AMDeviceActivate with the WildcardTicket; The device gets the WildcardTicket and checks if the signature matches. If it does, it get pasts the emergency call screen and allowing the use of the iPhone. All devices actually go through this process. The activation process is outlined in detail in US patent no. 2009/0061934.

Although the iPod touch can be "activated" without an internet connection, some services such as YouTube and Push Notifications will fail to work due to not having a valid authentication token (iPad and iPod touch: Unable to use YouTube or Push notifications) so connecting to iTunes will activate the iPod touch fully.

The iPhone needs a cellular data connection for the first time, after the activation in iTunes. You can make calls if an alert says "iPhone is activated". If you don't have a cellular data connection (3G, EDGE, GPRS) you won't be able to make calls and you have only 1 bar of reception. If you only have 1 bar and no carrier at the status bar, it isn't activated correctly.

SAM (Subscriber Artificial Module) can simulate official activation for hacktivated devices.

See Also

External Links

Tango Utilities-terminal.png This firmware article is a "stub", an incomplete page. Please add more content to this article and remove this tag.