0

我不清楚在 X509 证书(通用名称等rfc 5280 )的各个字段中使用的字符编码(AsciiString、BMPString、UTF8String 等)信息来自哪里。我们绝对不能确定只看单个字符流(除非它是 Unicode)。x509 证书是否包含有关其他地方的字符编码的信息?

4

1 回答 1

0

该标准指定每个字段是或可以是字符集。这几乎定义了它。

此外 - 如果您访问一个字段,您实际上可以看到它实际编码为的类型。所以你知道接下来是UTF8等。

API 使您摆脱了所有控制——因此 GENERAL_NAME 只是分解为指定对象的字段(例如 commonName 等)和字段值(例如一个人的 UTF8 编码名称)之类的东西。同样对于 URI 或电子邮件地址 - 以及随之而来的更受限制的值。你会得到通知(obj->type)它是什么(ASN1_UTF8STRING等)。

所以每次 - 你得到的是字符串以及它是如何编码的。

于 2013-03-25T21:19:38.807 回答