我的任务是从 HTTPS 消息中解析服务器名称。我被要求从“client hello”扩展以及“certicate”、“commonname”字段中解析它。
“证书”消息中有多个证书。例如,当使用 https 打开 google 并通过 wireshark 收听时,我看到 2 个证书第一个有 commonname "*.google.com" ,第二个有 commonname "Google internet authority" 。第一个是我连接的服务器名称,第二个是签署证书的机构。
我的问题是我能否确定服务器名称(在我的情况下为 google.com)将始终出现在第一个证书消息中。如果我只想获取服务器名,是否需要关心证书消息中的其他证书。