Package org.jboss.resteasy.security

## Class PemUtils

- java.lang.Object
- - org.jboss.resteasy.security.PemUtils

-     public class PemUtils
      extends Object

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

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PemUtils()` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static X509Certificate` | `decodeCertificate​(InputStream is)` |
    `static X509Certificate` | `decodeCertificate​(String cert)` |
    `static PrivateKey` | `decodePrivateKey​(InputStream is)` |
    `static PrivateKey` | `decodePrivateKey​(String pem)` | Extract a private key that is a PKCS8 pem string (base64 encoded PKCS8).
    `static PublicKey` | `decodePublicKey​(String pem)` | Extract a public key from a PEM string.
    `static String` | `pemFromStream​(InputStream is)` |
    `static byte[]` | `pemToDer​(InputStream is)` | Decode a PEM file to DER format.
    `static byte[]` | `pemToDer​(String pem)` | Decode a PEM string to DER format.
    `static String` | `removeBeginEnd​(String pem)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PemUtils

          public PemUtils()

  - ### Method Detail

    - #### decodeCertificate

          public static X509Certificate decodeCertificate​(InputStream is)
                                                   throws Exception

      Throws:
        `Exception`

    - #### decodeCertificate

          public static X509Certificate decodeCertificate​(String cert)
                                                   throws Exception

      Throws:
        `Exception`

    - #### decodePublicKey

          public static PublicKey decodePublicKey​(String pem)
                                           throws Exception

      Extract a public key from a PEM string.
      Parameters:
        `pem` - PEM encoded string
      Returns:
        `PublicKey`
      Throws:
        `Exception` - if error occurred

    - #### decodePrivateKey

          public static PrivateKey decodePrivateKey​(String pem)
                                             throws Exception

      Extract a private key that is a PKCS8 pem string (base64 encoded PKCS8).
      Parameters:
        `pem` - PEM encoded string
      Returns:
        `PrivateKey`
      Throws:
        `Exception` - if error occurred

    - #### decodePrivateKey

          public static PrivateKey decodePrivateKey​(InputStream is)
                                             throws Exception

      Throws:
        `Exception`

    - #### pemToDer

          public static byte[] pemToDer​(InputStream is)
                                 throws IOException

      Decode a PEM file to DER format.
      Parameters:
        `is` - input stream
      Returns:
        decoded bytes
      Throws:
        `IOException` - if I/O error occurred

    - #### pemToDer

          public static byte[] pemToDer​(String pem)
                                 throws IOException

      Decode a PEM string to DER format.
      Parameters:
        `pem` - PEM encoded string
      Returns:
        decoded bytes
      Throws:
        `IOException` - if I/O error occurred

    - #### removeBeginEnd

          public static String removeBeginEnd​(String pem)

    - #### pemFromStream

          public static String pemFromStream​(InputStream is)
                                      throws IOException

      Throws:
        `IOException`