【发布时间】:2015-03-16 12:28:48
【问题描述】:
我正在尝试获取 X509.v3 证书(我拥有 X509Certificate2 对象)序列号,以将其放入 XADES XMLDSIG 中的 X509SerialNumber 元素中,该元素应该是一个整数。 我有一个由其他软件使用我正在使用的证书制作的 XML 签名,这是它的序列号:
<X509SerialNumber xmlns="http://www.w3.org/2000/09/xmldsig#">1315010063538360283821765366094690</X509SerialNumber>
不幸的是,我无法从 X509Certificate2 对象中获取此值,该对象使用用于签署上述 XML 的证书进行初始化。这些是我得到的价值
X509Certificate2->SerialNumber = "40D5C2ADDEFD92740000000B9B62"
X509Certificate2->GetSerialNumber() = "40D5C2ADDEFD92740000000B9B62"
Convert::ToBase64String(X509Certificate2->GetSerialNumber()) = "YpsLAAAAdJL93q3C1UA="
我认为 GetSerialNumber() 返回一个 Base64String。如您所见,GetSerialNumber() 和 GetSerialNumber() 返回不同的值。从这些值中获取值“1315010063538360283821765366094690”的整数的方法是什么?
【问题讨论】:
标签: .net x509certificate2 serial-number xml-dsig