Class OpenSSHDSSPrivateKeyEntryDecoder
- java.lang.Object
-
- org.apache.sshd.common.util.logging.AbstractLoggingBean
-
- org.apache.sshd.common.config.keys.impl.AbstractIdentityResourceLoader<PUB,PRV>
-
- org.apache.sshd.common.config.keys.impl.AbstractKeyEntryResolver<PUB,PRV>
-
- org.apache.sshd.common.config.keys.impl.AbstractPrivateKeyEntryDecoder<DSAPublicKey,DSAPrivateKey>
-
- org.apache.sshd.common.config.keys.loader.openssh.OpenSSHDSSPrivateKeyEntryDecoder
-
- All Implemented Interfaces:
IdentityResourceLoader<DSAPublicKey,DSAPrivateKey>
,KeyEntryResolver<DSAPublicKey,DSAPrivateKey>
,KeyTypeNamesSupport
,PrivateKeyEntryDecoder<DSAPublicKey,DSAPrivateKey>
,PrivateKeyEntryResolver
public class OpenSSHDSSPrivateKeyEntryDecoder extends AbstractPrivateKeyEntryDecoder<DSAPublicKey,DSAPrivateKey>
- Author:
- Apache MINA SSHD Project
-
-
Field Summary
Fields Modifier and Type Field Description static OpenSSHDSSPrivateKeyEntryDecoder
INSTANCE
-
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
-
Fields inherited from interface org.apache.sshd.common.config.keys.IdentityResourceLoader
MAX_BIGINT_OCTETS_COUNT
-
Fields inherited from interface org.apache.sshd.common.config.keys.PrivateKeyEntryResolver
FAILING, IGNORING
-
-
Constructor Summary
Constructors Constructor Description OpenSSHDSSPrivateKeyEntryDecoder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DSAPrivateKey
clonePrivateKey(DSAPrivateKey key)
DSAPublicKey
clonePublicKey(DSAPublicKey key)
DSAPrivateKey
decodePrivateKey(SessionContext session, String keyType, FilePasswordProvider passwordProvider, InputStream keyData)
String
encodePrivateKey(OutputStream s, DSAPrivateKey key)
KeyFactory
getKeyFactoryInstance()
KeyPairGenerator
getKeyPairGenerator()
boolean
isPublicKeyRecoverySupported()
DSAPublicKey
recoverPublicKey(DSAPrivateKey privateKey)
Attempts to recover the public key given the private one-
Methods inherited from class org.apache.sshd.common.config.keys.impl.AbstractKeyEntryResolver
generatePrivateKey, generatePublicKey, toString
-
Methods inherited from class org.apache.sshd.common.config.keys.impl.AbstractIdentityResourceLoader
getPrivateKeyType, getPublicKeyType, getSupportedKeyTypes
-
Methods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
getSimplifiedLogger
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.sshd.common.config.keys.IdentityResourceLoader
getPrivateKeyType, getPublicKeyType
-
Methods inherited from interface org.apache.sshd.common.config.keys.KeyEntryResolver
cloneKeyPair, generateKeyPair
-
Methods inherited from interface org.apache.sshd.common.config.keys.KeyTypeNamesSupport
getSupportedKeyTypes
-
Methods inherited from interface org.apache.sshd.common.config.keys.PrivateKeyEntryDecoder
decodePrivateKey, decodePrivateKey, decodePrivateKey, resolve
-
-
-
-
Field Detail
-
INSTANCE
public static final OpenSSHDSSPrivateKeyEntryDecoder INSTANCE
-
-
Method Detail
-
decodePrivateKey
public DSAPrivateKey decodePrivateKey(SessionContext session, String keyType, FilePasswordProvider passwordProvider, InputStream keyData) throws IOException, GeneralSecurityException
- Parameters:
session
- TheSessionContext
for invoking this load command - may benull
if not invoked within a session context (e.g., offline tool or session unknown).keyType
- The reported / encode key typepasswordProvider
- TheFilePasswordProvider
to use in case the data is encrypted - may benull
if no encrypted data is expectedkeyData
- The key data bytes stream positioned after the key type decoding and making sure it is one of the supported types- Returns:
- The decoded
PrivateKey
- Throws:
IOException
- If failed to read from the data streamGeneralSecurityException
- If failed to generate the key
-
encodePrivateKey
public String encodePrivateKey(OutputStream s, DSAPrivateKey key) throws IOException
Description copied from interface:PrivateKeyEntryDecoder
- Parameters:
s
- TheOutputStream
to write the data tokey
- ThePrivateKey
- may not benull
- Returns:
- The key type value - one of the
KeyTypeNamesSupport.getSupportedKeyTypes()
ornull
if encoding not supported - Throws:
IOException
- If failed to generate the encoding
-
isPublicKeyRecoverySupported
public boolean isPublicKeyRecoverySupported()
-
recoverPublicKey
public DSAPublicKey recoverPublicKey(DSAPrivateKey privateKey) throws GeneralSecurityException
Description copied from interface:PrivateKeyEntryDecoder
Attempts to recover the public key given the private one- Parameters:
privateKey
- ThePrivateKey
- Returns:
- The recovered
PublicKey
-null
if cannot recover it - Throws:
GeneralSecurityException
- If failed to generate the public key
-
clonePublicKey
public DSAPublicKey clonePublicKey(DSAPublicKey key) throws GeneralSecurityException
- Parameters:
key
- ThePublicKey
to clone - ignored ifnull
- Returns:
- The cloned key (or
null
if no original key) - Throws:
GeneralSecurityException
- If failed to clone the key
-
clonePrivateKey
public DSAPrivateKey clonePrivateKey(DSAPrivateKey key) throws GeneralSecurityException
- Parameters:
key
- ThePrivateKey
to clone - ignored ifnull
- Returns:
- The cloned key (or
null
if no original key) - Throws:
GeneralSecurityException
- If failed to clone the key
-
getKeyPairGenerator
public KeyPairGenerator getKeyPairGenerator() throws GeneralSecurityException
- Returns:
- A
KeyPairGenerator
suitable for this decoder - Throws:
GeneralSecurityException
- If failed to create the generator
-
getKeyFactoryInstance
public KeyFactory getKeyFactoryInstance() throws GeneralSecurityException
- Returns:
- A
KeyFactory
suitable for the specific decoder type - Throws:
GeneralSecurityException
- If failed to create one
-
-