PUB - Generic public key typePRV - Generic private key typepublic abstract class AbstractPuttyKeyDecoder<PUB extends java.security.PublicKey,PRV extends java.security.PrivateKey> extends AbstractIdentityResourceLoader<PUB,PRV> implements PuttyKeyPairResourceParser<PUB,PRV>
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ENCRYPTION_HEADER |
logKEY_FILE_HEADER_PREFIX, KNOWN_HEADERS, NO_PRIVATE_KEY_ENCRYPTION_VALUE, PPK_FILE_SUFFIX, PRIVATE_LINES_HEADER, PUBLIC_LINES_HEADERMAX_BIGINT_OCTETS_COUNTEMPTYMAX_CIPHER_NAME_LENGTH, MAX_KEY_COMMENT_LENGTH, MAX_KEY_TYPE_NAME_LENGTH, MAX_PRIVATE_KEY_DATA_SIZE, MAX_PUBLIC_KEY_DATA_SIZE| Modifier | Constructor and Description |
|---|---|
protected |
AbstractPuttyKeyDecoder(java.lang.Class<PUB> pubType,
java.lang.Class<PRV> prvType,
java.util.Collection<java.lang.String> names) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canExtractKeyPairs(NamedResource resourceKey,
java.util.List<java.lang.String> lines) |
static java.util.List<java.lang.String> |
extractDataLines(NamedResource resourceKey,
java.util.List<java.lang.String> lines,
int startIndex,
java.lang.String hdrName,
java.lang.String hdrValue,
java.util.List<java.lang.String> curLines) |
java.util.Collection<java.security.KeyPair> |
loadKeyPairs(NamedResource resourceKey,
byte[] pubData,
byte[] prvData,
java.util.Map<java.lang.String,java.lang.String> headers) |
java.util.Collection<java.security.KeyPair> |
loadKeyPairs(NamedResource resourceKey,
java.io.InputStream pubData,
java.io.InputStream prvData,
java.util.Map<java.lang.String,java.lang.String> headers) |
abstract java.util.Collection<java.security.KeyPair> |
loadKeyPairs(NamedResource resourceKey,
PuttyKeyReader pubReader,
PuttyKeyReader prvReader,
java.util.Map<java.lang.String,java.lang.String> headers) |
java.util.Collection<java.security.KeyPair> |
loadKeyPairs(SessionContext session,
NamedResource resourceKey,
FilePasswordProvider passwordProvider,
java.util.List<java.lang.String> lines)
Loads key pairs from the given resource text lines
|
java.util.Collection<java.security.KeyPair> |
loadKeyPairs(SessionContext session,
NamedResource resourceKey,
java.util.List<java.lang.String> pubLines,
java.util.List<java.lang.String> prvLines,
java.lang.String prvEncryption,
FilePasswordProvider passwordProvider,
java.util.Map<java.lang.String,java.lang.String> headers) |
java.util.Collection<java.security.KeyPair> |
loadKeyPairs(SessionContext session,
NamedResource resourceKey,
java.lang.String pubData,
java.lang.String prvData,
java.lang.String prvEncryption,
FilePasswordProvider passwordProvider,
java.util.Map<java.lang.String,java.lang.String> headers) |
getPrivateKeyType, getPublicKeyType, getSupportedKeyTypesgetSimplifiedLoggerclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdecodePrivateKeyBytes, decodePrivateKeyBytes, toEncryptionKeygetPrivateKeyType, getPublicKeyTypefindSupporterByKeyTypeName, getSupportedKeyTypesaggregate, aggregate, containsMarkerLine, containsMarkerLine, extractDataBytes, findMarkerLine, findMarkerLine, joinDataLinesloadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairspublic static final java.lang.String ENCRYPTION_HEADER
public boolean canExtractKeyPairs(NamedResource resourceKey, java.util.List<java.lang.String> lines) throws java.io.IOException, java.security.GeneralSecurityException
canExtractKeyPairs in interface KeyPairResourceParsercanExtractKeyPairs in interface PuttyKeyPairResourceParser<PUB extends java.security.PublicKey,PRV extends java.security.PrivateKey>resourceKey - A hint as to the origin of the text lineslines - The resource linestrue if the parser can extract some key pairs from the linesjava.io.IOException - If failed to process the linesjava.security.GeneralSecurityException - If failed to extract information regarding the possibility to extract the key
pairspublic java.util.Collection<java.security.KeyPair> loadKeyPairs(SessionContext session, NamedResource resourceKey, FilePasswordProvider passwordProvider, java.util.List<java.lang.String> lines) throws java.io.IOException, java.security.GeneralSecurityException
KeyPairResourceLoaderloadKeyPairs in interface KeyPairResourceLoadersession - 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 linespasswordProvider - The FilePasswordProvider to use in case the data is encrypted - may be
null if no encrypted data is expectedlines - The List of lines as read from the resourceKeyPairs - may be null/empty if none. Note:
the resource loader may decide to skip unknown lines if more than one key pair
type is encoded in itjava.io.IOException - If failed to process the linesjava.security.GeneralSecurityException - If failed to generate the keys from the parsed datapublic static java.util.List<java.lang.String> extractDataLines(NamedResource resourceKey, java.util.List<java.lang.String> lines, int startIndex, java.lang.String hdrName, java.lang.String hdrValue, java.util.List<java.lang.String> curLines) throws java.io.IOException
java.io.IOExceptionpublic java.util.Collection<java.security.KeyPair> loadKeyPairs(SessionContext session, NamedResource resourceKey, java.util.List<java.lang.String> pubLines, java.util.List<java.lang.String> prvLines, java.lang.String prvEncryption, FilePasswordProvider passwordProvider, java.util.Map<java.lang.String,java.lang.String> headers) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOExceptionjava.security.GeneralSecurityExceptionpublic java.util.Collection<java.security.KeyPair> loadKeyPairs(SessionContext session, NamedResource resourceKey, java.lang.String pubData, java.lang.String prvData, java.lang.String prvEncryption, FilePasswordProvider passwordProvider, java.util.Map<java.lang.String,java.lang.String> headers) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOExceptionjava.security.GeneralSecurityExceptionpublic java.util.Collection<java.security.KeyPair> loadKeyPairs(NamedResource resourceKey, byte[] pubData, byte[] prvData, java.util.Map<java.lang.String,java.lang.String> headers) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOExceptionjava.security.GeneralSecurityExceptionpublic java.util.Collection<java.security.KeyPair> loadKeyPairs(NamedResource resourceKey, java.io.InputStream pubData, java.io.InputStream prvData, java.util.Map<java.lang.String,java.lang.String> headers) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOExceptionjava.security.GeneralSecurityExceptionpublic abstract java.util.Collection<java.security.KeyPair> loadKeyPairs(NamedResource resourceKey, PuttyKeyReader pubReader, PuttyKeyReader prvReader, java.util.Map<java.lang.String,java.lang.String> headers) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOExceptionjava.security.GeneralSecurityException