A signature algorithm generates or verifies digital signatures. In an X.509 certificate, its Signature Algorithm field identifies how the certificate was signed and what verification should expect. Digital signatures act like security seals: corruption or tampering makes the signature no longer match. section 8.2.1
Verifying a certificate
A github.com certificate identifies ECDSA with SHA-384 as its signature algorithm. OpenSSL can verify the certificate, but verification may fail with “unable to get local issuer certificate” when the issuer chain is unavailable. Supplying the relevant certificate chain can produce an OK result. section 8.2.1
Listing 8.6 Signature section of github.com X.509 certificate on March 5, 2023
Certificate:
Data:
[Remvoved for brevity]
Signature Algorithm: ecdsa-with-SHA384 #1
Signature Value: #2
30:64:02:30:04:dc:0d:d4:de:34:99:0a:9c:1f:a8:e1:c1:76:
5c:62:f4:04:a0:29:35:3e:c2:0d:2a:c3:71:6a:b5:f4:37:d4:
ec:0b:60:57:71:87:43:25:36:4f:c7:c2:48:d1:49:68:02:30:
56:d0:bc:c9:17:10:fb:cd:be:fe:2d:df:42:ba:c6:da:46:db:
aa:a6:67:ee:8e:88:84:81:20:85:cc:96:35:a7:b2:26:11:d6:
0c:99:9d:3c:c8:83:70:10:4b:0e:15:9b
Inspect the certificate’s Signature Algorithm and Signature Value fields to connect the named algorithm with the data used during verification. section 8.2.1

