移动设备如何使用GPG加密?

阅读了https://emailselfdefense.fsf.org/en/index.html后对gpg加密通讯十分感兴趣,随之萌生了在日常生活中多加使用gpg加密的想法,不过有一些目前看来还不太好克服的困难:

  1. 移动设备上如何阅读gpg加密邮件?

电脑上,无论是windows,macos还是linux,都可以使用thunderbird来阅读gpg加密的邮件,但移动设备上,安卓我试过使用k9mail,体验非常糟糕,ios阵营下则几乎没有支持gpg邮件的客户端。总不能为了查看个邮件,还要靠远程桌面来阅读与回信吧。

  1. 公钥的分发能否更简单一些?

使用电子邮件,公钥由keyserver根据邮箱地址发放,日常在邮件以外的使用场景下,例如我既想享受qq微信的便利性,又希望拥有gpg加密的私密性,那公钥的分发就只能通过手动进行了。分发公钥这个过程有没有可能做到更傻瓜式一些呢?

  1. 基于上一点的额外思考,群聊呢?

在群聊中,对于不同的接收者需要使用不同的公钥来加密,显然会让效率大大降低。在非点对点的通信背景下,有没有更现代一点的做法,使得加解密更容易的同时,不损害加密的私密性呢?

我感觉这一点跟gpg的多收件人加密有点像,就是你在加密时指定多个收件人,然后每个收件人都可以用自己的密钥解密。不过有个缺点,若群聊里加入新人,新人无法阅读到历史消息。

另一种方法就是用对称密钥来加解密,但是可能也有些对应的弊端,例如退出群聊以后仍可读取对应的消息历史,等等。

群聊端到端一般用成对双棘轮算法,双棘轮算法 - 维基百科,自由的百科全书

比如你可以参考下 WhatsApp 公开的算法内容

openkeychain 这个app.如果是邮件的话配上 k-9 mail .Oversec 可以以悬浮窗的形式解密消息, 但不太确定稳定支持哪些app.

你说的功能可以通过IBE或者ABE实现,目前已经有一些可以用的构造了,有没有现成的系统我不是很清楚。

另外我也很想知道在ios上如何使用GPG的邮件,我看app store上有个canary mail貌似不错,不过对于我来说有点太贵了(印象中300多块)