public class OpenSSHECDSAPrivateKeyEntryDecoder extends AbstractPrivateKeyEntryDecoder<java.security.interfaces.ECPublicKey,java.security.interfaces.ECPrivateKey>
Modifier and Type | Field and Description |
---|---|
static OpenSSHECDSAPrivateKeyEntryDecoder |
INSTANCE |
log
MAX_BIGINT_OCTETS_COUNT
FAILING, IGNORING
Constructor and Description |
---|
OpenSSHECDSAPrivateKeyEntryDecoder() |
Modifier and Type | Method and Description |
---|---|
java.security.interfaces.ECPrivateKey |
clonePrivateKey(java.security.interfaces.ECPrivateKey key) |
java.security.interfaces.ECPublicKey |
clonePublicKey(java.security.interfaces.ECPublicKey key) |
java.security.interfaces.ECPrivateKey |
decodePrivateKey(SessionContext session,
java.lang.String keyType,
FilePasswordProvider passwordProvider,
java.io.InputStream keyData) |
java.lang.String |
encodePrivateKey(SecureByteArrayOutputStream s,
java.security.interfaces.ECPrivateKey key,
java.security.interfaces.ECPublicKey pubKey)
Encodes the
PrivateKey using the OpenSSH format - same one used by the decodePublicKey
method(s) |
java.security.KeyPair |
generateKeyPair(int keySize) |
java.security.KeyFactory |
getKeyFactoryInstance() |
java.security.KeyPairGenerator |
getKeyPairGenerator() |
java.security.interfaces.ECPublicKey |
recoverPublicKey(java.security.interfaces.ECPrivateKey prvKey)
Attempts to recover the public key given the private one
|
generatePrivateKey, generatePublicKey, toString
getPrivateKeyType, getPublicKeyType, getSupportedKeyTypes
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
decodePrivateKey, decodePrivateKey, decodePrivateKey, isPublicKeyRecoverySupported, resolve
cloneKeyPair, decodeBigInt, decodeInt, decodeInt, decodeInt, decodeString, decodeString, decodeString, decodeString, decodeString, decodeString, decodeString, encodeBigInt, encodeInt, encodeString, encodeString, encodeString, readRLEBytes, readRLEBytes, readRLEBytes, writeRLEBytes, writeRLEBytes
getPrivateKeyType, getPublicKeyType
findSupporterByKeyTypeName, getSupportedKeyTypes
public static final OpenSSHECDSAPrivateKeyEntryDecoder INSTANCE
public java.security.interfaces.ECPrivateKey decodePrivateKey(SessionContext session, java.lang.String keyType, FilePasswordProvider passwordProvider, java.io.InputStream keyData) throws java.io.IOException, java.security.GeneralSecurityException
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 reported / encode key typepasswordProvider
- The FilePasswordProvider
to use in case the data is encrypted - may be
null
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 typesPrivateKey
java.io.IOException
- If failed to read from the data streamjava.security.GeneralSecurityException
- If failed to generate the keypublic java.lang.String encodePrivateKey(SecureByteArrayOutputStream s, java.security.interfaces.ECPrivateKey key, java.security.interfaces.ECPublicKey pubKey) throws java.io.IOException
PrivateKeyEntryDecoder
PrivateKey
using the OpenSSH
format - same one used by the decodePublicKey
method(s)s
- The SecureByteArrayOutputStream
to write the data to.key
- The PrivateKey
- may not be null
pubKey
- The PublicKey
belonging to the private key - must be non-null
if
public key recovery
is not supportedKeyTypeNamesSupport.getSupportedKeyTypes()
or null
if encoding
not supportedjava.io.IOException
- If failed to generate the encodingpublic java.security.interfaces.ECPublicKey recoverPublicKey(java.security.interfaces.ECPrivateKey prvKey) throws java.security.GeneralSecurityException
PrivateKeyEntryDecoder
prvKey
- The PrivateKey
PublicKey
- null
if cannot recover itjava.security.GeneralSecurityException
- If failed to generate the public keypublic java.security.interfaces.ECPublicKey clonePublicKey(java.security.interfaces.ECPublicKey key) throws java.security.GeneralSecurityException
key
- The PublicKey
to clone - ignored if null
null
if no original key)java.security.GeneralSecurityException
- If failed to clone the keypublic java.security.interfaces.ECPrivateKey clonePrivateKey(java.security.interfaces.ECPrivateKey key) throws java.security.GeneralSecurityException
key
- The PrivateKey
to clone - ignored if null
null
if no original key)java.security.GeneralSecurityException
- If failed to clone the keypublic java.security.KeyFactory getKeyFactoryInstance() throws java.security.GeneralSecurityException
KeyFactory
suitable for the specific decoder typejava.security.GeneralSecurityException
- If failed to create onepublic java.security.KeyPair generateKeyPair(int keySize) throws java.security.GeneralSecurityException
keySize
- Key size in bitsKeyPair
with the specified key sizejava.security.GeneralSecurityException
- if unable to generate the pairpublic java.security.KeyPairGenerator getKeyPairGenerator() throws java.security.GeneralSecurityException
KeyPairGenerator
suitable for this decoderjava.security.GeneralSecurityException
- If failed to create the generator