DKIM filter for OpenSMTPD
Find a file
2023-03-26 22:12:50 +02:00
.github/workflows Update the CI 2023-03-26 18:42:18 +02:00
src Reorder the config members and functions based on the short parameter 2023-03-26 22:12:50 +02:00
test_samples Update test samples 2023-03-24 22:13:05 +01:00
.gitignore First commit 2023-03-19 14:59:32 +01:00
Cargo.toml Remove default features in dependencies 2023-03-26 19:05:24 +02:00
deny.toml Allow the Unicode-DFS-2016 license 2023-03-26 18:35:01 +02:00
LICENSE-APACHE-2.0.txt Include the licenses 2023-03-26 14:51:39 +02:00
LICENSE-MIT.txt Include the licenses 2023-03-26 14:51:39 +02:00
README.md Add a README file 2023-03-26 19:55:44 +02:00
rustfmt.toml First commit 2023-03-19 14:59:32 +01:00

Filter DKIMout

Build Status Minimum rustc version License MIT OR Apache 2.0

DKIM filter for OpenSMTPD.

Project status

This is a work in progress, it is not supposed to work yet.

Frequently Asked Questions

Does this filter signs outgoing emails using DKIM or check the DKIM signature of incoming emails?

It only signs outgoing emails.

Why create another filter for that?

Currently, the options to sign outgoing emails with DKIM are the following:

DKIMproxy is not an OpenSMTPD filter and is therefore more inconvenient to use. Moreover, its development stopped in 2013 and it is therefore dangerous to use.

The two other are fine, however I think they lack a few features, like automatic key rotation and publication of obsolete private keys.

Why would anyone publish private keys, even obsolete ones? Are you crazy?

DKIM's goal is to fight spam, that's all, and for that it only need the keys to be safe when the recipients receives the email. But because it includes a cryptographic proof over the content it is being used for other usages, mostly as a legal proof long after the email has been sent and received. Publishing the obsolete/revoked private keys allows the sender to regain deniability.

Matthew Green wrote an excellent article on this subject: Ok Google: please publish your DKIM secret keys.

Where is the documentation?

A man page will be available by the time this filter is ready to use.