Secure iNet Factory

com.jscape.inet.ssh.transport
Class AlgorithmFactory

java.lang.Object
  extended by com.jscape.inet.ssh.transport.AlgorithmFactory

public class AlgorithmFactory
extends java.lang.Object

Author:
Alex Usun

Nested Class Summary
 class AlgorithmFactory.CipherEntry
           
 class AlgorithmFactory.MacEntry
           
 
Constructor Summary
AlgorithmFactory()
           
AlgorithmFactory(java.lang.String provider)
           
AlgorithmFactory(java.lang.String sshCipherName, java.lang.String javaCipherName, int keyLength)
          Initialize Algorithm Factory with a particular cipher.
 
Method Summary
 void addCipher(java.lang.String sshCipherName, java.lang.String javaCipherName, int keyLength)
           
 void addCompression(java.lang.String sshComressionName, java.lang.Class compressionClass)
           
 void addKeyExchange(java.lang.String sshKexName, java.lang.Class kexClass)
           
 void addKeyFormat(java.lang.String sshFormatName, java.lang.Class formatClass)
           
 void addLanguage(java.lang.String lang)
           
 void addMac(java.lang.String sshMacName, java.lang.String javaMacName, int keyLength)
           
 void addSshKeyFormat(java.lang.String javaAlgorithm, java.lang.String sshFormatName)
           
 boolean containsCipher(java.lang.String sshCipherName)
           
 boolean containsCompression(java.lang.String sshCompressionName)
           
 boolean containsKeyExchange(java.lang.String sshKexName)
           
 boolean containsKeyFormat(java.lang.String sshFormatName)
           
 boolean containsLanguage(java.lang.String lang)
           
 boolean containsMac(java.lang.String sshMacName)
           
 boolean containsSshKeyFormat(java.lang.String javaAlgorithm)
           
 SshNameList getAllCiphers()
           
 SshNameList getAllCompressions()
           
 SshNameList getAllKeyExchanges()
           
 SshNameList getAllKeyFormats()
           
 SshNameList getAllLanguages()
           
 SshNameList getAllMacs()
           
 javax.crypto.Cipher getCipher(java.lang.String sshCipherName, byte[] keyData, byte[] ivData, int opmode)
           
 int getCipherBlockLength(java.lang.String sshCipherName)
           
 int getCipherKeyLength(java.lang.String sshCipherName)
           
 Compression getCompression(java.lang.String sshCompressionName, int opmode)
           
 KeyExchange getKeyExchange(java.lang.String sshKexName, Transport transport)
           
 KeyFormat getKeyFormat(java.lang.String sshFormatName)
           
 javax.crypto.Mac getMac(java.lang.String sshMacName, byte[] keyData)
           
 int getMacKeyLength(java.lang.String sshMacName)
           
 java.lang.String getPrefferedCipher()
           
 java.lang.String getPrefferedCompression()
           
 java.lang.String getPrefferedFormat()
           
 java.lang.String getPrefferedKeyExchange()
           
 java.lang.String getPrefferedLanguage()
           
 java.lang.String getPrefferedMac()
           
 java.lang.String getProvider()
           
 KeyFormat getSshKeyFormat(java.lang.String javaAlgorithm)
           
 void removeCipher(java.lang.String sshCipherName)
           
 void removeCompression(java.lang.String sshCompressionName)
           
 void removeKeyExchange(java.lang.String sshKexName)
           
 void removeKeyFormat(java.lang.String sshFormatName)
           
 void removeLanguage(java.lang.String lang)
           
 void removeMac(java.lang.String sshMacName)
           
 void removeSshKeyFormat(java.lang.String javaAlgorithm)
           
 void setPrefferedCipher(java.lang.String sshCipherName)
           
 void setPrefferedCompression(java.lang.String sshCompressionName)
           
 void setPrefferedKeyExchange(java.lang.String sshKexName)
           
 void setPrefferedKeyFormat(java.lang.String sshFormatName)
           
 void setPrefferedLanguage(java.lang.String lang)
           
 void setPrefferedMac(java.lang.String sshMacName)
           
 void setProvider(java.lang.String provider)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AlgorithmFactory

public AlgorithmFactory(java.lang.String provider)

AlgorithmFactory

public AlgorithmFactory()

AlgorithmFactory

public AlgorithmFactory(java.lang.String sshCipherName,
                        java.lang.String javaCipherName,
                        int keyLength)
Initialize Algorithm Factory with a particular cipher.

Parameters:
sshCipherName -
javaCipherName -
keyLength -
Method Detail

addCipher

public void addCipher(java.lang.String sshCipherName,
                      java.lang.String javaCipherName,
                      int keyLength)
Parameters:
sshCipherName -
javaCipherName -
keyLength -

getProvider

public java.lang.String getProvider()

setProvider

public void setProvider(java.lang.String provider)

addCompression

public void addCompression(java.lang.String sshComressionName,
                           java.lang.Class compressionClass)
Parameters:
sshComressionName -
compressionClass -

removeCompression

public void removeCompression(java.lang.String sshCompressionName)
Parameters:
sshCompressionName -

containsCompression

public boolean containsCompression(java.lang.String sshCompressionName)
Parameters:
sshCompressionName -
Returns:
contains compression

getCompression

public Compression getCompression(java.lang.String sshCompressionName,
                                  int opmode)
                           throws TransportException
Parameters:
sshCompressionName -
Returns:
Compression
Throws:
TransportException

getPrefferedCompression

public java.lang.String getPrefferedCompression()
Returns:
compression String representation

setPrefferedCompression

public void setPrefferedCompression(java.lang.String sshCompressionName)
Parameters:
sshCompressionName -

getAllCompressions

public SshNameList getAllCompressions()
Returns:
SshNameList instance

addMac

public void addMac(java.lang.String sshMacName,
                   java.lang.String javaMacName,
                   int keyLength)
Parameters:
sshMacName -
javaMacName -
keyLength -

removeMac

public void removeMac(java.lang.String sshMacName)
Parameters:
sshMacName -

containsMac

public boolean containsMac(java.lang.String sshMacName)
Parameters:
sshMacName -
Returns:
contiains MAC

getMac

public javax.crypto.Mac getMac(java.lang.String sshMacName,
                               byte[] keyData)
                        throws TransportException
Parameters:
sshMacName -
Returns:
Mac instance
Throws:
TransportException

getMacKeyLength

public int getMacKeyLength(java.lang.String sshMacName)
Parameters:
sshMacName -
Returns:
Mac key length

getPrefferedMac

public java.lang.String getPrefferedMac()
Returns:
preferred Mac String representation

setPrefferedMac

public void setPrefferedMac(java.lang.String sshMacName)
Parameters:
sshMacName -

getAllMacs

public SshNameList getAllMacs()
Returns:
SshNameList instance

removeCipher

public void removeCipher(java.lang.String sshCipherName)
Parameters:
sshCipherName -

containsCipher

public boolean containsCipher(java.lang.String sshCipherName)
Parameters:
sshCipherName -
Returns:
contains cipher

getCipher

public javax.crypto.Cipher getCipher(java.lang.String sshCipherName,
                                     byte[] keyData,
                                     byte[] ivData,
                                     int opmode)
                              throws TransportException
Parameters:
sshCipherName -
Returns:
cipher
Throws:
TransportException

getCipherKeyLength

public int getCipherKeyLength(java.lang.String sshCipherName)
Parameters:
sshCipherName -
Returns:
cipher key length

getCipherBlockLength

public int getCipherBlockLength(java.lang.String sshCipherName)
Parameters:
sshCipherName -
Returns:
cipher block length

getPrefferedCipher

public java.lang.String getPrefferedCipher()
Returns:
preferred cipher

setPrefferedCipher

public void setPrefferedCipher(java.lang.String sshCipherName)
Parameters:
sshCipherName -

getAllCiphers

public SshNameList getAllCiphers()
Returns:
SshNameList instance

addKeyExchange

public void addKeyExchange(java.lang.String sshKexName,
                           java.lang.Class kexClass)
Parameters:
sshKexName -
kexClass -

removeKeyExchange

public void removeKeyExchange(java.lang.String sshKexName)
Parameters:
sshKexName -

containsKeyExchange

public boolean containsKeyExchange(java.lang.String sshKexName)
Parameters:
sshKexName -
Returns:
contains key exchange

getKeyExchange

public KeyExchange getKeyExchange(java.lang.String sshKexName,
                                  Transport transport)
                           throws TransportException
Parameters:
sshKexName -
Returns:
KeyExchange instance
Throws:
TransportException

getPrefferedKeyExchange

public java.lang.String getPrefferedKeyExchange()
Returns:
String

setPrefferedKeyExchange

public void setPrefferedKeyExchange(java.lang.String sshKexName)
Parameters:
sshKexName -

getAllKeyExchanges

public SshNameList getAllKeyExchanges()
Returns:
SshNameList instance

addKeyFormat

public void addKeyFormat(java.lang.String sshFormatName,
                         java.lang.Class formatClass)
Parameters:
sshFormatName -
formatClass -

removeKeyFormat

public void removeKeyFormat(java.lang.String sshFormatName)
Parameters:
sshFormatName -

containsKeyFormat

public boolean containsKeyFormat(java.lang.String sshFormatName)
Parameters:
sshFormatName -
Returns:
contains key format

getKeyFormat

public KeyFormat getKeyFormat(java.lang.String sshFormatName)
                       throws TransportException
Parameters:
sshFormatName -
Returns:
key format
Throws:
TransportException

setPrefferedKeyFormat

public void setPrefferedKeyFormat(java.lang.String sshFormatName)
Parameters:
sshFormatName -

getPrefferedFormat

public java.lang.String getPrefferedFormat()
Returns:
preferred format

getAllKeyFormats

public SshNameList getAllKeyFormats()
Returns:
all formats

addLanguage

public void addLanguage(java.lang.String lang)
Parameters:
lang -

removeLanguage

public void removeLanguage(java.lang.String lang)
Parameters:
lang -

containsLanguage

public boolean containsLanguage(java.lang.String lang)
Parameters:
lang -
Returns:
contians language

getPrefferedLanguage

public java.lang.String getPrefferedLanguage()
Returns:
preferred language

setPrefferedLanguage

public void setPrefferedLanguage(java.lang.String lang)
Parameters:
lang -

getAllLanguages

public SshNameList getAllLanguages()
Returns:
SshNameList instance

addSshKeyFormat

public void addSshKeyFormat(java.lang.String javaAlgorithm,
                            java.lang.String sshFormatName)
Parameters:
javaAlgorithm -
sshFormatName -

removeSshKeyFormat

public void removeSshKeyFormat(java.lang.String javaAlgorithm)
Parameters:
javaAlgorithm -

containsSshKeyFormat

public boolean containsSshKeyFormat(java.lang.String javaAlgorithm)
Parameters:
javaAlgorithm -
Returns:
contains ssh key format

getSshKeyFormat

public KeyFormat getSshKeyFormat(java.lang.String javaAlgorithm)
                          throws TransportException
Parameters:
javaAlgorithm -
Returns:
ssh key format
Throws:
TransportException

Secure iNet Factory

Copyright © JSCAPE LLC. 1999-2011. All Rights Reserved