指纹不是证书的签名值, 和证书本身生成的字段无关, 并不包含在证书中. 因为你的任何改动都会影响最终输出的DER或PEM文件, 所以只能在证书生成之后进行指纹生成.
最后, 它是16进制表示的哈希值(一般来说是sha1), 并不参与签名验证. 只能验证它是不是你想要下那个证书. Win环境下打开证书自动生成了一个指纹.
补充: 中文证书显示的签名哈希算法并不是指纹算法, 而是签名中对正文获取摘要的哈希算法, 它在证书结构体中同属于 "signature AlgorithmIdentifier" 这一属性
下是ED25519PEM证书, 转换为DER格式后,可以用sha1做比对. 如果它真包含了指纹, 那么你对它做sha1后的结果不会和它的指纹一致 :)
-----BEGIN CERTIFICATE-----
MIH6MIGtoAMCAQICBELxgPEwBQYDK2VwMCAxHjAcBgNVBAMMFemHkeWImuaXoOaV
jOWkp+WKm+WQuTAgFw0yMTA3MTgxNDIyMzZaGA8yMTQ5MDYxNzE0MjIzNlowKTEn
MCUGA1UEAwwe6ICB546L55qE5YWE5byf6ICB546L6ICB5aSq54i3MCowBQYDK2Vw
AyEAb1ZDHimr0kLTi0MDjfVZ/HHK4ToP73A6pn+vxUOWMKEwBQYDK2VwA0EA3fOg
eXrnxB8g53uqOT/cu4iD8+ijWcYR64s72X66jc4qk9vhgPsS7oIMHMTnVnsU4kw0
regNPgLKxo7i215wAg==
-----END CERTIFICATE-----