48. pepsi-stage-autocrypt-learn

Apprendre les clés des correspondants à partir du courrier qu’ils nous envoient.

48.1. Rôle

pepsi-stage-autocrypt-learn est l’endroit où un message entrant enseigne une clé publique à Pepsi : l’en-tête Autocrypt: de l’expéditeur, une pièce jointe application/pgp-keys, les certificats que porte une signature S/MIME, et — pour un message arrivé chiffré — les champs Autocrypt-Gossip: qui présentent les autres destinataires (Autocrypt Level 1 §5.3). Elle apprend et fait avancer ; elle n’abandonne, ne met en pause, ne fait rebondir ni ne réécrit jamais un message, aussi NEXT_STAGE est-il obligatoire. Référence : pepsi-stage-autocrypt-learn(1).

48.2. Fonctionnalités

  • Placement. Elle s’exécute après les contrôles de spam et avant la remise, car le Level 1 §5.3 dit que l’état de pair DEVRAIT être ignoré pour un message tenu pour du spam, et cela ne peut être honoré qu’une fois qu’un verdict de spam existe. pepsi-stage-decrypt s’exécute en premier sur le chemin entrant afin que tout l’aval voie du texte clair, ce qui est avant qu’aucune étape n’ait une opinion sur le caractère indésirable du message.

  • Respecte le verdict de spam : un message avec state.spam = true n’enseigne rien, à moins que LEARN_FROM_SPAM n’en dispose autrement.

  • Seulement la clé propre de l’expéditeur, depuis les en-têtes et les pièces jointes d’un message ; présenter un tiers est l’affaire du gossip, et le gossip atterrit sur un échelon inférieur.

  • Le gossip seulement depuis du texte chiffré : cru uniquement lorsque pepsi-stage-decrypt a noté que le message est arrivé chiffré et que son bloc d’en-têtes à l’arrivée ne portait aucun champ Autocrypt-Gossip: propre. Ni l’un ni l’autre n’est visible depuis le texte clair validé : les deux sont donc lus dans state.crypto.in.

  • Jamais de clé pour une adresse que cet hôte sert : une clé de pair pour une adresse locale est celle avec laquelle notre propre courrier sortant vers cet utilisateur serait chiffré, de sorte qu’un champ de gossip qui en nomme une est une substitution de clé plutôt qu’une présentation.

  • Note qu’un correspondant détient notre clé : lorsqu’un message a été déchiffré avec l’une de nos clés MTA et porte une signature valide de son adresse From: couvrant le texte en clair, une ligne pepsi.peer_has_own_key est écrite, de sorte que pepsi-stage-encrypt cesse de joindre cette clé sous forme de fichier (ATTACH_KEYS_AS_FILES). Cela se produit quels que soient LEARN_KEYS et le verdict de spam, puisque cela concerne notre clé, et non la sienne.

  • Non privilégiée : elle n’écrit que du matériel de clé public, de sorte que, contrairement aux étapes cryptographiques, elle n’a besoin d’aucun bit setuid et est pliée dans le binaire multi-appel pepsi.

48.3. Configuration

LEARN_KEYS (par défaut yes ; désactivé, l’étape n’apprend plus aucune clé), LEARN_GOSSIP (par défaut yes, et n’ayant de sens que tant que LEARN_KEYS est activé), LEARN_FROM_SPAM (par défaut no — c’est le SHOULD du §5.3 d’Autocrypt Level 1), les options de localité (utilisées seulement pour refuser le gossip concernant des utilisateurs locaux) LOCAL_DOMAINS (par défaut [pepsi-ingress] ACCEPTED_DOMAINS) / TARGETS / RECIPIENT_DELIMITER, et un NEXT_STAGE obligatoire. Le message entier est chargé, puisque le matériel de clés s’y trouve. Voir Configuration.

[stage-autocrypt-learn]
PROGRAM = pepsi-stage-autocrypt-learn
NEXT_STAGE = local

48.4. Ce que vaut une clé apprise

Peu, délibérément. Les clés moissonnées siègent au rang inbound et celles issues du gossip au rang gossip — les deux échelons inférieurs de l’échelle de confiance. Une telle clé ne peut jamais déloger une clé venue de la découverte ou d’un opérateur ; une signature vérifiée contre elle est rapportée au mieux valid-untrusted, de sorte qu’elle ne positionne jamais state.signature_verified ; et une ligne peer_key est entièrement ignorée pour une adresse dont cet hôte détient une identité. À l’intérieur de ces deux échelons, la règle est le plus récent l’emporte selon la date d’effet Autocrypt du message, de sorte qu’un correspondant qui réinstalle son client cesse de recevoir du courrier chiffré vers une clé qu’il ne détient plus — une protection contre un adversaire passif, ce qui est tout ce que revendique Autocrypt.