public class RSAPEMResourceKeyPairParser extends AbstractPEMResourceKeyPairParser
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
BEGIN_MARKER |
static java.util.List<java.lang.String> |
BEGINNERS |
static java.lang.String |
END_MARKER |
static java.util.List<java.lang.String> |
ENDERS |
static RSAPEMResourceKeyPairParser |
INSTANCE |
static java.lang.String |
RSA_OID |
logEMPTYMAX_CIPHER_NAME_LENGTH, MAX_KEY_COMMENT_LENGTH, MAX_KEY_TYPE_NAME_LENGTH, MAX_PRIVATE_KEY_DATA_SIZE, MAX_PUBLIC_KEY_DATA_SIZE| Constructor and Description |
|---|
RSAPEMResourceKeyPairParser() |
| Modifier and Type | Method and Description |
|---|---|
static java.security.KeyPair |
decodeRSAKeyPair(java.security.KeyFactory kf,
java.io.InputStream s,
boolean okToClose)
The ASN.1 syntax for the private key as per RFC-3447 section A.1.2:
|
java.util.Collection<java.security.KeyPair> |
extractKeyPairs(SessionContext session,
NamedResource resourceKey,
java.lang.String beginMarker,
java.lang.String endMarker,
FilePasswordProvider passwordProvider,
java.io.InputStream stream) |
applyPrivateKeyCipher, extractKeyPairs, getAlgorithm, getAlgorithmIdentifiercanExtractKeyPairs, extractKeyPairs, getBeginners, getEnders, getEndingMarkers, loadKeyPairsgetSimplifiedLoggerclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaggregate, aggregate, canExtractKeyPairs, containsMarkerLine, containsMarkerLine, extractDataBytes, findMarkerLine, findMarkerLine, joinDataLinesloadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairspublic static final java.lang.String BEGIN_MARKER
public static final java.util.List<java.lang.String> BEGINNERS
public static final java.lang.String END_MARKER
public static final java.util.List<java.lang.String> ENDERS
public static final java.lang.String RSA_OID
public static final RSAPEMResourceKeyPairParser INSTANCE
public java.util.Collection<java.security.KeyPair> extractKeyPairs(SessionContext session, NamedResource resourceKey, java.lang.String beginMarker, java.lang.String endMarker, FilePasswordProvider passwordProvider, java.io.InputStream stream) throws java.io.IOException, java.security.GeneralSecurityException
extractKeyPairs in class AbstractKeyPairResourceParsersession - The SessionContext for invoking this load command - may
be null if not invoked within a session context (e.g., offline tool or session unknown).resourceKey - A hint as to the origin of the text linesbeginMarker - The line containing the begin markerendMarker - The line containing the end markerpasswordProvider - The FilePasswordProvider to use
in case the data is encrypted - may be null if no encryptedstream - The decoded data InputStreamKeyPairs - may be null/empty if none.java.io.IOException - If failed to parse the datajava.security.GeneralSecurityException - If failed to generate the keyspublic static java.security.KeyPair decodeRSAKeyPair(java.security.KeyFactory kf,
java.io.InputStream s,
boolean okToClose)
throws java.io.IOException,
java.security.GeneralSecurityException
The ASN.1 syntax for the private key as per RFC-3447 section A.1.2:
RSAPrivateKey ::= SEQUENCE {
version Version,
modulus INTEGER, -- n
publicExponent INTEGER, -- e
privateExponent INTEGER, -- d
prime1 INTEGER, -- p
prime2 INTEGER, -- q
exponent1 INTEGER, -- d mod (p-1)
exponent2 INTEGER, -- d mod (q-1)
coefficient INTEGER, -- (inverse of q) mod p
otherPrimeInfos OtherPrimeInfos OPTIONAL
}
kf - The KeyFactory To use to generate the keyss - The InputStream containing the encoded bytesokToClose - true if the method may close the input
stream regardless of success or failureKeyPairjava.io.IOException - If failed to read or decode the bytesjava.security.GeneralSecurityException - If failed to generate the keys