FairEmail 中文文档 下载 App

FairEmail S/MIME 企业级加密配置

S/MIME 和 OpenPGP 有什么不同

S/MIME(Secure / Multipurpose Internet Mail Extensions)和 OpenPGP 都是端到端邮件加密标准,但它们的底层技术体系完全不同:

维度S/MIMEOpenPGP
证书体系基于 X.509 公钥基础设施(PKI),证书由权威机构颁发基于独立 PGP 密钥对,无中央权威
密钥获取从企业 IT 或商业 CA 获取数字证书从公钥服务器或联系人处获取公钥
适用场景企业环境、政府机构、合规要求高的行业个人用户、开源社区、无中心组织的场景
兼容性Outlook、Thunderbird 等企业客户端原生支持需要 PGP 插件(GPGTools、OpenKeychain)
FairEmail 支持Pro 功能内置(不需要外部应用)依赖 OpenKeychain 等外部 PGP 应用

简单理解:S/MIME 是企业世界的加密标准,OpenPGP 是自由世界的加密标准。如果你所在公司有 IT 部门管理证书体系,用 S/MIME;如果你自己管理密钥、和个人联系人加密通信,用 OpenPGP。

FairEmail 为什么 S/MIME 是 Pro 功能

S/MIME 需要实现完整的 X.509 证书解析、证书链验证、CRL/OCSP 证书吊销检查等复杂的密码学逻辑。OpenPGP 可以委托给 OpenKeychain,但 S/MIME 没有可靠的 Android 开源库可以直接集成,所以 FairEmail 开发者选择在 App 内部自己实现 S/MIME 支持——这部分开发量较大,因此列为 Pro 功能。

获取 S/MIME 数字证书

使用 S/MIME 的第一步是拿到自己的数字证书(包含签名证书和加密证书),常见获取方式:

方式一:企业 IT 部门颁发

企业环境中,IT 管理员通过内部 PKI 基础设施(如 Microsoft AD CS)为员工颁发证书。你通常需要:

  1. 访问企业证书注册页面(通常是内网地址)
  2. 提交 CSR(证书签名请求)——FairEmail 可以帮你生成 CSR
  3. 等待审批后下载证书
  4. 将证书导入 Android「安全存储」

方式二:商业 CA 购买

购买个人 S/MIME 证书的常见 CA:

部分 CA 提供 1 年免费证书试用(用于个人非商业用途)。

方式三:自签证书

也可以自己生成自签证书(Self-signed certificate),但自签证书无法通过签名验证——别人收到你的自签证书签名的邮件时,客户端会警告签名者不可信。适合内部小圈子测试用,不适合正式通信。

在 FairEmail 中配置 S/MIME

第一步:导入证书到 Android 安全存储

FairEmail 通过 Android Keystore 系统访问你的 S/MIME 证书,因此证书必须先安装到 Android 系统级安全存储中:

  1. 获取到证书文件(通常是 .p12 或 .pfx 格式的 PFX/PKCS#12 包)
  2. 用文件管理器找到证书文件 → 点击 → 系统引导安装
  3. 安装过程中会要求设置证书存储密码(这个密码用于保护你设备上的证书)
  4. 安装完成后,在 Android 设置 → 安全 → 加密凭据 → 用户凭据中应该能看到你的证书

第二步:在 FairEmail 中绑定证书

  1. FairEmail 设置 → 手动设置 → 身份 → 选择某个身份
  2. 找到「S/MIME」区域
  3. FairEmail 会自动扫描 Android 安全存储中与该身份邮箱地址匹配的证书
  4. 选择匹配到的签名证书和加密证书
  5. 保存

第三步:启用 S/MIME 签名 / 加密

在写信界面,右上角锁图标 → 选择 S/MIME 签名或 S/MIME 加密 → 发送。FairEmail 会调用 Android Keystore 中的证书完成操作。

接收和验证 S/MIME 邮件

FairEmail 接收到 S/MIME 签名或加密邮件时:

CSR 生成与证书请求

FairEmail Pro 还可以帮你生成证书签名请求(CSR):

  1. 设置 → 手动设置 → 身份 → 选择身份 → S/MIME 区域 → 「生成 CSR」
  2. FairEmail 会提示你输入:私钥长度(默认 2048 或 4096 位)、CSR 口令(保护 CSR)
  3. 生成后,CSR 会保存到 Android 安全存储
  4. 把 CSR 内容(一个 .pem 文件的文本)提交给证书颁发方

CSR 生成后对应的私钥也会自动存储到 Android Keystore——不要丢失这个私钥。如果丢失,即使拿到了证书也无法使用。

S/MIME 的安全注意事项

证书过期

S/MIME 证书有有效期(通常 1~2 年)。FairEmail 在证书即将过期前会在账户设置中提醒你。过期后的证书不能用于签名或加密——邮件会发送失败或无法解密。

私钥保护

S/MIME 证书的私钥存储在 Android 的硬件安全模块(Android Keystore)中——这是 Android 平台上最安全的存储方式(即使设备 root 也很难提取)。但前提是:

吊销检查

FairEmail 可以配置 CRL(证书吊销列表)或 OCSP(在线证书状态协议)来检查发件人的证书是否已被吊销。建议开启——如果发件人证书被盗用,CA 会吊销它,FairEmail 会自动识别并拒绝签名验证。

OpenPGP vs S/MIME 选哪个

你在企业环境,或对方也在企业环境,需要合规的加密通信 → S/MIME(FairEmail Pro 原生支持)

你是个人用户,想和世界各地的联系人加密通信,没有统一的证书管理 → OpenPGP(需要安装 OpenKeychain)

两者不冲突——你可以同时在 FairEmail 中配置 S/MIME 证书和 OpenKeychain,根据收件人支持哪种加密方式来选择使用哪一种。