Introduction
Hi! I love this project idea and really appreciate the dedication to modern security standards (such as DKIM support) as well as mail-send's RFC compliance. The current feature set would serve as a fantastic base for a security-oriented Rust-written mail client if that is something Stalwart Labs would be interested in pursuing.
The final component of mail-send that would make it a serious security contender (in terms of client features) to the likes of ProtonMail and Tutanota would be support for OpenPGP, the open standard for email encryption.
Proposal
Standards
mail-send could implement OpenPGP support by following these Internet Message Format standards:
There are two strong libraries that have implemented RFC 4880: rpgp and sequoia.
*Comparison of OpenPGP vs. PGP/MIME and a table of major email client support for them
Implementation
The loading of a public PGP key could be done in a similar syntax to the implementation of DKIM in this crate:
// Set up DKIM signer
let pgp_key = PGP::from_pkcs1_asc_file("./key.asc")
.unwrap()
^ I'm not very familiar with PGP so not sure if any other inputs besides the file path should be provided
// Build a encrypted text message with a single attachment
let message = MessageBuilder::new()
.from(("John Doe", "john@example.com"))
.to("jane@example.com")
.subject("Howdy!")
.text_body("These pretzels are making me thirsty.")
.binary_attachment("image/png", "pretzels.png", [1, 2, 3, 4].as_ref())
.pgp_encrypt(pgp_key);
Interested to hear your thoughts! Let me know if this issue would be better suited at mail-builder.
Introduction
Hi! I love this project idea and really appreciate the dedication to modern security standards (such as DKIM support) as well as
mail-send's RFC compliance. The current feature set would serve as a fantastic base for a security-oriented Rust-written mail client if that is something Stalwart Labs would be interested in pursuing.The final component of
mail-sendthat would make it a serious security contender (in terms of client features) to the likes of ProtonMail and Tutanota would be support for OpenPGP, the open standard for email encryption.Proposal
Standards
mail-sendcould implement OpenPGP support by following these Internet Message Format standards:There are two strong libraries that have implemented RFC 4880: rpgp and sequoia.
*Comparison of OpenPGP vs. PGP/MIME and a table of major email client support for them
Implementation
The loading of a public PGP key could be done in a similar syntax to the implementation of DKIM in this crate:
^ I'm not very familiar with PGP so not sure if any other inputs besides the file path should be provided
Interested to hear your thoughts! Let me know if this issue would be better suited at
mail-builder.