PUB
- Type of PublicKey
PRV
- Type of PrivateKey
public interface PublicKeyEntryDecoder<PUB extends java.security.PublicKey,PRV extends java.security.PrivateKey> extends KeyEntryResolver<PUB,PRV>, PublicKeyEntryResolver
OpenSSH
encoded key dataMAX_BIGINT_OCTETS_COUNT
FAILING, IGNORING
Modifier and Type | Method and Description |
---|---|
default PUB |
decodePublicKey(SessionContext session,
java.lang.String keyType,
byte... keyData) |
default PUB |
decodePublicKey(SessionContext session,
java.lang.String keyType,
byte[] keyData,
int offset,
int length) |
PUB |
decodePublicKey(SessionContext session,
java.lang.String keyType,
java.io.InputStream keyData) |
default PUB |
decodePublicKeyByType(SessionContext session,
java.lang.String keyType,
java.io.InputStream keyData) |
java.lang.String |
encodePublicKey(java.io.OutputStream s,
PUB key)
Encodes the
PublicKey using the OpenSSH format - same
one used by the decodePublicKey method(s) |
default java.security.PublicKey |
resolve(SessionContext session,
java.lang.String keyType,
byte[] keyData) |
cloneKeyPair, clonePrivateKey, clonePublicKey, decodeBigInt, decodeInt, decodeString, decodeString, decodeString, encodeBigInt, encodeInt, encodeString, encodeString, encodeString, generateKeyPair, getKeyFactoryInstance, getKeyPairGenerator, readRLEBytes, writeRLEBytes, writeRLEBytes
getPrivateKeyType, getPublicKeyType
findSupporterByKeyTypeName, getSupportedKeyTypes
default java.security.PublicKey resolve(SessionContext session, java.lang.String keyType, byte[] keyData) throws java.io.IOException, java.security.GeneralSecurityException
resolve
in interface PublicKeyEntryResolver
session
- The SessionContext
for invoking this load command - may
be null
if not invoked within a session context (e.g., offline tool or session unknown).keyType
- The OpenSSH
reported key typekeyData
- The OpenSSH
encoded key dataPublicKey
- ignored if null
java.io.IOException
- If failed to parse the key datajava.security.GeneralSecurityException
- If failed to generate the keydefault PUB decodePublicKey(SessionContext session, java.lang.String keyType, byte... keyData) throws java.io.IOException, java.security.GeneralSecurityException
session
- The SessionContext
for invoking this command - may
be null
if not invoked within a session context (e.g., offline tool or session unknown).keyType
- The OpenSSH
reported key typekeyData
- The key data bytes in OpenSSH
format (after BASE64
decoding) - ignored if null
/emptyPublicKey
- or null
if no datajava.io.IOException
- If failed to decode the keyjava.security.GeneralSecurityException
- If failed to generate the keydefault PUB decodePublicKey(SessionContext session, java.lang.String keyType, byte[] keyData, int offset, int length) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOException
java.security.GeneralSecurityException
default PUB decodePublicKeyByType(SessionContext session, java.lang.String keyType, java.io.InputStream keyData) throws java.io.IOException, java.security.GeneralSecurityException
java.io.IOException
java.security.GeneralSecurityException
PUB decodePublicKey(SessionContext session, java.lang.String keyType, java.io.InputStream keyData) throws java.io.IOException, java.security.GeneralSecurityException
session
- The SessionContext
for invoking this command - may
be null
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 typesPublicKey
java.io.IOException
- If failed to read from the data streamjava.security.GeneralSecurityException
- If failed to generate the keyjava.lang.String encodePublicKey(java.io.OutputStream s, PUB key) throws java.io.IOException
PublicKey
using the OpenSSH
format - same
one used by the decodePublicKey
method(s)s
- The OutputStream
to write the data tokey
- The PublicKey
- may not be null
KeyTypeNamesSupport.getSupportedKeyTypes()
java.io.IOException
- If failed to generate the encoding