Converting caffeine to code, shooting pics, and cruising the roads of life.

Jul 4th, 2007  Jul 4th, 2007

Activate your iPhone without AT&T with tools.zip

After hanging around the osx86 crew last night on IRC, I found out that they had finally cracked the activation service and made a proof of concept tool that would activate the iPhone with a plist file. The developers refused to release the actual tokens that needed to be embedded inside the plist file for activation though, for good reason, as they are DVD Jon’s.

Now, they did tell me one thing. The keys are embedded in the .NET binary in JLJ’s iPhone activation server. So I began working and this led to where I’m at now, a how-to. This post will not provide the tokens, nor will I provide them until JLJ says I can. This article will walk you through the process of obtaining them so you can activate your iPhone on a mac though, as suggested by the developers of the tool.zip we will be using.
As of now, you can just download the newly released iPhoneActivatorTool to activate your phone. This is a newer version of tool.zip that includes the plist file required.

Step 1:
Download the following files:

Step 2:
This step is where you’ll actually prepare the data you need to get. You will need windows with .NET framework 2.0+. JLJ’s PhoneActSrv’s binary has the keys stored within it, encrypted using AES. In order to get the keys, we need to disassemble the binary. To do this, you need to open up Reflector and go to File->Open then locate and open the PhoneActSrv.exe file.

Once it’s loaded, you will see the entry in the tree view. Right click on PhoneActSrv and click Export. Make sure you save this somewhere that you will remember, you will spend a lot of time looking at the disassembly. You also need access to it over the mac.

Step 3:
Now, open the directory you saved the disassembly files to. You should see the following files:

  • a.cs
  • b.cs
  • AssemblyInfo.cs
  • d.cs
  • DotfuscatorAttribute.cs
  • e.cs
  • e.resources
  • f.resources
  • Global.cs
  • PhoneActSrv.csproj

If you see these files, you did step 2 correct. If not, go back and do it again. This is where you may need some coding experience, as I can’t just hand these keys out. I provide you with enough hints that I feel you can find the keys. Unzip my iPhone Decrypt application and open up iphone_decrypt.c and read the comments. For each variable needed, I provide you with a hint on how to find it. All the values needed are located in the d.cs file.

Once you find them, plug the values into their appropriate arrays in iphone_decrypt.c. Once you have what you think are the values, open up a terminal, go to the directory iphone_decrypt.c is located in and run the following in console.

$ ./build.sh
$ chmod +x iphone_decrypt
$ ./iphone_decrypt

If all goes well, you should see something like the following on the terminal:

kalashnikov:~/Desktop/iPhone-RE/AES decrypt cody$ ./build.sh 
kalashnikov:~/Desktop/iPhone-RE/AES decrypt cody$ ./iphone_decrypt 
Welcome to the iPhone JLJ key decryptor. Find the data in his app and set the variables in the code to this one.
Setting AES key...done
---1076
Attempting to decrypt the key...done
Key is 
      
 

    
        


          iphone-activation
          
            unbrick
            
            activation-record
            
              AccountToken*snip*
              AccountTokenSignature*snip*/data>
            
          




        
    

 
??V?n9???lsQ?
Freeing up memory...done

If you do, move onto step 4, if not, keep trying.

Step 4:
Unzip tool.zip and open up the blank.plist file in something like textmate. It’s just an XML file. blank.plist contains the following:





	ActivationRecord
	
		AccountToken
		
		
		AccountTokenCertificate
		
		
		AccountTokenSignature
		
		
		DeviceCertificate
		
		
		FairPlayKeyData
		
		
	
	Request
	Activate



Copy the AccountToken and AccountTokenCertificate lines and their data lines from the console output of iphone_decrypt. Paste them into the plist file so that it looks like the following:





	ActivationRecord
	
		AccountToken*snip*
	              AccountTokenSignature*snip*
	
	Request
	Activate



Save this file as activate.plist in the same directory as blank.plist

Step 5:
Activate your iPhone by running the following command in the terminal after changing to the directory that blank.plist is located in.

$ ./tool --activate activate.plist

You should see the following output on the console:

kalashnikov:~/Desktop/tool Folder cody$ ./tool –activate test.plist
iPhoneActivatorTool 1.0
2007-07-04 15:10:43.887 tool[10443] Found iPhone Device: 1
2007-07-04 15:10:43.887 tool[10443] Connecting…
2007-07-04 15:10:43.892 tool[10443] Checking Pairing…
2007-07-04 15:10:43.905 tool[10443] Starting device session…
2007-07-04 15:10:43.990 tool[10443] ActivationState: Unactivated
2007-07-04 15:10:43.990 tool[10443] Deactivating your iPhone…
2007-07-04 15:10:44.002 tool[10443] New ActivationState: Unactivated
2007-07-04 15:10:44.003 tool[10443] Activating your iPhone…
2007-07-04 15:10:44.163 tool[10443] New ActivationState: MismatchedICCID
2007-07-04 15:10:44.163 tool[10443] Your iPhone was successfully activated.

You will probably see a popup about your iPhone having an incorrect SIM card. Just slide the unlock slider at the bottom to the right and you should be ready to go.
iphone

31 Responses to “Activate your iPhone without AT&T with tools.zip”

  1. Alex K says:

    Thanks for the hint a question though….

    if I dont have an iPhone connected (for test purposes) what output should I get from running tool?

    I currently get permission denied is this correct?

    Thanks

  2. mkrueger says:

    Great walkthrough! I don’t have an iPhone to try it with yet, but hope to soon. Can you tell us more about how the iPhone is without service? Any pitfalls?

  3. Cody Mays says:

    What are you getting that on. If you are trying to run build.sh or iphone_decrypt, make sure you chmod +x the files.

  4. Alex K says:

    I get that running “./tool –activate activate.plist”

    I get that even if I try to run just “./tool”

    Thanks

  5. Alex K says:

    ok no worries apparently you need to chmod “tool” also

    Thanks

  6. Cody Mays says:

    “Can you tell us more about how the iPhone is without service? Any pitfalls?”
    Well, phone stuff is obviously useless. Youtube doesn’t work for some reason either. Same issue with JLJ’s activation server though.

  7. Stianless says:

    The WiFi will work on the iPhone, but you need to turn it on in the preferences. YouTube will fine then…

  8. Mathews Venegas says:

    wowww this is really amazing…

    but the phone is really working for any telephone company around the world???

    i’m from chili and i want to ship iphones to my home, but i really want to know if this phone is working in his totality

    please answer me to my email…

    pollollo_@hotmail.com

  9. Cody Mays says:

    No, this only allows you to activate the phone so you can use the iPod and wifi features of it.

  10. Jonei says:

    Hi
    a friend send me the iphone today and i can’t wait to use it… i really need to unlock it and to adjust it to work with my local sim card… does someone knows when we would be able to do so…
    Thanks!

  11. Pierre says:

    Fantastic how-to, thanks! It’s working perfectly for me! The only think that’s disturb me a little be is the fact that iTunes now want to be connected to internet everytime I want to sync, since the registration for AT&T is starting again (but I can cancel it and sync). Is there anyway to stop iTunes to start everytime the registration process over Internet for AT&T?

    Pierre

  12. All that sounds really good,
    but will upcoming releases
    allow to use the iPhone with
    any other service provider
    in any other country in the
    world?
    How long could that approximately
    take? Are we talking about days, weeks
    or even months?
    Thank you so much for a soon answer
    in advance…

  13. Luke says:

    Thanks for typing up a very detailed how-to. but i m kinda noobie for this kinda thing. I cannot get the files you said to download to work on my mac. Can you guys tell me how you got it to work?

    Thanks

  14. Tyler says:

    If I activate my iPhone using this method and later want to activate it through AT&T (to gain phone service) will I be able to? How?

    Thanks for hard work.

  15. Cody Mays says:

    To deactivate: ./tool –deactivate
    inside your terminal.

    Cheers!

  16. Alfred Christensen says:

    link for downloading tool.zip is no longer working. Anybody got a mirror? Thanks!

  17. MK says:

    Once the phone is activated using this can I use a foreign sim card to make calls?

    The answer I am guessing is NO.

    However is the SIMLOCK on the iPhone similar to all other phones like Nokia, etc and can it be unlocked similarly later, which is very easy and can be deon legaly in the UK that is at any phone shop for £5-10($10-20).

    Thanks.

  18. JP says:

    Youtube doesn’t work yet after JLJ’s activation method… Anybody have fixed this issue?

  19. Nick says:

    Syupid question – Does this process work using Windows (on a PC) or only Mac OS?

  20. Cody Mays says:

    Yeah, if you can find a Windows version of the tool. (It’s newer version is called iPhoneInterface now)

  21. semitia says:

    Yeah, the unlocking is great, but anybody know why youtube doesn’t work?

  22. hans says:

    Hi,
    I try to get my iPhone working, but I have some problems with step 3. What is meant by “unsigned char A_0[]” ? I really don’t understand (either because of my bad coding experience or because of my bad english). So a additional hint would be very much appreciated.

  23. Benjamin says:

    I miss in the second part of step 3. I open iphone_decrypt.c and open d.cs files. Wich values i ned to plug in iphone_decrypt.c? what does “plug the values into their appropriate arrays in iphone_decrypt.c means?
    I need help to understand this concept, can you help me please?

  24. j.o. says:

    :drunk_tb: :drunk_tb: :drunk_tb:when is some one going to develope a downloadable software for the mac where you just click on a icon and it downloads and does the work for you just like any other installer?

  25. Gam says:

    Somebody can tell me if this metod work properly because i have afraid to destroy mi iphone!! thnx!!!!

  26. [...] it (meaning, get past the globe and the activation nag) using a hack that’s not a simple process, and a PC is required, but it is laid out step by [...]

  27. Alise Upshaw says:

    My ipod 1G is a most valuable iPod, Pda and a bit more, and has long been ever since I found it. It still work on the up-to-date iPod system software program, and any application I want it to run. I’m using it to post this remark at the moment. It’s safe to say it truly is a much more in comparison with only an “excellent hobbyist system” — it’s an wonderful iPod

  28. David Peers says:

    This blog helped me in narrowing down some problems with the latest release, Why do they often seem to leave out vital information when they release a new version? It may be trivial to them but not for us! I’m sure i’m not alone.

  29. Everyone loves what youu guys aare up too.
    Such clever work and coverage! Keep up the great works guys I’ve included you guys tto my own blogroll.

    my site larger water issues

  30. Rosalina says:

    I’ve learn some good stuff here. Certainly worth bookmarkiing for revisiting.

    I wonder how a lot effort you place to create any such excellent informative web site.

Leave a Reply