Tôi có một ứng dụng khách java đang gọi một hoạt động dịch vụ web có chứng chỉ "vân tay" làm thông số. Tôi tin rằng dấu vân tay là một loại băm SHA1, trong định dạng chuỗi thập lục phân, của khóa công khai của cert, nhưng tôi không chắc chắn.Cách lấy/tính toán dấu vân tay của chứng chỉ X509 trong Java?
Khuôn khổ .NET dường như bao gồm một cách đơn giản để nhận giá trị này (thuộc tính X509Certificate2.Thumbprint). Xem thuộc tính file cer trong Windows cũng sẽ hiển thị vân tay, trông giống như: do đó
a6 9c fd b0 58 0d a4 ee ae 9a 47 75 24 c3 0b 9f 5d b6 1c 77
Câu hỏi của tôi là: Có ai biết làm thế nào để truy xuất hoặc tính toán chuỗi vân tay này trong Java, nếu tôi có một thể hiện của một java.security.cert.X509Certificate?
bản demo Java này (URLConnection) oogle của kết nối đến một url https và in/tính toán tất cả các loại dấu vân tay, bao gồm cả pin-sha256, SKI và Thumbprints: https://github.com/ecki/JavaCryptoTest/ blob/master/src/main/java/net/eckenfels/test/ssl/UrlInspect.java – eckes