Reverse-Engineered iMessage Comes to Android With Beeper Mini blog.beeper.com

Beeper:

Now you can send and receive blue bubble texts from your phone number. As soon as you install Beeper Mini, your Android phone number will be blue instead of green when your iPhone friends text you. It’s easy to join iPhone-only group chats, since people can add your phone number instead of your email address. All chat features like typing status, read receipts, full resolution images/video, emoji reactions, voice messages, editing, un-sending, and more are supported.

Beeper is charging two dollars per month for access.

This is all made possible by the frankly incredible work of the pypush project. Primarily, its author is “JJTech”, a high school student who reverse-engineered the way iMessage works:

One of the most foundational components of iMessage is Apple Push Notification Service (APNs). You might have encountered this before, as it is the same service that is used by applications on the App Store to receive realtime notifications and updates, even while the app is closed.

However, what you probably didn’t know about APNs is that it is bidirectional. That’s right, APNs can be used to send push notifications as well as receive them. You can probably already tell where this is going, right?

This overview is pretty good; I think I understand what is going on here, even if the specifics are flying right over my head. This is extremely clever. Unlike the catastrophic launch of Nothing’s messaging client and all other predecessors, Beeper Mini is not proxying iMessages through Apple devices. It is sending and receiving iMessages as though it is an Apple device. Regardless of how concerned you may feel about privacy and security, you have to admit that is pretty impressive. It has somehow taken eleven years to fully reverse-engineer iMessage and build a user-friendly client — but it seems it has been done.

Journalists have understandably raised questions about how long this app will be tolerated by Apple. The people behind it — including “JJTech” — believe Apple could not turn it off for technical reasons, but it seems like Apple is prepared to discontinue services on older devices at least. The Verge’s Nilay Patel noted on Threads the P.R. risk of shutting it down, while Sarah Perez of TechCrunch points to current antitrust investigations and E.U. regulations.

I am not so sure any of this would be a deterrent for Apple. It could be more restrictive on what it would portray as privacy, security, and business grounds. The privacy and security excuses could feel shakier, as it does seem messages sent through Beeper Mini fit the iMessage protocol without additional risk exposure — pending third-party auditing, of course — but the business case is more solid. As noted earlier, Beeper is selling iMessage access, but Apple does not charge for the service. It bakes the cost into device sales. Beeper gets to profit from Apple’s free-to-users network.

I am not defending Apple’s revenue or its likely stance; I do not much care either way. For what it is worth, I do not think Beeper Mini will actually make much of an impact because iMessage interoperability concerns are localized to the United States and a handful of other countries. But I do think Apple is protective of its network and will treat this reverse engineering exercise as a security problem. If it wants to launch iMessage on Android, it will do so on its own terms.