A Python library to generate a signed email
Project description
python-smime-email
Generate x509 SMIME signed emails with ease!
Usage
-
Generate the email raw content
import smime_email data = b"Hello!" SMIME_KEY = smime_email.load_key("key_path.pem") SMIME_INTERMEDIATE = smime_email.load_certificates("intermediate_path.pem") SMIME_CERT = smime_email.load_certificates("cert_path.pem")[0] email_raw_bytes = smime_email.get_smime_attachment_content(data, SMIME_KEY, SMIME_INTERMEDIATE, SMIME_CERT)
-
Send it using any email library you like. Here is an example as Django email backend
email_raw_bytes = smime_email.get_smime_attachment_content(data, SMIME_KEY, SMIME_INTERMEDIATE, SMIME_CERT) # ... class EmailBackend(BaseEmailBackend): def send_messages(self, message) -> int: with smtplib.SMTP(settings.EMAIL_HOST, settings.EMAIL_PORT) as server: server.sendmail(message.from_email, message.to, email_raw_bytes) return 1
Development
The code is formatted with black and isort and checked with various linters.
To run the whole linting and formatting process, run poetry run poe all
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
smime_email-0.3.0.tar.gz
(3.3 kB
view hashes)
Built Distribution
Close
Hashes for smime_email-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dcf082657e79d526380f407b8e277bdfbf50af38f089b45415a955fa03d456ad |
|
MD5 | 17f598c272b979150cb793b509fa026f |
|
BLAKE2b-256 | 3bb5ccf128cf56d4055e9eaeee68befc8d606efcbd10526583ccafa1804eeb0b |