【发布时间】:2020-09-10 06:58:00
【问题描述】:
我正在实现一个 SCEP 服务器来分发客户端证书。根据protocol,对于来自设备的GetCACert请求,响应头的content-type应该是application/x-x509-ca-cert。
我的问题是,默认情况下,我的应用程序的过滤器将每个响应的字符编码设置为UTF-8,因此响应变为application/x-x509-ca-cert;charset=UTF-8。设备不喜欢这个字符编码部分并拒绝响应。
我怀疑设备可能会尝试将响应从 UTF-8 格式转换,因此我尝试将响应编码为 UTF-8,但设备仍然不接受我的响应。
然后我将 burp 代理设置为设备并从响应头中删除 charset=UTF-8 部分并且设备接受了响应。
通过谷歌搜索,我发现证书是用DER 编码的,但是当我给DER 作为字符编码时,java 说unknown-encoding 并且IANA 字符编码没有@987654331 @ 在他们的官方字符集中。
我的问题是“可用于定义 x509 证书字符编码的官方字符集名称是什么?”。
【问题讨论】:
标签: certificate java x509 encoding scep