Certificate x509证书的字符编码是什么?

Certificate x509证书的字符编码是什么?,certificate,java,x509,encoding,scep,Certificate,Java,X509,Encoding,Scep,我正在实现一个SCEP服务器来分发客户端证书。根据,对于来自设备的GetCACert请求,响应头的内容类型应为application/x-x509-ca-cert 我的问题是,默认情况下,应用程序的筛选器将每个响应的字符编码设置为UTF-8,因此响应变成application/x-x509-ca-cert;字符集=UTF-8。设备不喜欢此字符编码部分并拒绝响应 我怀疑设备可能会尝试将响应从UTF-8格式转换,因此我尝试将响应编码为UTF-8,但设备仍然不接受我的响应 然后,我将burp代理设置为

我正在实现一个SCEP服务器来分发客户端证书。根据,对于来自设备的GetCACert请求,响应头的内容类型应为application/x-x509-ca-cert

我的问题是,默认情况下,应用程序的筛选器将每个响应的字符编码设置为UTF-8,因此响应变成application/x-x509-ca-cert;字符集=UTF-8。设备不喜欢此字符编码部分并拒绝响应

我怀疑设备可能会尝试将响应从UTF-8格式转换,因此我尝试将响应编码为UTF-8,但设备仍然不接受我的响应

然后,我将burp代理设置为设备,并从响应头中删除了charset=UTF-8部分,设备接受了响应

通过谷歌搜索,我发现证书是用DER编码的,但当我将DER作为字符编码时,java表示未知编码,并且字符编码在其正式字符集中没有DER


我的问题是,可以用来定义x509证书字符编码的正式字符集名称是什么?

证书是二进制的。它们没有字符编码,因为它们不是字符而是普通的八位字节。如果您尝试使用某些字符编码对这些非字符进行编码,则不会有任何帮助。相反,您需要省略charset属性。

证书是二进制的。它们没有字符编码,因为它们不是字符而是普通的八位字节。如果您尝试使用某些字符编码对这些非字符进行编码,则不会有任何帮助。相反,您需要省略charset属性