Class ECDSAPublicKeyEntryDecoder
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.AbstractPublicKeyEntryDecoder<ECPublicKey,ECPrivateKey>
org.apache.sshd.common.config.keys.impl.ECDSAPublicKeyEntryDecoder
- All Implemented Interfaces:
IdentityResourceLoader<ECPublicKey,
,ECPrivateKey> KeyEntryResolver<ECPublicKey,
,ECPrivateKey> KeyTypeNamesSupport
,PublicKeyEntryDecoder<ECPublicKey,
,ECPrivateKey> PublicKeyEntryResolver
,PublicKeyRawDataDecoder<ECPublicKey>
public class ECDSAPublicKeyEntryDecoder
extends AbstractPublicKeyEntryDecoder<ECPublicKey,ECPrivateKey>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final byte
static final byte
static final byte
static final ECDSAPublicKeyEntryDecoder
static final int
static final int
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.PublicKeyEntryResolver
FAILING, IGNORING
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) ECPublicKey
decodePublicKey
(ECCurves curve, InputStream keyData) decodePublicKey
(SessionContext session, String keyType, InputStream keyData, Map<String, String> headers) (package private) static void
encodePublicKey
(OutputStream s, String keyType, ECCurves curve, ECPoint w) encodePublicKey
(OutputStream s, ECPublicKey key) generateKeyPair
(int keySize) Methods inherited from class org.apache.sshd.common.config.keys.impl.AbstractPublicKeyEntryDecoder
parseBooleanHeader
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
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
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
Methods inherited from interface org.apache.sshd.common.config.keys.KeyTypeNamesSupport
getSupportedKeyTypes
Methods inherited from interface org.apache.sshd.common.config.keys.PublicKeyEntryDecoder
decodePublicKeyByType, resolve
Methods inherited from interface org.apache.sshd.common.config.keys.PublicKeyRawDataDecoder
decodePublicKey, decodePublicKey
-
Field Details
-
MAX_ALLOWED_POINT_SIZE
public static final int MAX_ALLOWED_POINT_SIZE- See Also:
-
MAX_CURVE_NAME_LENGTH
public static final int MAX_CURVE_NAME_LENGTH- See Also:
-
INSTANCE
-
ECPOINT_UNCOMPRESSED_FORM_INDICATOR
public static final byte ECPOINT_UNCOMPRESSED_FORM_INDICATOR- See Also:
-
ECPOINT_COMPRESSED_VARIANT_2
public static final byte ECPOINT_COMPRESSED_VARIANT_2- See Also:
-
ECPOINT_COMPRESSED_VARIANT_3
public static final byte ECPOINT_COMPRESSED_VARIANT_3- See Also:
-
-
Constructor Details
-
ECDSAPublicKeyEntryDecoder
public ECDSAPublicKeyEntryDecoder()
-
-
Method Details
-
decodePublicKey
public ECPublicKey decodePublicKey(SessionContext session, String keyType, InputStream keyData, Map<String, String> headers) throws IOException, GeneralSecurityException- Parameters:
session
- TheSessionContext
for invoking this command - may benull
if not invoked within a session context (e.g., offline tool or session unknown).keyType
- The reported / encode key typekeyData
- The key data bytes stream positioned after the key type decoding and making sure it is one of the supported typesheaders
- Any headers that may have been available when data was read- Returns:
- The decoded
PublicKey
- Throws:
IOException
- If failed to read from the data streamGeneralSecurityException
- If failed to generate the key
-
decodePublicKey
ECPublicKey decodePublicKey(ECCurves curve, InputStream keyData) throws IOException, GeneralSecurityException - Throws:
IOException
GeneralSecurityException
-
clonePublicKey
- 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
- 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
-
encodePublicKey
Description copied from interface:PublicKeyEntryDecoder
- Parameters:
s
- TheOutputStream
to write the data tokey
- ThePublicKey
- may not benull
- Returns:
- The key type value - one of the
KeyTypeNamesSupport.getSupportedKeyTypes()
- Throws:
IOException
- If failed to generate the encoding
-
encodePublicKey
static void encodePublicKey(OutputStream s, String keyType, ECCurves curve, ECPoint w) throws IOException - Throws:
IOException
-
getKeyFactoryInstance
- Returns:
- A
KeyFactory
suitable for the specific decoder type - Throws:
GeneralSecurityException
- If failed to create one
-
generateKeyPair
- Parameters:
keySize
- Key size in bits- Returns:
- A
KeyPair
with the specified key size - Throws:
GeneralSecurityException
- if unable to generate the pair
-
getKeyPairGenerator
- Returns:
- A
KeyPairGenerator
suitable for this decoder - Throws:
GeneralSecurityException
- If failed to create the generator
-