Résumé

  • La RFC 3323 permettait de cacher une identité au destinataire en la confiant à un service intermédiaire qui devait encore connaître ou acheminer ce qu’il masquait.
  • critical demandait un échec fermé : une confidentialité impossible devait provoquer le rejet, non la transmission silencieuse d’une identité exposée.

Le refus était une fonction de confidentialité

Une requête rejetée semble être un échec de communication. Dans la RFC 3323, elle pouvait au contraire être la seule manière honnête de respecter le choix de l’utilisateur. Un champ Privacy demandait des fonctions header, session ou user. Ajouter critical signifiait que leur absence rendait l’envoi inacceptable.

Cette règle répondait à une asymétrie irréversible. Une fonction de confidentialité pouvait échouer pour des raisons juridiques, une fonction non implémentée, une mauvaise configuration ou une condition exceptionnelle. Si le réseau poursuivait malgré tout, le destinataire apprenait une identité que l’appelant voulait retenir. Aucun correctif ultérieur ne pouvait lui faire oublier l’information. Le rejet conservait la possibilité de choisir une autre route ou de renoncer.

Le mécanisme ne promettait donc pas que toute requête portant Privacy était protégée. Il décrivait une demande et un comportement attendu. Pour prouver l’exécution, il fallait encore observer le service, les transformations et le résultat.

Anonyme dépendait d’un observateur

La RFC distinguait plusieurs situations. L’utilisateur pouvait cacher son identité au destinataire tout en la révélant aux intermédiaires. Il pouvait protéger certaines informations contre des intermédiaires et les transmettre au destinataire par un corps sécurisé. Il pouvait chercher à la cacher aux deux. Dire seulement « l’appel est anonyme » supprimait précisément la partie importante : anonyme pour qui ?

Un agent pouvait utiliser le nom Anonymous et le domaine SIP anonyme réservé dans From, supprimer des champs facultatifs révélateurs et rendre le Call-ID moins identifiable. Mais Contact et Via devaient souvent rester routables. SDP pouvait montrer l’adresse du trafic. Une authentification révélait généralement l’identité à au moins une partie.

Il fallait alors un service de confidentialité. Cet intermédiaire retirait ou réécrivait les données avant le destinataire et prenait en charge le routage du dialogue. Pour cacher l’adresse de session, il pouvait entrer dans le chemin média. Il détenait ainsi le contrôle opérationnel rendu nécessaire par la confidentialité qu’il fournissait.

Le chemin vers le service comptait

La RFC recommandait fortement TLS ou une protection équivalente jusqu’au service. Sans protection, l’identité pouvait être observée avant d’arriver au point censé la masquer, ou un proxy pouvait enlever la demande. Une connexion directe permettait aussi de vérifier le certificat du service.

Cette sécurité ne rendait pas le service aveugle. Elle protégeait le trajet jusqu’à lui. En matière de session, un relais d’anonymisation pouvait masquer l’adresse à l’autre participant, tout en devenant capable d’observer un média non chiffré. Confidentialité vis-à-vis du destinataire et confidentialité vis-à-vis du service restaient deux propriétés.

La valeur none complétait la symétrie. Elle interdisait au service d’appliquer ses fonctions, même si un profil ou une valeur par défaut les aurait déclenchées. Un intermédiaire ne devait ni retirer ni modifier ce choix. La bonne opération était donc celle qui respectait l’intention explicite, pas celle qui maximisait automatiquement l’anonymisation.

Les destinataires et proxys pouvaient enfin refuser un originator qu’ils ne pouvaient identifier. La capacité de demander la confidentialité ne donnait pas le pouvoir d’imposer l’acceptation. RFC 3325 traitait parallèlement l’identité affirmée dans des réseaux de confiance ; les RFC ultérieures sur identité et historique ont modifié d’autres preuves SIP. Elles rappellent qu’une identité peut être connue d’un domaine et cachée à un autre.

L’histoire de la RFC 3323 est celle d’une délégation, non d’une disparition. L’identité changeait de visibilité parce qu’un intermédiaire recevait une responsabilité. La confidentialité ne se prouvait qu’en nommant l’observateur, la transformation, le chemin de confiance et le comportement en cas d’échec.

Sources