Live data from Hacker News

iMessage, explained

jjtech.dev

101–110 of 163 posts

Re: iMessage, explained

#101
Huh. So Android's push notification service is built on their instant messenger (GTalk), and Apple's instant messenger is built on their push notification service.

How cute.

Re: iMessage, explained

#102

I just got an iPhone for the first time, and it is a noticeably better device than my previous Android phones. One downside is that I can't use iMessage on my Windows and Linux computers. Will look into pypush Honestly, the iPhone is nudging me further to giving a Macbook/OSX a try one day, but the major blocker to me is the poor state of gaming on Macs.

Look into Beeper for iMessage support on Linux and Windows!

Re: iMessage, explained

#103
post #93
post #5

Genuine question - can a topic really be `opertunistic` or is that author typo? I love these `referer`-type misspellings that become fossilized over generations

Unfortunately, there are many typos in my code :P On the other hand, I'm not sure if this is a typo on Apple's part, but it certainly is weird: you must use "WindowSerial" here[1], not "WindowsSerial" with the extra s [1] https://github.com/JJTech0130/pypush/blob/8b33c0ee5d540d8ac7...

That "missing plural S in PascalCased (or camelCased) names" is something I see semi-often!

Congratulations on this amazing work :)

Re: iMessage, explained

#104
post #44

Earlier quoted context omitted.

I don't disagree with what you say, but I would be surprised if it was any sort of secret sauce and not "just" an incredible amount of grinding, the seemingly zero-cost energy reservoir you can tap into as a young adult if you really like what you're doing and possibly an enlightened parent or a role model.

It's not grinding though. My highschool years were also super productive when it came to programming-related things, while I have seen most of my peers, aside from select few, really struggle despite their willingness. So maybe there is some secret sauce that can help others to get good a this. Maybe it's a mindset or attitude, etc...

Willingness is almost antithetical to having the motivation to grind in my mind. In order to do something persistently, you need to trade something for it, and often times you need to ignore the fact that the trade isn't worth it, or not have anything else competing for that attention in the first place; in otherwords, some level of compulsion as well as willingness.

It's the same with skateboarding, or any other interest that is difficult, time consuming, character building, and that requires obsession.

The defining characteristic of programming, as opposed to some others, is that it's complex and only intellectually demanding, whereas the others are some combination of physical and mental stress. People don't know how to navigate that from the beginning, but the ones who have the disposition to simply throw themselves at it regardless of failure, repeatedly, figure it out eventually.

The ones who actually succeed in a career of it are probably the ones who figured out how to dial it back as an obsession, and stop when they're 10hrs in to take a different approach.

Re: iMessage, explained

#105
post #11

Earlier quoted context omitted.

Personally, for communication I never use a device platform specific/locked app/service. Maybe you could keep using the app(s) whatever you were.

I’m curious, what do you use then?

WhatsApp (this mostly - I live in India). SMS.

Telegram (2 groups). Discord (3 groups).

Signal (with 1 friend) and iMessage (with 2 friends) — these 2 apps are more of a hobby (a thing?), we four usually use WhatsApp.

I mean I could fight it or just fall line. I fought and lost :D

Notifications off for all.

Re: iMessage, explained

#106

Earlier quoted context omitted.

Personally, for communication I never use a device platform specific/locked app/service. Maybe you could keep using the app(s) whatever you were.

> Maybe you could keep using the app(s) whatever you were. I was using Android Messages, which has a web app. The experience was mediocre because the web app had trouble connecting to my phone all the damn time. I text some people almost exclusively through Facebook Messenger, and I think the rest I will try to move from text to WhatsApp. Both Meta-owned, unfortunately, but those seem to be easy to use cross-device a…

I am from India - WhatsApp is messaging here. Scratch that - WhatsApp is communication here. So that’s not really a choice. Maybe you’d have the app for your region unless you’re from USA where I’ve heard it’s iMessage.

Re: iMessage, explained

#107
Learning the contract is great, thank you for the work! How about the infra stack used by imessages? Does anyone have intel on that? The scale is incredible, which always makes me wonder how it can be so good while other apple web services (forums, dev portals, etc) can be so buggy and half baked

Re: iMessage, explained

#108
post #86
post #12

Earlier quoted context omitted.

They already partially do. > Warning: In order to generate the “validation data”, pieces of information about the device such as its serial number, model, and disk UUID are used. This means that not all validation data can be treated equivalently: just like with Hackintoshes, the account age and “score” determine if an invalid serial can be used, or if you get the “customer code” error. The "customer code" error is a…

remote attestation would mean it's not possible to pull out the binary and run it externally you'd need the key from the TPM/secure enclave too, which is much much harder to extract

It's only a matter of time until a company starts selling TPM dumps, right?

Re: iMessage, explained

#109

Earlier quoted context omitted.

> Maybe you could keep using the app(s) whatever you were. I was using Android Messages, which has a web app. The experience was mediocre because the web app had trouble connecting to my phone all the damn time. I text some people almost exclusively through Facebook Messenger, and I think the rest I will try to move from text to WhatsApp. Both Meta-owned, unfortunately, but those seem to be easy to use cross-device a…

I am from India - WhatsApp is messaging here. Scratch that - WhatsApp is communication here. So that’s not really a choice. Maybe you’d have the app for your region unless you’re from USA where I’ve heard it’s iMessage.

In Australia it's iMessage and FB Messenger, mostly. But that's also dependent on where you or your family is from: I came here from NZ, so iMessage/Messenger is normal, but my Indian friends use WhatsApp as a matter of course!

Re: iMessage, explained

#110
post #86

Earlier quoted context omitted.

remote attestation would mean it's not possible to pull out the binary and run it externally you'd need the key from the TPM/secure enclave too, which is much much harder to extract

It's only a matter of time until a company starts selling TPM dumps, right?

maybe, but for a task like this it doesn't really scale

Apple aren't going to allow one phone to attest 5000 new iMessage clients

Post reply on HN