Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

ceehjayem

macrumors regular
Original poster
Aug 12, 2006
167
0
I recently just upgraded to 3.0.1 and jailbroke it with redsn0w. Has the Dev Team released a working fix for push notifications? I installed PushFix but kept getting weird messages from my Beejive app. Any legit fix to this?

I came from a 3.0 with purplesn0w and had no problems at all. :(
 
There is no way to "fix" push. Apple is simply not letting you enter their private garden per se.

My understanding is this:
During activation process, a valid device will contact Apple servers for validation. If they see that you are using a valid sim card for your phone (IE: AT&T sim card on an AT&T phone), they will generate 2 digital signatures for your phone -- one for YouTube, and the other for push.

The signatures' public key is probably something your device knows, so it can make use of it to do what it needs to do -- talk to YouTube, and push server. The signatures' private key is only known to Apple, so there is no way third party can generate the signatures for you.

When a device is connected to the push notification server (owned and operated by Apple), the server will ask your device for the certificate, and use that as an authentication token. If you don't have a certificate, it won't let you in. Once you are in, Apple recognizes you based on that particular token. So when an application's developer -- say for example BeeJive IM 3.0 -- contacts Apple saying there's an update for so-and-so, Apple looks at the tokens and deliver the message.

The "PushFix" that was released a while back was a method to extract/inject certificates to your device, so your device can provide a certificate when requested.

This brings up a problem:
Without a proper activation, you won't get your digital signature that is unique to your device. If you used "Push Fix" to inject with someone else's signature -- chances are, that is shared by many many many MANY people by now, Apple doesn't know who to send the notification to... and so it sends to whatever most recently connected device... could be yours, could be someone else's. In theory, Apple could also ban the certificate from using Push, so no one will get the notification from that set of certificate. Additionally, in theory, Apple could also be sending your device's UUID to their push server, so they could ban your device from using Push services all together forever. Even worse, if they do have your UUID, they know you've made modifications to your phone (App Store doesn't have applications that will allow you to inject other people's signatures into your device), so they could in theory void your warranty.

So. How does Push suppose to work for Jailbroken users? In short, it doesn't. Not unless Apple release the private key for the certificates, so we can generate the certificates for you.

However, the release could benefit some people... maybe a small handful.

Say if you are me, and you have a Rogers iPhone, and a Rogers sim card, but you want to use Fido as your service provider (Yes, I know I should've just found a Fido phone instead, buzz off of my case), then the push fix have some merits.

When I restored my phone, I first used my Rogers sim card to activate it. As such, I get my own unique certificate from Apple to activate YouTube and push. Jailbreak using RedSn0w, and extracted my certificates from the phone. I then wipe it again -- so the carrier data and other stuff doesn't stick on the phone -- and hacktivated it using Fido's sim card and RedSn0w. Finally, I used the push fix tools to inject my own certificates back into my device, and of course, because no one else is using my own certificate, Apple will deliver my push notifications properly. However, from now on, each time I need to do a full restore, I must repeat the process to get my push notification to work -- well not really, I have my signatures stored safely, so I can just re-inject without having to re-extract.

I've heard some people use their iPod Touch certificate on their hacktivated iPhones, but I don't know the milages on that. Maybe it'll work, but probably only one device can receive the push notification, and you don't know which one it will be...

If you find an easier solution, please do keep us updated though. Would really love to know how to make the restore process easier for myself...
 
There is no way to "fix" push. Apple is simply not letting you enter their private garden per se.

My understanding is this:
During activation process, a valid device will contact Apple servers for validation. If they see that you are using a valid sim card for your phone (IE: AT&T sim card on an AT&T phone), they will generate 2 digital signatures for your phone -- one for YouTube, and the other for push.

The signatures' public key is probably something your device knows, so it can make use of it to do what it needs to do -- talk to YouTube, and push server. The signatures' private key is only known to Apple, so there is no way third party can generate the signatures for you.

When a device is connected to the push notification server (owned and operated by Apple), the server will ask your device for the certificate, and use that as an authentication token. If you don't have a certificate, it won't let you in. Once you are in, Apple recognizes you based on that particular token. So when an application's developer -- say for example BeeJive IM 3.0 -- contacts Apple saying there's an update for so-and-so, Apple looks at the tokens and deliver the message.

The "PushFix" that was released a while back was a method to extract/inject certificates to your device, so your device can provide a certificate when requested.

This brings up a problem:
Without a proper activation, you won't get your digital signature that is unique to your device. If you used "Push Fix" to inject with someone else's signature -- chances are, that is shared by many many many MANY people by now, Apple doesn't know who to send the notification to... and so it sends to whatever most recently connected device... could be yours, could be someone else's. In theory, Apple could also ban the certificate from using Push, so no one will get the notification from that set of certificate. Additionally, in theory, Apple could also be sending your device's UUID to their push server, so they could ban your device from using Push services all together forever. Even worse, if they do have your UUID, they know you've made modifications to your phone (App Store doesn't have applications that will allow you to inject other people's signatures into your device), so they could in theory void your warranty.

So. How does Push suppose to work for Jailbroken users? In short, it doesn't. Not unless Apple release the private key for the certificates, so we can generate the certificates for you.

However, the release could benefit some people... maybe a small handful.

Say if you are me, and you have a Rogers iPhone, and a Rogers sim card, but you want to use Fido as your service provider (Yes, I know I should've just found a Fido phone instead, buzz off of my case), then the push fix have some merits.

When I restored my phone, I first used my Rogers sim card to activate it. As such, I get my own unique certificate from Apple to activate YouTube and push. Jailbreak using RedSn0w, and extracted my certificates from the phone. I then wipe it again -- so the carrier data and other stuff doesn't stick on the phone -- and hacktivated it using Fido's sim card and RedSn0w. Finally, I used the push fix tools to inject my own certificates back into my device, and of course, because no one else is using my own certificate, Apple will deliver my push notifications properly. However, from now on, each time I need to do a full restore, I must repeat the process to get my push notification to work -- well not really, I have my signatures stored safely, so I can just re-inject without having to re-extract.

I've heard some people use their iPod Touch certificate on their hacktivated iPhones, but I don't know the milages on that. Maybe it'll work, but probably only one device can receive the push notification, and you don't know which one it will be...

If you find an easier solution, please do keep us updated though. Would really love to know how to make the restore process easier for myself...

copy the lockdownd file to your computers. that's the hacktivated lockdownd. next time you restore your iphone and activate it using your rogers sim card, simply replace the activated lockdownd file with the hacktivated one you had and that's all.. install redsn0w and everything should work..
 
Ok, I have a question regarding this. I have a jailbroken & unlocked iPhone on AT&T here in the states. I unlocked it for this summer when I went abroad to Italy and never took off ultrasn0w. Today, my push notifications stopped working, saying "connect to iTunes" to use it. I did and it synced but it didn't fix it. I'll be home later on in the afternoon, but will I have to restore & re-activate it to get push to work? I guess that wouldn't be a huge problem, I just had bricked my phone the day before I left and FINALLY got everytuin bac the way it was before, only to have my push broken. I guess it happens.
 
Sorry but I have 2 iPhones, 1 3G and 1 2G, the 2G has the Push issue, while the 3G is working PERFECTLY, both of them were activated the same.

For the 2G I have done the Push Fix about a dozen times and it still works randomly, sometimes it has worked great for more than a day, then when I installed the next Push app, then it stopped working. I have done the Cydia fix and the manual (SSH ./inject fix) and with same results.

For last, I asked a friend of mine to let me use his AT&T SIM card, and I restored the 2G, when Itunes asked me to insert a valid SIM card I installed his, and it was activated with his SIM card so it wasn't hactivated, it still didn't work, so for me, it's not related to a valid SIM card or not while activating, it should be something with the Jailbreak process, that due to hardware differences should be different between the 3G and the 2G.

Just my 2 cents and experience.

There is no way to "fix" push. Apple is simply not letting you enter their private garden per se.

My understanding is this:
During activation process, a valid device will contact Apple servers for validation. If they see that you are using a valid sim card for your phone (IE: AT&T sim card on an AT&T phone), they will generate 2 digital signatures for your phone -- one for YouTube, and the other for push.

The signatures' public key is probably something your device knows, so it can make use of it to do what it needs to do -- talk to YouTube, and push server. The signatures' private key is only known to Apple, so there is no way third party can generate the signatures for you.

When a device is connected to the push notification server (owned and operated by Apple), the server will ask your device for the certificate, and use that as an authentication token. If you don't have a certificate, it won't let you in. Once you are in, Apple recognizes you based on that particular token. So when an application's developer -- say for example BeeJive IM 3.0 -- contacts Apple saying there's an update for so-and-so, Apple looks at the tokens and deliver the message.

The "PushFix" that was released a while back was a method to extract/inject certificates to your device, so your device can provide a certificate when requested.

This brings up a problem:
Without a proper activation, you won't get your digital signature that is unique to your device. If you used "Push Fix" to inject with someone else's signature -- chances are, that is shared by many many many MANY people by now, Apple doesn't know who to send the notification to... and so it sends to whatever most recently connected device... could be yours, could be someone else's. In theory, Apple could also ban the certificate from using Push, so no one will get the notification from that set of certificate. Additionally, in theory, Apple could also be sending your device's UUID to their push server, so they could ban your device from using Push services all together forever. Even worse, if they do have your UUID, they know you've made modifications to your phone (App Store doesn't have applications that will allow you to inject other people's signatures into your device), so they could in theory void your warranty.

So. How does Push suppose to work for Jailbroken users? In short, it doesn't. Not unless Apple release the private key for the certificates, so we can generate the certificates for you.

However, the release could benefit some people... maybe a small handful.

Say if you are me, and you have a Rogers iPhone, and a Rogers sim card, but you want to use Fido as your service provider (Yes, I know I should've just found a Fido phone instead, buzz off of my case), then the push fix have some merits.

When I restored my phone, I first used my Rogers sim card to activate it. As such, I get my own unique certificate from Apple to activate YouTube and push. Jailbreak using RedSn0w, and extracted my certificates from the phone. I then wipe it again -- so the carrier data and other stuff doesn't stick on the phone -- and hacktivated it using Fido's sim card and RedSn0w. Finally, I used the push fix tools to inject my own certificates back into my device, and of course, because no one else is using my own certificate, Apple will deliver my push notifications properly. However, from now on, each time I need to do a full restore, I must repeat the process to get my push notification to work -- well not really, I have my signatures stored safely, so I can just re-inject without having to re-extract.

I've heard some people use their iPod Touch certificate on their hacktivated iPhones, but I don't know the milages on that. Maybe it'll work, but probably only one device can receive the push notification, and you don't know which one it will be...

If you find an easier solution, please do keep us updated though. Would really love to know how to make the restore process easier for myself...
 
I wish people would stop saying that Push doesn't work with jailbroken phones, as that's simply not true and might confuse people. It's not really jailbroken or even unlocked iPhones that have this problem, but hacktivated ones. AT&T subscribers can jailbreak to their hearts' content without losing push notifications.
 
I wish people would stop saying that Push doesn't work with jailbroken phones, as that's simply not true and might confuse people. It's not really jailbroken or even unlocked iPhones that have this problem, but hacktivated ones. AT&T subscribers can jailbreak to their hearts' content without losing push notifications.

So, if what you say it's true then why my hacktivated T-mobile 3g hasn't missed a single push in almost a month, but my T-mobile 2g works randomly at times or sometimes works great without issues and then it stop working when an additional push app is installed or when Beejive push settings are changed?

The Dev-Team has mentioned that the "fix" is a temporary one, so that tells me that something is behaving differently on even same kind of devices and they are tying to figure it out, I bet you that comes next Iphone firmware release and it's subsequent jailbreak release, the push issue will be fix.
 
erasat - I can't explain that, but that doesn't change the fact that it was not the jailbreaking that caused your problems, but the hacktivation.
 
That's what I heard also, that it was because it was hacktivated , so last week I decided to do a test and I took my friend's AT&T sim card and restored the iPhone when iTunes asked me to activate I did it with the valid card, it asked me for all his account info and at the end it told me that it was activated. So just then I used redsnow and jailbroke and unlocked it, then I insertedy Sim card, again, push worked for a while and then stopped working, by then I was sure that it's not just because it is jailbroken but instead a combination of other factors including the jailbroken software.

I don't know you but I haven't heard of any 3g having this issue, only when Beejive simply stop working for everybody, plus the Dev-team has clearly stated that the fix is for 2Gs and that it's a temporary one.
 
@thelatinist
Yes, my bad, I meant hacktivated, not jail broken... And if you read my entire analysis, you can probably guess what I meant too.

@erasat
Personally, I'm not surprised that your 2G doesn't work... It sounds exactly like the symptom people would experience using a shared push certificate. But, I also do not know why your 3G would work without a hitch. As far as I'm aware of, the jailbreaking procedures are actually very similar for the 2G and 3G... it's the iPod Touch 2nd Gen/iPhone 3G that differed.
 
Ok, I have a question regarding this. I have a jailbroken & unlocked iPhone on AT&T here in the states. I unlocked it for this summer when I went abroad to Italy and never took off ultrasn0w. Today, my push notifications stopped working, saying "connect to iTunes" to use it. I did and it synced but it didn't fix it. I'll be home later on in the afternoon, but will I have to restore & re-activate it to get push to work? I guess that wouldn't be a huge problem, I just had bricked my phone the day before I left and FINALLY got everytuin bac the way it was before, only to have my push broken. I guess it happens.

Have you solved this?
 
question for push

Can I have push on my 3gs iphone that is jailbreak but I dont need the unlock. My phone is from Italy and is already factory unlocked. What would be the best method to do this please? I can start from scratch and erase everything on my phone no problem, but I want it to be jailbroken. I also uae att sim card and dont need any other service.
 
Can I have push on my 3gs iphone that is jailbreak but I dont need the unlock. My phone is from Italy and is already factory unlocked. What would be the best method to do this please? I can start from scratch and erase everything on my phone no problem, but I want it to be jailbroken. I also uae att sim card and dont need any other service.

There is no jailbreak for 3GS yet.

Monitor this site.
 
Can I have push on my 3gs iphone that is jailbreak but I dont need the unlock. My phone is from Italy and is already factory unlocked. What would be the best method to do this please? I can start from scratch and erase everything on my phone no problem, but I want it to be jailbroken. I also uae att sim card and dont need any other service.

i am talking for 3.0.1 not 3.1
Yes you can.
I have it that way.
How you install 3.0.1 now when Apple only signs 3.1 installations I don't know though.
 
I've got a question regarding this. I have an AT&T sim card. My phone was purchased using another family member's upgrade. I was then given the phone as a gift. My push notifications are sporadically pushed to my phone. Some go through, others don't. Is there a way to get this to fix? I do have a legit AT&T sim card. :confused:
 
I've got a question regarding this. I have an AT&T sim card. My phone was purchased using another family member's upgrade. I was then given the phone as a gift. My push notifications are sporadically pushed to my phone. Some go through, others don't. Is there a way to get this to fix? I do have a legit AT&T sim card. :confused:

Do what I said in my initial reply:
Restore 3.0, with AT&T sim card, properly activate via iTunes.
Use push fix found on dev team's blog to extract your own certificates.
Restore 3.0, with whatever other sim card you intend to use, hactivate & jailbreak via RedSn0w.
Use push fix to inject your own certificates.

DO NOT install push fix packages via Cydia or Icy. They'll overwrite your certificate with someone else's and then you're sharing their certificate, which push won't work.

Aside from that, you might experience periodic outages with push as result of bad data connectivity (you won't actually get accurate push if you're on wifi only, or if your 3g/edge data is not steady)... Also, if you're using jailbreak apps or non-mobileme exchange, their push depends on their dev's own server. So there may be periodic blackouts there too.
 
I have a 2g iPhone unlocked and jailbroken on t-mobile and push works perfect for me. I restored and activated my iphone with the old at&t sim then used redsnow to unlock.

I had problems with push at first then I restored and "setup as new phone" after that everything was golden.

So yes it is possible to have a unlocked/jailbroken iPhone with push you just have to jump through some extra hoops to get it.

Also I updated with pwnage to 3.1 and restored from my backup with push settings and everything still works
 
Thanks Andy for the information. I will try it once again when the jailbreak for the 3.1 3GS comes available. I can't restore my phone right now since Apple blocks the signature signing of the 3.0.X firmwares. I hope it works. :eek:
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.