欢迎光临散文网 会员登陆 & 注册

如何在iOS设备使用S/MIME邮件加密

2023-03-04 10:54 作者:troilusoct  | 我要投稿
了解了一下 S/MIME , 发现在 iOS 设备上比 PGP 更好用,自带的邮件 App 就支持相关功能。
S/MIME 相较于主要区别是 CA 颁发证书来确保可信度,而 PGP 靠信任网络,那么如果自签 S/MIME 证书+信任网络,结合易用性与安全性,体验更佳。

01 获取S/MIME证书

01-1 方式1:使用CA签名的免费证书

Actalis免费个人证书

https://extrassl.actalis.it/portal/uapub/freemail?lang=en

01-2 方式2:创建自签名 S/MIME 证书

# 为CA生成RSA密钥 openssl genrsa -aes256 -out ca.key 8192

# 为CA创建自签名证书 openssl req -new -x509 -days 36500 -key ca.key -out ca.crt  -extensions v3_ca

# 为个人电子邮件生成RSA密钥 openssl genrsa -aes256 -out smime_name.key 8192

# 创建个人电子邮件证书 openssl req -new -key smime_name.key -out smime_name.csr

# 创建smime.cnf,iOS使用证书必须要有此步骤,内容如下,subjectAltName可添加多个email [smime] keyUsage = nonRepudiation, digitalSignature, keyEncipherment subjectAltName = email:name@outlook.com, email:xxxxx extendedKeyUsage = emailProtection

# 使用CA对证书进行签名,注意此处如果要签多个证书,-set_serial 1要变更 openssl x509 -req -days 36500 -in smime_name.csr -CA ca.crt -CAkey ca.key -set_serial 1 -out smime_name.crt -addtrust emailProtection -addreject clientAuth -addreject serverAuth -trustout -extfile smime.cnf -extensions smime

# 检查证书是否ok,其中必需包含S/MIME signing = Yes、S/MIME encryption = Yes、X509v3 Key Usage = Digital、Signature, Non Repudiation, Key Encipherment、X509v3 Extended Key Usage = E-mail Protection、Trusted Uses = E-mail Protection openssl x509 -in smime_name.crt -purpose -noout -text

# 将证书打包为 PKCS12 格式 openssl pkcs12 -export -in smime_name.crt -inkey smime_name.key -out smime_name.p12

02 导入证书

将ca.crt、smime_name.p12邮件发给iOS设备,点击附件导入、信任。可参考03中的链接操作。

03 邮件设置

进入邮件设置,启用签名及加密,参考Apple官方指导、这个链接或者这个链接

04 参考

  • Using our own certificate authority for business email encryption

  • Creating Certificate Authorities and self-signed SSL certificates

  • Create Self-Signed S/MIME Certificates

  • Can I create my own S/MIME certificate for email encryption?

  • Creating SSL certificates for S/MIME email encryption with OpenSSL

  • Issue Your Own Self-Signed S/MIME Certs with OpenSSL


如何在iOS设备使用S/MIME邮件加密的评论 (共 条)

分享到微博请遵守国家法律