GetSerialNumber给出的值与X509Certificate2中的SerialNumber不同



我有一个证书数据(字节数组):

var cert = new X509Certificate2(certBytes);
var serialBytes = cert.GetSerialNumber();
var serialString = cert.SerialNumber;

serialBytes转换为十六进制格式时:

BitConverter.ToString(serialBytes).Replace("-","")

它给出的值与serialString

不同

因为您应该阅读文档:

X509Certificate。GetSerialNumber以小端顺序的字节数组形式返回X.509v3证书的序列号。.

X509Certificate2。SerialNumber获取证书的序列号作为大端十六进制字符串。

最新更新