< draft-pep-email-00.txt   draft-pep-email-01.txt >
Network Working Group H. Marques Network Working Group H. Marques
Internet-Draft pEp Foundation Internet-Draft pEp Foundation
Intended status: Standards Track July 10, 2020 Intended status: Standards Track November 03, 2020
Expires: January 11, 2021 Expires: May 7, 2021
pretty Easy privacy (pEp): Email Formats and Protocols pretty Easy privacy (pEp): Email Formats and Protocols
draft-pep-email-00 draft-pep-email-01
Abstract Abstract
The proposed pretty Easy privacy (pEp) protocols for email are based The proposed pretty Easy privacy (pEp) protocols for email are based
upon already existing email and encryption formats (as PGP/MIME) and upon already existing email and encryption formats (as PGP/MIME) and
designed to allow for easily implementable and interoperable designed to allow for easily implementable and interoperable
opportunistic encryption. The protocols range from key distribution, opportunistic encryption. The protocols range from key distribution,
secret key synchronization between own devices, to mechanisms of secret key synchronization between own devices, to mechanisms of
metadata and content protection. The metadata and content protection metadata and content protection. The metadata and content protection
is achieved by moving the whole message (not only the body part) into is achieved by moving the whole message (not only the body part) into
skipping to change at page 2, line 4 skipping to change at page 2, line 4
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 11, 2021. This Internet-Draft will expire on May 7, 2021.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 42 skipping to change at page 2, line 42
2.5. End-to-End . . . . . . . . . . . . . . . . . . . . . . . 7 2.5. End-to-End . . . . . . . . . . . . . . . . . . . . . . . 7
2.6. Peer-to-Peer . . . . . . . . . . . . . . . . . . . . . . 7 2.6. Peer-to-Peer . . . . . . . . . . . . . . . . . . . . . . 7
2.7. User Experience (UX) . . . . . . . . . . . . . . . . . . 7 2.7. User Experience (UX) . . . . . . . . . . . . . . . . . . 7
2.8. Identity System . . . . . . . . . . . . . . . . . . . . . 7 2.8. Identity System . . . . . . . . . . . . . . . . . . . . . 7
2.8.1. Address . . . . . . . . . . . . . . . . . . . . . . . 8 2.8.1. Address . . . . . . . . . . . . . . . . . . . . . . . 8
2.8.2. Key . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.8.2. Key . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.8.3. User . . . . . . . . . . . . . . . . . . . . . . . . 8 2.8.3. User . . . . . . . . . . . . . . . . . . . . . . . . 8
2.8.4. Identity . . . . . . . . . . . . . . . . . . . . . . 8 2.8.4. Identity . . . . . . . . . . . . . . . . . . . . . . 8
2.8.5. Alias . . . . . . . . . . . . . . . . . . . . . . . . 9 2.8.5. Alias . . . . . . . . . . . . . . . . . . . . . . . . 9
2.9. pEp Email Formats . . . . . . . . . . . . . . . . . . . . 9 2.9. pEp Email Formats . . . . . . . . . . . . . . . . . . . . 9
2.9.1. Unencrypted pEp Format . . . . . . . . . . . . . . . 9 2.9.1. Unencrypted pEp Format . . . . . . . . . . . . . . . 10
2.9.2. pEp Email Format 1.0 . . . . . . . . . . . . . . . . 11 2.9.2. pEp Email Format 1.0 . . . . . . . . . . . . . . . . 11
2.9.3. pEp Email Format 2.0 . . . . . . . . . . . . . . . . 15 2.9.3. pEp Email Format 2.0 . . . . . . . . . . . . . . . . 15
2.9.4. pEp Email Format 2.1 . . . . . . . . . . . . . . . . 18 2.9.4. pEp Email Format 2.1 . . . . . . . . . . . . . . . . 18
2.9.5. Protocol Negotiation for Format Selection . . . . . . 21 2.9.5. Protocol Negotiation for Format Selection . . . . . . 21
2.9.6. Saving Messages . . . . . . . . . . . . . . . . . . . 21 2.9.6. Saving Messages . . . . . . . . . . . . . . . . . . . 21
3. Key Management . . . . . . . . . . . . . . . . . . . . . . . 21 3. Key Management . . . . . . . . . . . . . . . . . . . . . . . 21
3.1. Key Generation . . . . . . . . . . . . . . . . . . . . . 21 3.1. Key Generation . . . . . . . . . . . . . . . . . . . . . 21
3.2. Private Keys . . . . . . . . . . . . . . . . . . . . . . 22 3.2. Private Keys . . . . . . . . . . . . . . . . . . . . . . 22
3.2.1. Storage . . . . . . . . . . . . . . . . . . . . . . . 22 3.2.1. Storage . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.2. Passphrase . . . . . . . . . . . . . . . . . . . . . 22 3.2.2. Passphrase . . . . . . . . . . . . . . . . . . . . . 22
skipping to change at page 3, line 33 skipping to change at page 3, line 33
9. Privacy Considerations . . . . . . . . . . . . . . . . . . . 27 9. Privacy Considerations . . . . . . . . . . . . . . . . . . . 27
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27
11. Implementation Status . . . . . . . . . . . . . . . . . . . . 27 11. Implementation Status . . . . . . . . . . . . . . . . . . . . 27
11.1. Introduction . . . . . . . . . . . . . . . . . . . . . . 27 11.1. Introduction . . . . . . . . . . . . . . . . . . . . . . 27
11.2. Current software implementations of pEp . . . . . . . . 27 11.2. Current software implementations of pEp . . . . . . . . 27
12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 28 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 28
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 28 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 28
13.1. Normative References . . . . . . . . . . . . . . . . . . 28 13.1. Normative References . . . . . . . . . . . . . . . . . . 28
13.2. Informative References . . . . . . . . . . . . . . . . . 29 13.2. Informative References . . . . . . . . . . . . . . . . . 29
Appendix A. Document Changelog . . . . . . . . . . . . . . . . . 31 Appendix A. Document Changelog . . . . . . . . . . . . . . . . . 31
Appendix B. Open Issues . . . . . . . . . . . . . . . . . . . . 31 Appendix B. Open Issues . . . . . . . . . . . . . . . . . . . . 32
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 32 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 32
1. Introduction 1. Introduction
This document contains propositions for implementers of Mail User This document contains propositions for implementers of Mail User
Agents (MUAs) seeking to support pretty Easy privacy (pEp) Agents (MUAs) seeking to support pretty Easy privacy (pEp)
specifically for email [RFC5322]. All the propositions of specifically for email [RFC5322]. All the propositions of
[I-D.birk-pep] also apply to pEp for email. In this document, [I-D.birk-pep] also apply to pEp for email. In this document,
requirements are outlined for MUAs wanting to establish requirements are outlined for MUAs wanting to establish
interoperability and/or to implement pEp for email. interoperability and/or to implement pEp for email.
pEp for email builds upon the cryptographic security services offered pEp for email builds upon the cryptographic security services offered
by PGP/MIME [RFC3156]. The primary goal is by PGP/MIME [RFC3156]. The primary goals of pEp for email are:
(1) Maximization of email privacy for Internet actors deploying and (1) Maximization of email privacy for Internet actors deploying and
using the pretty Easy privacy approach. using the pretty Easy privacy approach.
(2) Compatibility with legacy or other automatic email encryption (2) Compatibility with legacy or other automatic email encryption
solutions in order to preserve privacy to the greatest extent solutions in order to preserve privacy to the greatest extent
possible. possible.
Interoperability with S/MIME [RFC8551] is a also goal, but at this Interoperability with S/MIME [RFC8551] is a also goal, but at this
time there is no specification or running code that achieves this time there is no specification or running code that achieves this
skipping to change at page 5, line 33 skipping to change at page 5, line 33
authenticating that assertion. Subsequent communication that is authenticating that assertion. Subsequent communication that is
authenticated using the cached key or credential is secure against authenticated using the cached key or credential is secure against
an MiTM attack, if such an attack did not succeed during the an MiTM attack, if such an attack did not succeed during the
vulnerable initial communication." vulnerable initial communication."
o Man-in-the-middle (MITM) attack: cf. [RFC4949], which states: "A o Man-in-the-middle (MITM) attack: cf. [RFC4949], which states: "A
form of active wiretapping attack in which the attacker intercepts form of active wiretapping attack in which the attacker intercepts
and selectively modifies communicated data to masquerade as one or and selectively modifies communicated data to masquerade as one or
more of the entities involved in a communication association." more of the entities involved in a communication association."
Note: Historically, MITM has stood for '_Man_-in-the-middle'.
However, to indicate that the entity in the middle is not always a
human attacker, MITM can also stand for 'Machine-in-the-middle' or
'Meddler-in-the-middle'.
2. Opportunistic Security and Privacy for Email 2. Opportunistic Security and Privacy for Email
In addition to the Protocol's Core Design Principles outlined in In addition to the Protocol's Core Design Principles outlined in
[I-D.birk-pep], the following sections on design principles are [I-D.birk-pep], the following sections on design principles are
applicable to pEp for email applications. applicable to pEp for email applications.
2.1. Privacy by Default 2.1. Privacy by Default
The pEp formats and protocols aim to maximize privacy. Where privacy The pEp formats and protocols aim to maximize privacy. Where privacy
goals contradict with security goals, the privacy goals MUST take goals contradict with security goals, the privacy goals MUST take
skipping to change at page 11, line 39 skipping to change at page 11, line 39
Thus, legacy clients not aware of nor able to parse pEp's subject Thus, legacy clients not aware of nor able to parse pEp's subject
encryption, still display the actual subject (in the above example: encryption, still display the actual subject (in the above example:
"Credentials") to the user. Whenever the first encrypted "text/ "Credentials") to the user. Whenever the first encrypted "text/
plain" MIME entity contains such a subject line, the MUAs plain" MIME entity contains such a subject line, the MUAs
implementing pEp MUST render it to the user. Note that also the implementing pEp MUST render it to the user. Note that also the
lines starting with "subject:" or "SUBJECT:" are to be rendered (as lines starting with "subject:" or "SUBJECT:" are to be rendered (as
with header fields, this is case-insensitive). with header fields, this is case-insensitive).
A pEp-enabled MUA MUST add the "X-pEp-Version" header field with its A pEp-enabled MUA MUST add the "X-pEp-Version" header field with its
highest value (preferably with value "2.1" as for pEp Email Format highest value (preferably with value "2.1" as for pEp Email Format
2.1 Section 2.9.4) when producing this format. Herewith, a pEp- 2.1 Section 2.9.4) when producing this format. Here, a pEp-enabled
enabled MUA announces its capability to receive and render more MUA declares its capability to receive and render more privacy-
privacy-preserving formats. Upgrading both sides to the highest preserving formats. Upgrading both sides to the highest version of
version of the pEp Email Format allows pEp-enabled MUAs for best the pEp Email Format allows pEp-enabled MUAs for best possible
possible protection of metadata. For non-pEp MUAs it is OPTIONAL to protection of metadata. For non-pEp MUAs it is OPTIONAL to add the
add the "X-pEp-Version: 1.0" header field. However, this format is "X-pEp-Version: 1.0" header field. However, this format is
implicitly assumed (if this header field is not present). implicitly assumed even if this header field is not present.
Please note that for messages between pEp- and non-pEp clients the Please note that for messages between pEp- and non-pEp clients the
subject encryption MAY be disabled, sacrificing usability (avoiding subject encryption MAY be disabled, sacrificing usability over
artifacts for receiving non-pEp clients) over privacy. privacy by avoiding artefacts for non-pEp recipients.
PEF-1.0 is also considered pEp's compatibility format towards non-pEp PEF-1.0 is also considered pEp's compatibility format towards non-pEp
clients. clients.
A PEF-1.0 example looks as follows: A PEF-1.0 example looks as follows:
From: Alice <alice@example.org> From: Alice <alice@example.org>
To: Bob <bob@example.org> To: Bob <bob@example.org>
Date: Wed, 1 Jan 2020 23:23:23 +0200 Date: Wed, 1 Jan 2020 23:23:23 +0200
X-pEp-Version: 1.0 X-pEp-Version: 1.0
skipping to change at page 30, line 8 skipping to change at page 30, line 8
[I-D.birk-pep-trustwords] [I-D.birk-pep-trustwords]
Hoeneisen, B. and H. Marques, "IANA Registration of Hoeneisen, B. and H. Marques, "IANA Registration of
Trustword Lists: Guide, Template and IANA Considerations", Trustword Lists: Guide, Template and IANA Considerations",
draft-birk-pep-trustwords-05 (work in progress), January draft-birk-pep-trustwords-05 (work in progress), January
2020. 2020.
[I-D.pep-keysync] [I-D.pep-keysync]
Birk, V., Hoeneisen, B., and K. Bristol, "pretty Easy Birk, V., Hoeneisen, B., and K. Bristol, "pretty Easy
privacy (pEp): Key Synchronization Protocol (KeySync)", privacy (pEp): Key Synchronization Protocol (KeySync)",
draft-pep-keysync-00 (work in progress), November 2019. draft-pep-keysync-02 (work in progress), July 2020.
[ISOC.bnet] [ISOC.bnet]
Simao, I., "Beyond the Net. 12 Innovative Projects Simao, I., "Beyond the Net. 12 Innovative Projects
Selected for Beyond the Net Funding. Implementing Privacy Selected for Beyond the Net Funding. Implementing Privacy
via Mass Encryption: Standardizing pretty Easy privacy's via Mass Encryption: Standardizing pretty Easy privacy's
protocols", June 2017, <https://www.internetsociety.org/ protocols", June 2017, <https://www.internetsociety.org/
blog/2017/06/12-innovative-projects-selected-for-beyond- blog/2017/06/12-innovative-projects-selected-for-beyond-
the-net-funding/>. the-net-funding/>.
[pEp.mixnet] [pEp.mixnet]
skipping to change at page 30, line 33 skipping to change at page 30, line 33
Code: The Implementation Status Section", BCP 205, Code: The Implementation Status Section", BCP 205,
RFC 7942, DOI 10.17487/RFC7942, July 2016, RFC 7942, DOI 10.17487/RFC7942, July 2016,
<https://www.rfc-editor.org/info/rfc7942>. <https://www.rfc-editor.org/info/rfc7942>.
[RFC8551] Schaad, J., Ramsdell, B., and S. Turner, "Secure/ [RFC8551] Schaad, J., Ramsdell, B., and S. Turner, "Secure/
Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Multipurpose Internet Mail Extensions (S/MIME) Version 4.0
Message Specification", RFC 8551, DOI 10.17487/RFC8551, Message Specification", RFC 8551, DOI 10.17487/RFC8551,
April 2019, <https://www.rfc-editor.org/info/rfc8551>. April 2019, <https://www.rfc-editor.org/info/rfc8551>.
[SRC.enigmailpep] [SRC.enigmailpep]
"Source code for Enigmail/pEp", July 2020, "Source code for Enigmail/pEp", November 2020,
<https://enigmail.net/index.php/en/download/source-code>. <https://enigmail.net/index.php/en/download/source-code>.
[SRC.pepforandroid] [SRC.pepforandroid]
"Source code for pEp for Android", July 2020, "Source code for pEp for Android", November 2020,
<https://pep-security.lu/gitlab/android/pep>. <https://pep-security.lu/gitlab/android/pep>.
[SRC.pepforios] [SRC.pepforios]
"Source code for pEp for iOS", July 2020, "Source code for pEp for iOS", November 2020,
<https://pep-security.ch/dev/repos/pEp_for_iOS/>. <https://pep-security.ch/dev/repos/pEp_for_iOS/>.
[SRC.pepforoutlook] [SRC.pepforoutlook]
"Source code for pEp for Outlook", July 2020, "Source code for pEp for Outlook", November 2020,
<https://pep-security.lu/dev/repos/pEp_for_Outlook/>. <https://pep-security.lu/dev/repos/pEp_for_Outlook/>.
[SRC.pepforthunderbird] [SRC.pepforthunderbird]
"Source code for pEp for Thunderbird", July 2020, "Source code for pEp for Thunderbird", November 2020,
<https://pep-security.lu/dev/repos/pEp_for_Thunderbird/>. <https://pep-security.lu/dev/repos/pEp_for_Thunderbird/>.
Appendix A. Document Changelog Appendix A. Document Changelog
[[ RFC Editor: This section is to be removed before publication ]] [[ RFC Editor: This section is to be removed before publication ]]
o draft-pep-email-01:
* Minor language improvements
o draft-pep-email-00: o draft-pep-email-00:
* Major restructure of the document * Major restructure of the document
* Major fixes in the description of the various message formats * Major fixes in the description of the various message formats
* Add many open questions and comments inline (TODO) * Add many open questions and comments inline (TODO)
* Add IANA Considerations section * Add IANA Considerations section
 End of changes. 16 change blocks. 
22 lines changed or deleted 31 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/