Class PKCS8DERReader

java.lang.Object
java.io.Reader
java.io.BufferedReader
org.bouncycastle.util.io.pem.PemReader
org.bouncycastle.openssl.PEMParser
eu.emi.security.authn.x509.helpers.PKCS8DERReader
All Implemented Interfaces:
Closeable, AutoCloseable, Readable

public class PKCS8DERReader extends org.bouncycastle.openssl.PEMParser
This class extends the PEMParser class from the BC library. It is modified to read DER input, not the PEM (it can be considered a smart-hack) as otherwise BC's parsers code would need to be copied. It supports reading of the PKCS8 private key in DER form. It is assumed that the key is encrypted if a password is provided.

This class interface is the readObject method.

This implementation overrides the PemReader readPemObject method to actually read the DER. The Reader used by the PemReader is not used.

  • Field Details

    • is

      protected InputStream is
    • encrypted

      protected boolean encrypted
  • Constructor Details

    • PKCS8DERReader

      public PKCS8DERReader(InputStream is, boolean encrypted)
  • Method Details

    • readPemObject

      public org.bouncycastle.util.io.pem.PemObject readPemObject() throws IOException
      Generate BC's PemObject from the input stream. The object's type is fixed to encrypted or plain private key.
      Overrides:
      readPemObject in class org.bouncycastle.util.io.pem.PemReader
      Returns:
      the parsed PEM object
      Throws:
      IOException - IO exception