Top Description Fields Constructors Methods
org.keycloak.common.util

public Class PemUtils

extends Object
Class Inheritance
Imports
java.security.Key, .NoSuchAlgorithmException, .PrivateKey, .PublicKey, java.security.cert.Certificate, .X509Certificate, org.keycloak.common.crypto.CryptoIntegration

Utility classes to extract PublicKey, PrivateKey, and X509Certificate from openssl generated PEM files
Author
Bill Burke
Version
$Revision: 1 $

Field Summary

Modifier and TypeField and Description
public static final String
public static final String
public static final String
public static final String
public static final String
public static final String

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static String
public static String
public static X509Certificate
decodeCertificate(String cert)

Decode a X509 Certificate from a PEM string

public static PrivateKey
decodePrivateKey(String pem)

Decode a Private Key from a PEM string

public static PublicKey
decodePublicKey(String pem)

Decode a Public Key from a PEM string

public static PublicKey

Returns:

The public key or null
decodePublicKey
(String
The pem encoded pblic key
pem
,
String
The type of the key (RSA, EC,...)
type
)

Decode a Public Key from a PEM string

public static String
encodeCertificate(Certificate certificate)

Encode a X509 Certificate to a PEM string

public static String
encodeKey(Key key)

Encode a Key to a PEM string

public static String
generateThumbprint(String[] certChain, String encoding)

public static byte[]
public static String
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

BEGIN_CERTback to summary
public static final String BEGIN_CERT
BEGIN_PRIVATE_KEYback to summary
public static final String BEGIN_PRIVATE_KEY
BEGIN_RSA_PRIVATE_KEYback to summary
public static final String BEGIN_RSA_PRIVATE_KEY
END_CERTback to summary
public static final String END_CERT
END_PRIVATE_KEYback to summary
public static final String END_PRIVATE_KEY
END_RSA_PRIVATE_KEYback to summary
public static final String END_RSA_PRIVATE_KEY

Constructor Detail

PemUtilsback to summary
public PemUtils()

Method Detail

addPrivateKeyBeginEndback to summary
public static String addPrivateKeyBeginEnd(String privateKeyPem)
addRsaPrivateKeyBeginEndback to summary
public static String addRsaPrivateKeyBeginEnd(String privateKeyPem)
decodeCertificateback to summary
public static X509Certificate decodeCertificate(String cert)

Decode a X509 Certificate from a PEM string

decodePrivateKeyback to summary
public static PrivateKey decodePrivateKey(String pem)

Decode a Private Key from a PEM string

decodePublicKeyback to summary
public static PublicKey decodePublicKey(String pem)

Decode a Public Key from a PEM string

decodePublicKeyback to summary
public static PublicKey decodePublicKey(String pem, String type)

Decode a Public Key from a PEM string

Parameters
pem:String

The pem encoded pblic key

type:String

The type of the key (RSA, EC,...)

Returns:PublicKey

The public key or null

encodeCertificateback to summary
public static String encodeCertificate(Certificate certificate)

Encode a X509 Certificate to a PEM string

encodeKeyback to summary
public static String encodeKey(Key key)

Encode a Key to a PEM string

generateThumbprintback to summary
public static String generateThumbprint(String[] certChain, String encoding) throws NoSuchAlgorithmException
pemToDerback to summary
public static byte[] pemToDer(String pem)
removeBeginEndback to summary
public static String removeBeginEnd(String pem)