¿Cómo recuperar / calcular la huella digital de un certificado X509 en Java?

Tengo un cliente java que está llamando a una operación de servicio web que toma un certificado como "huella digital" como parámetro. Creo que la huella digital es una especie de hash SHA1, en formato de cadena hexadecimal, de la clave pública del certificado, pero no estoy seguro.

El marco .NET parece incluir una forma sencilla de obtener este valor (X509Certificado2.Thumbprint propiedad). Ver las propiedades de un archivo .cer en Windows también muestra la huella digital, que se ve así:

a6 9c fd b0 58 0d a4 ee ae 9a 47 75 24 c3 0b 9f 5d b6 1c 77

Por lo tanto, mi pregunta es: ¿Alguien sabe cómo recuperar o calcular esta cadena de huella digital dentro de Java, si tengo una instancia dejava.security.cert.X509Certificate?

Respuestas a la pregunta(5)

Su respuesta a la pregunta