Nov 23, 2023 4:24 AM PT

What is Contact Key Verification and how is it used?

Apple’s iMessage will soon offer a new secure identity verification system enterprise professionals might want to use: Contact Key Verification.

Many business professionals require highly secure messaging solutions, particularly when they travel. Apple’s iMessage will soon offer a new secure identity verification system enterprise professionals might find useful. It’s called Contact Key Verification.

What is Contact Key Verification?

Apple actually announced the system in 2022. It is now expected to go live across the Apple ecosystem with the release of iOS 17.2 and updates for Macs and iPads.

Contact Key Verification is “designed to detect sophisticated attacks against iMessage servers and allow users to verify that they’re messaging only with whom they intend,” Apple has said.

Who is it for?

Apple says its system is for the same essential group of people it already protects with Lockdown Mode — that is, “users who face extraordinary digital threats, such as journalists, human rights activists, and members of government.”

What problem does Contact Key Verification solve?

While iMessage chats are end-to-end encrypted, that security relies on a third-party “Key Directory Server” to authorize devices. That makes the Key Directory Server a potential target for criminals and surveillance.

The problem comes in the event a powerful entity manages to compromise the security protection of that server; once they have done so, it becomes possible to intercept or monitor messages, or even enter the conversation. (This could be a particular concern for people in politics, human rights activists, journalists, businesspeople and others.)

Contact Key Verification helps secure the transaction.

What does this mean for iMessage?

What this means for a user is that Contact Key Verification lets you add a manual verification step inside an iMessage conversation to confirm the person you are speaking with is who their device claims they are.

  • The system requires you and the other party read a short verification code to each other, either in person or during a phone call.
  • Once you have both validated the conversation your devices maintain a chain of trust.
  • That chain means no private encryption data is shared, including to Apple.
  • The idea here is that the system will spot if anything changes in the encryption keys, and you’ll be given a warning that something may have gone awry.
  • The feature also offers users the chance to compare a Contact Verification Code in person, on FaceTime, or through another secure call.

How does it work?

As we know, iMessage's end-to-end encryption means only the sender and recipient of a message can read it. This is achieved because each device in a user’s iMessage account has its own set of encryption keys that are never used on anything else. When a person wants to share an iMessage, the system consults the key directory service to authorize the devices so they can communicate; that’s the vulnerability that might be exploited (as shown above).

To resolve this, iMessage Contact Key Verification uses a mechanism called Key Transparency (KT). Apple explains this “uses a verifiable log-backed map data structure, which can provide cryptographic proofs of inclusion and be audited for consistency over time.”  That’s the function of the spoken code word exchanged between two trusted parties.

Apple has a tech note describing the cryptographic tools used to enable this security protection available here.

What happens if the system spots an anomaly?

If a device in the chain detects a validation error, the person owning the device that spots the problem will be notified about the error directly in the Messages conversation transcript.

How to enable Contact Key Verification

Once Apple ships iOS 17.2, you’ll be able to enable Contact Key Verification within Settings. Here you should tap your name to access your Apple ID settings.

  • Scroll down the subsequent page and toggle Contact Key Verification to On.
  • A warning notice will appear. This tells you what the feature does and informs you that, “Conversations with people who have contact key verification turned on also receive automatic advanced protections to help prevent even very sophisticated attackers from impersonating anyone in a conversation.”
  • If you have other devices signed into your Apple ID, you’ll have to update them to a compatible software version, disable iMessage on those devices, or remove the devices from your Apple ID.

Once you have set up the system, you will have your own personal verification code accessible from within Settings. This is unique to you and your device and will be required to secure any future iMessage communication with others.

Does this work with SMS?

No. Contact Key Verification will not work with SMS messaging — so if you see a green bubble, you cannot assume the communication is secure.

Please follow me on Mastodon, or join me in the AppleHolic’s bar & grill and Apple Discussions groups on MeWe.