ios - 通过 SecCertificate 从证书中检索颁发者名称
问题描述
我有一个证书文件。SecCertificate 对象已正确创建。
let data = try? Data(contentsOf: fileUrl!)
let certificate = SecCertificateCreateWithData(nil, data! as CFData)
▿ Optional<SecCertificateRef>
- some : <cert(0x7fec5d608250) s: www.google.com i: Avast trusted CA>
// I can get Subject name by
SecCertificateCopySubjectSummary(certificate!)! as String
// I tried printing SecCertificateCopyNormalizedIssuerSequence
var data1 = SecCertificateCopyNormalizedIssuerSequence(certificate!)! as Data
print(String(data: data1, encoding: .utf8))
Optional("0h1\u{0B}0\t\u{06}\u{03}U\u{04}\u{06}\u{13}\u{02}CZ1\u{0F}0\r\u{06}\u{03}U\u{04}\u{08}\u{0C}\u{06}Prague1\u{0E}0\u{0C}\u{06}\u{03}U\u{04}\n\u{0C}\u{05}AVAST1\u{1D}0\u{1B}\u{06}\u{03}U\u{04}\u{0B}\u{0C}\u{14}Software Development1\u{19}0\u{17}\u{06}\u{03}U\u{04}\u{03}\u{0C}\u{10}Avast trusted CA")
但我需要使用 SecCertificate.h 获取发行人名称信息,如公用名或组织(如上例中来自 SecCertificateRef 的 i)
谢谢。
解决方案
推荐阅读
- docker - 如果图像 tar 被解压缩和压缩,则 Docker Load 不起作用
- python - OSError:[Errno 8] Exec 格式错误:尝试在 python 中使用 selenium 打开 Firefox 时出现“geckodriver”
- linux - VSCode“打开包含文件夹”快捷方式在 Linux Mint 上中断
- java - 初始化时的 Firestore 内部错误
- ffmpeg - 使用ffmpeg将.avi转换为.webm时如何保持透明度
- javascript - 即使请求成功,Ajax 也会返回 404
- google-apps-script - 如何为Google表格上包含特定字符的每一行循环转置函数?
- python - 调试时使用控制台命令绘制图形
- php - 将产品图片(不是缩略图)添加到 WooCommerce 订单电子邮件
- java - Java8容器`for each`和Stream`for each`有什么区别