Email client

From Rixort Wiki
Jump to navigation Jump to search

Language choice

Use Python for speed of development and cross-platform code.

Security

Security features include:

  • Only support TLS 1.2 and higher.
  • Only support 'strong' cipher suites.
  • Do not allow connections to servers with invalid certificates, e.g. expiry date in past.

Security in Python (see SSL security):

import ssl
context = ssl.create_default_context()
context.options |= ssl.OP_NO_TLSv1
context.options |= ssl.OP_NO_TLSv1_1

Notes

  • Probably a good idea to create a completely separate email account for this.
  • Spawn new thread to send mail asynchronously without affecting the rest of the GUI.