ios - 在 iOS Swift 上进行公钥固定时的 ASN1 标头
问题描述
在我可以从谷歌找到的大多数示例中,我总是看到人们对一些 ASN1 标头进行硬编码,如下所示:
let rsa2048Asn1Header:[UInt8] = [
0x30, 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00
]
但是,如果我尝试使用
openssl s_client connect www.google.com:443 < /dev/null | openssl x509 -outform DER > google.der
并使用
openssl asn1parse -inform DER -in google.der -noout -out data && hexdump -C data
标题显然不一样。我对 SSL 不是很熟悉,我的问题是;
1、如何获取RSA2048 ASN1 header的值?
2,我应该始终只使用 rsa2048 ASN1 标头,还是每次尝试对主机进行 cert-pin 时都提取 asn1 标头?
解决方案
推荐阅读
- ios - Xcode中opencascade库的IOS示例Lex编译错误
- c# - 基于现有标准解决方案的 Xamarin Forms 解决方案
- java - RecyclerView 不接受来自模型的构造函数
- php - 如何从 Doctrine 的 2 个表中获取数据?
- path - 如何在 Siteground 上指定 cron 脚本的路径?
- vue.js - 通过单击按钮添加组件
- hibernate - 如何在多边形内找到点?
- java - 从 java 运行 bat 文件时,有什么方法可以模拟用户输入?
- location - Twilio API 未通过 WhatsApp 频道接收当前位置
- c++ - 从自定义目录运行 ctest