Bringing OpenKeychain Support to K-9 Mail

Short version: I will be working on K-9 Mail for a year! Yay!

Longer version, let me start with some history: When I started working on OpenKeychain as a Google Summer of Code student in 2014, there was a lot to do. I reworked the database layout, rewrote the service structure, added tests for the important bits, … there were TODOs all over the place. At the beginning of 2015, we started redesigning everything to fit the new Android Material Design. It was around this time Dominik and I sometimes jokingly pointed out how all our work on OpenKeychain was really just procrastination, because the bottleneck for OpenPGP encrypted email on Android no longer lay with OpenKeychain, but the email clients which used our API.

While K-9 Mail has supported OpenKeychain’s API for a long time, it is not a fully-featured OpenPGP implementation. In particular, it is lacking support for the PGP/MIME format, which means it can’t display emails sent with default settings from most other implementations. But tackling this problem is not a small amount of work, so we stayed in our comfort zone working on OpenKeychain – until now.

I am thrilled to announce that, starting this month, I will be working full time for one year on OpenPGP support in K-9 Mail. This is made possible by funding courtesy of the Open Technology Fund. I aim to make two releases, one after six months, one after twelve, but otherwise try to keep my planned schedule flexible. I will be tracking development on the K-9 issue tracker on Github, and possibly write a blog post now and then about my progress.

I am very grateful for this chance, and hope to manage during this time to not only improve OpenPGP support in K-9 to an acceptable state, but make it awesome!

- Vincent