La dernière mise à jour iOS 17.2 est arrivée cette semaine, rendant la vérification des clés de contact accessible au public. Cette fonctionnalité, annoncée
Dans cet article, j'expliquerai pourquoi cette sécurité supplémentaire est importante, ce que font réellement ces deux nouvelles fonctionnalités et comment vous pouvez opter dès maintenant pour des niveaux de sécurité plus élevés dans iMessage sur votre téléphone.
La sécurisation des messages dans des applications comme iMessage (qui utilisent un cryptage de bout en bout) implique une « cryptographie à clé publique » - En gros, disons que vous envoyez un message à votre amie Alice. Alice possède deux clés : une clé publique et une clé privée.
Mais vous pouvez considérer la clé publique comme un coffre-fort dans lequel vous pouvez insérer un message, et la seule façon d’ouvrir ce coffre-fort et de lire le message est d’utiliser la clé privée pour « l’ouvrir » ou le déchiffrer.
Voici comment cela fonctionne généralement : Alice vous donne sa clé publique et vous l'utilisez pour chiffrer un message dans un sens avant de lui renvoyer le message.
Elle peut ensuite utiliser sa clé privée distincte sur son appareil pour déchiffrer ce message et le lire, et elle sera la seule personne à pouvoir lire ce message.
Tout cela est bien beau jusqu'à ce que vous réfléchissiez… comment obtenir la clé publique d'Alice en premier lieu ?
Certaines applications adoptent une approche « peer-to-peer », dans laquelle vous demandez à l'appareil d'Alice de vous envoyer directement sa clé publique. Cela fonctionne bien si Alice et toutes les autres personnes à qui vous envoyez un message disposent d'un appareil qui est toujours en ligne à tout moment.
Mais si l'appareil de l'autre personne est éteint, en mode avion ou déconnecté d'Internet, cette approche ne fonctionne pas très bien !
C'est pourquoi de nombreux messagers, notamment Signal, Google RCS, WhatsApp et, oui, iMessage, adoptent une approche différente pour échanger ces clés. Ils utilisent un serveur de clés central qui distribue les clés au nom de chacun.
Désormais, au lieu de demander directement sa clé publique à votre amie Alice, votre téléphone demande à Apple quelle est la clé publique d'Alice, et Apple répond avec la clé publique d'Alice.
À première vue, cela ne constitue pas une menace directe pour votre cryptage. Peu importe si Apple connaît la clé publique d'Alice, car la clé publique ne peut pas du tout être utilisée pour déchiffrer les messages envoyés à Alice : elle est publique.
Cependant, il s'agit toujours d'une position de pouvoir dans laquelle Apple s'est placé. La menace la plus notable est la possibilité qu'Apple inclue des clés publiques supplémentaires dans sa réponse, peut-être celles sous le contrôle d'Apple ou de quelqu'un d'autre plutôt que celui de votre amie Alice.
Ensuite, lorsque vous enverrez des messages à Alice à l'avenir après avoir reçu cette réponse malveillante, votre amie Alice n'est plus la seule personne à pouvoir déchiffrer ce message, peut-être qu'Apple ou quelqu'un d'autre le peut aussi !
Cette menace est exactement ce à quoi la vérification des clés dans iMessage vise à répondre.
La première façon dont Apple tente de résoudre ce problème consiste à utiliser une technologie appelée
La façon dont cela fonctionne est similaire à
La brève explication de Key Transparency est qu'Apple a créé un registre vérifiable de clés publiques auquel de nouvelles données peuvent uniquement être ajoutées , mais les données existantes dans le registre ne peuvent jamais être modifiées .
Cela signifie qu'Apple ne peut pas ajouter sournoisement de fausses clés publiques pour une personne à ce grand livre, puis les supprimer plus tard avant que quiconque ne le remarque.
Lorsque vous activez la vérification des clés de contact dans les paramètres de l'identifiant Apple de votre appareil, puis envoyez un message à votre amie Alice, votre téléphone comparera localement les clés publiques d'Alice qu'il reçoit du serveur d'échange de clés d'Apple avec ce que dit le grand livre de transparence des clés publiques. Les clés publiques d'Alice devraient l'être.
Cette comparaison garantit que les clés que le serveur d'échange de clés d'Apple vous envoie ne sont pas différentes de celles qu'il envoie à tout le monde.
De plus, votre téléphone surveillera ou auditera régulièrement ce grand livre universel de transparence des clés pour ce qu'il dit sur vos propres clés, afin de s'assurer que ce grand livre ne contient que les clés publiques que votre appareil attend de lui.
Cette vérification automatique des clés via Key Transparency constitue une énorme amélioration de la sécurité, mais Apple publie également un deuxième mécanisme qui offre une assurance encore plus élevée que cela.
La vérification manuelle des clés de contact est ce deuxième mécanisme, et c'est quelque chose que les utilisateurs de
Dans ce système, vous avez désormais la possibilité de comparer manuellement les codes de vérification avec la personne avec laquelle vous communiquez, supprimant ainsi entièrement les serveurs d'Apple, y compris le grand livre de transparence clé, du processus de vérification.
Pour ce faire, vous pouvez ouvrir le profil du contact dans iMessage et il affichera un code d'authentification à 8 chiffres dans la section Advanced Message Security que vous pourrez comparer en personne, par téléphone ou via toute autre communication hors bande. méthode que vous souhaitez.
Ce code agit comme une sorte d'identifiant unique de la clé publique de cette personne, et lorsque vous le marquez comme vérifié, un hachage de la clé publique de cette personne est lié à la carte de contact de votre ami sur votre appareil.
Si le serveur d'échange de clés d'Apple vous envoie une clé publique différente à l'avenir, ou si la clé change par rapport à celle stockée dans la carte de contact de votre ami pour toute autre raison, iMessage affiche une erreur directement dans la transcription de la conversation pour que vous puissiez approfondir vos recherches.
Pour profiter de ces fonctionnalités de sécurité avec vos contacts, vous devrez tous les deux ouvrir les paramètres de votre identifiant Apple dans l'application Paramètres et activer la vérification dans iMessage dans la section Vérification de la clé de contact .
Je vous recommande vivement de le faire immédiatement et de faire connaître également ce changement. Il ajoute une couche de sécurité à vos conversations sans pratiquement aucun inconvénient, c'est donc une évidence pour quiconque utilise ce service.