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.
- Author:
- K. Benedyczak
-
Field Summary
FieldsFields inherited from class org.bouncycastle.openssl.PEMParser
parsers, TYPE_ATTRIBUTE_CERTIFICATE, TYPE_CERTIFICATE, TYPE_CERTIFICATE_REQUEST, TYPE_CMS, TYPE_DSA_PRIVATE_KEY, TYPE_EC_PARAMETERS, TYPE_EC_PRIVATE_KEY, TYPE_ENCRYPTED_PRIVATE_KEY, TYPE_NEW_CERTIFICATE_REQUEST, TYPE_PKCS7, TYPE_PRIVATE_KEY, TYPE_PUBLIC_KEY, TYPE_RSA_PRIVATE_KEY, TYPE_RSA_PUBLIC_KEY, TYPE_TRUSTED_CERTIFICATE, TYPE_X509_CERTIFICATE, TYPE_X509_CRL
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.bouncycastle.util.io.pem.PemObject
Generate BC's PemObject from the input stream.Methods inherited from class org.bouncycastle.openssl.PEMParser
getSupportedTypes, readObject
Methods inherited from class java.io.BufferedReader
close, lines, mark, markSupported, read, read, readLine, ready, reset, skip
Methods inherited from class java.io.Reader
nullReader, read, read, transferTo
-
Field Details
-
is
-
encrypted
protected boolean encrypted
-
-
Constructor Details
-
PKCS8DERReader
-
-
Method Details
-
readPemObject
Generate BC's PemObject from the input stream. The object's type is fixed to encrypted or plain private key.- Overrides:
readPemObject
in classorg.bouncycastle.util.io.pem.PemReader
- Returns:
- the parsed PEM object
- Throws:
IOException
- IO exception
-