I have some SW that extracts certificates data and the SW utilizes OpenSSL. I am confused what is the difference between the subjectKeyIdentifier and the sha1Fingerprint. Both are hash values. My intuition is that the subjectKeyIdentifier is the hash of the public-key of the certificate and the sha1Fingerprint is the hash of the overall fields of the certificate. My research made more confused. For example, thisThis reference says about the subjectKeyIdentifier:
This is a hash value of the SSL certificate.
This is an example of what I get from the SW:
"subjectKeyIdentifier": "A8:4AXX:6A:63XX:04:7D:DD:BA:E6:D1:39XX:B7XX:A6XX:45:65:EF:F3:A8XX:EC:A1"XX", "sha1Fingerprint": "E6:A3XX:B4XX:5B:06:2DXX:50:9B:33XX:82:28XX:2D:19XX:6E:FEXX:97:D5XX:95:6CXX:CB" Note: XX in the examples is used for redaction.
The question is: What is the difference between the two hashes? What each hash is for?