Untitled
unknown
plain_text
2 years ago
1.7 kB
6
Indexable
import java.security.KeyFactory; import java.security.PublicKey; import java.security.spec.X509EncodedKeySpec; import java.util.Base64; public class ReadPublicKeyFromPEM { public static void main(String[] args) throws Exception { // The provided PEM-encoded public key String publicKeyPEM = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsjtGIk8SxD+OEiBpP2/T" + "JUAF0upwuKGMk6wH8Rwov88VvzJrVm2NCticTk5FUg+UG5r8JArrV4tJPRHQyvqK" + "wF4NiksuvOjv3HyIf4oaOhZjT8hDne1Bfv+cFqZJ61Gk0MjANh/T5q9vxER/7TdU" + "NHKpoRV+NVlKN5bEU/NQ5FQjVXicfswxh6Y6fl2PIFqT2CfjD+FkBPU1iT9qyJYH" + "A38IRvwNtcitFgCeZwdGPoxiPPh1WHY8VxpUVBv/2JsUtrB/rAIbGqZoxAIWvijJ" + "Pe9o1TY3VlOzk9ASZ1AeatvOir+iDVJ5OpKmLnzc46QgGPUsjIyo6Sje9dxpGtoG" + "QQIDAQAB"; // Convert the PEM-encoded public key to a PublicKey object PublicKey publicKey = convertPEMToPublicKey(publicKeyPEM); // Display the public key System.out.println("Public Key: " + bytesToHexString(publicKey.getEncoded())); } public static String bytesToHexString(byte[] bytes) { StringBuilder hexString = new StringBuilder(); for (byte b : bytes) { hexString.append(String.format("%02X", b)); } return hexString.toString(); } private static PublicKey convertPEMToPublicKey(String publicKeyPEM) throws Exception { byte[] keyBytes = Base64.getDecoder().decode(publicKeyPEM); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(keyBytes); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); return keyFactory.generatePublic(keySpec); } }
Editor is loading...
Leave a Comment