news.volyx.in

iMessage, explained (jjtech.dev)

622 points by spoon16 · 990 days ago · 152 comments on HN

Article summary

The article provides an overview of the internals of iMessage, explaining how it uses the Apple Push Notification Service (APNs) and the IDentity Services (IDS) keyserver to enable end-to-end encrypted messaging. The author discusses the technical details of how iMessage works, including the use of push tokens, validation data, and public key encryption. The article is based on the author's work on pypush, an open-source project that reimplements iMessage. The goal of the article is to provide a high-level understanding of the iMessage protocol, rather than a detailed technical explanation.

Main themes

  • iMessage internals
  • APNs and IDS
  • end-to-end encryption
  • device attestation
  • messaging services
  • cross-platform compatibility
  • security and privacy

What commenters say

  • Some commenters predict that Apple will use attestation to lock down iMessage, making it harder for non-Apple devices to use the service.
  • Others note that Apple already provides security updates to older devices, which could facilitate the rollout of attestation.
  • There is a discussion about the feasibility of extracting keys from a Trusted Platform Module (TPM), with some arguing that it is virtually impossible and others suggesting that it may be possible with significant resources.
  • Some commenters praise the author's work on pypush and note that it is impressive for a high school student to have undertaken such a project.
  • The use of iMessage and other messaging services is discussed, with some arguing that iMessage's end-to-end encryption and ability to fall back to SMS make it a more secure and ubiquitous option.
  • Others prefer to use cross-platform messaging services like WhatsApp or Signal, citing their wider availability and ease of use.
  • There is a debate about the trade-offs between using a device-specific messaging service like iMessage and a more open, cross-platform alternative.
  • Some commenters note that hosting one's own messaging solution may be the only way to truly avoid lock-in to a particular platform or service.