Class semper.statement.StatementModule
All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class semper.statement.StatementModule

java.lang.Object
   |
   +----semper.statement.StatementModule

public class StatementModule
extends Object
implements StatementConstants, ComPointConstants, CryptoConstants
Implements the module performing keyexchange. Such a key exchange is used to provide a conventional session key
Version:
$Revision: 1.15 $ $Date: 1996/09/16 11:41:27 $
Author:
Jesper Drud Nielsen (drud@cryptomathic.aau.dk), Torben Pryds Pedersen (tpp@cryptomathic.aau.dk)
See Also:
StatementMan, StatementTransaction

Variable Index

 o MUTUAL
 o SIMPLE

Constructor Index

 o StatementModule()

Method Index

 o getDescr(int)
Returns a short textual description of the key exchange method given as parameter.
 o originatorExchangeKey(ComPointAddress, ComPoint, int, int, Vector, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo)
Performs the key exchange using the indicated method and stores it in the archive.
 o originatorMutual(ComPoint, int, Vector, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo)
Mutual random key exchange - originator side.
 o originatorSimple(ComPoint, int, Vector, CryptoKeyInfo, CryptoKeyInfo)
Simple key exchange - originator side.
 o responderExchangeKey(ComPointAddress, ComPoint, int, int, Vector, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo)
Performs the key exchange using the indicated method and stores it in the archive.
 o responderMutual(ComPoint, int, Vector, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo, CryptoKeyInfo)
Mutual random key exchange - responder side.
 o responderSimple(ComPoint, int, Vector, CryptoKeyInfo, CryptoKeyInfo)
Simple key exchange - responder side.
 o whichAlgs()
Returns a vector of integers describing the supported key exchange methods.

Variables

 o SIMPLE
  public final static int SIMPLE
 o MUTUAL
  public final static int MUTUAL

Constructors

 o StatementModule
  public StatementModule()

Methods

 o whichAlgs
  public static Vector whichAlgs()
Returns a vector of integers describing the supported key exchange methods. This list can for example be used for negotiation later on
Returns:
vector of Integer of suported methods
 o getDescr
  public static String getDescr(int method_id) throws StatementModuleException
Returns a short textual description of the key exchange method given as parameter. long description with pre/post-conditions etc follows here
Parameters:
method_id - identifies the mehtod for which a description is asked
Returns:
short description of the method
Throws: StatementModuleException
if method_id is not a supported method
 o originatorSimple
  public static CryptoKeyInfo originatorSimple(ComPoint com_point,
                                               int convAlg,
                                               Vector options,
                                               CryptoKeyInfo secKey,
                                               CryptoKeyInfo pubKey) throws StatementModuleException
Simple key exchange - originator side. The originator selects a key, signs it and encrypts under the public key of the responder. The responder can verify that it comes from the asumed originator. On the other hand the originator knows that only the assumed responder can recover the key.
Parameters:
peer_address - is the address of the peer
convAlg - is the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKey - is the secret key of the originator
pubKey - is the public key of the responder
Returns:
handle to the exchanged key (which in later versons is archived)
Throws: StatementModuleException
if the key exchange fails
See Also:
responderSimple
 o responderSimple
  public static CryptoKeyInfo responderSimple(ComPoint com_point,
                                              int convAlg,
                                              Vector options,
                                              CryptoKeyInfo secKey,
                                              CryptoKeyInfo pubKey) throws StatementModuleException
Simple key exchange - responder side. The originator selects a key, signs it and encrypts under the public key of the responder. The responder can verify that it comes from the asumed originator. On the other hand the originator knows that only the assumed responder can recover the key.
Parameters:
my_address - is the address of the peer
convAlg - is the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKey - is the secret key of the responder
pubKey - is the public key of the originator
Returns:
handle to the exchanged key (which in later versons is archived)
Throws: StatementModuleException
if the key exchange fails
See Also:
originatorSimple
 o originatorMutual
  public static CryptoKeyInfo originatorMutual(ComPoint com_point,
                                               int convAlg,
                                               Vector options,
                                               CryptoKeyInfo secKeyEnc,
                                               CryptoKeyInfo secKeySig,
                                               CryptoKeyInfo pubKeyEnc,
                                               CryptoKeyInfo pubKeySig) throws StatementModuleException
Mutual random key exchange - originator side. The originator commits to a random number (using a hash function) and signs it. The responder sends back a signed random number (of the form (r, h(r)), where r is the hash function encrypted under the originators public encrypton key. The originator finally sends back the its random number encrypted under the originators public key.selects a key, signs it and encrypts under the public key of the responder. Later versions should also give the key size/algorithm as input. and the chosen hash function. For the moment MD5 is used.
Parameters:
peer_address - is the address of the peer
convAlg - is the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKeyEnc - is the secret decryption key of the originator
secKeySig - is the secret signature key of the originator
pubKeyEnc - is the public encryption key of the responder
pubKeySig - is the public signature key of the responder
Returns:
handle to the exchanged key (which in later versions is archived)
Throws: StatementModuleException
f the key exchange fails
See Also:
responderSimple
 o responderMutual
  public static CryptoKeyInfo responderMutual(ComPoint com_point,
                                              int convAlg,
                                              Vector options,
                                              CryptoKeyInfo secKeyEnc,
                                              CryptoKeyInfo secKeySig,
                                              CryptoKeyInfo pubKeyEnc,
                                              CryptoKeyInfo pubKeySig) throws StatementModuleException
Mutual random key exchange - responder side. The originator commits to a random number (using a hash function) and signs it. The responder sends back a signed random number (of the form (r, h(r)), where r is the hash function encrypted under the originators public encrypton key. The originator finally sends back the its random number encrypted under the originators public key.selects a key, signs it and encrypts under the public key of the responder. Later versions should also give the key size/algorithm as input. and the chosen hash function. For the moment MD5 is used.
Parameters:
my_address - is my address
convAlg - is the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKeyEnc - is the secret decryption key of the originator
secKeySig - is the secret signature key of the originator
pubKeyEnc - is the public encryption key of the responder
pubKeySig - is the public signature key of the responder
Returns:
handle to the exchanged key (which in later versions is archived)
Throws: StatementModuleException
if the key exchange fails
See Also:
originatorSimple
 o originatorExchangeKey
  public static CryptoKeyInfo originatorExchangeKey(ComPointAddress serverAddress,
                                                    ComPoint com_point,
                                                    int method_id,
                                                    int convAlg,
                                                    Vector options,
                                                    CryptoKeyInfo secKeyEnc,
                                                    CryptoKeyInfo secKeySig,
                                                    CryptoKeyInfo pubKeyEnc,
                                                    CryptoKeyInfo pubKeySig) throws StatementModuleException
Performs the key exchange using the indicated method and stores it in the archive. Originator side.
Parameters:
peer_address - is the address of the peer
method_id - identifies the key exchange method
convAlg - describes the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKeyEnc - is the secret decryption key of the originator
secKeySig - is the secret signature key of the originator
pubKeyEnc - is the public encryption key of the responder
pubKeySig - is the public signature key of the responder
Returns:
handle to the exchanged key (which in later versions is archived)
Throws: StatementModuleException
if the key exchange fails
See Also:
responderExchangeKey
 o responderExchangeKey
  public static CryptoKeyInfo responderExchangeKey(ComPointAddress my_address,
                                                   ComPoint com_point,
                                                   int method_id,
                                                   int convAlg,
                                                   Vector options,
                                                   CryptoKeyInfo secKeyEnc,
                                                   CryptoKeyInfo secKeySig,
                                                   CryptoKeyInfo pubKeyEnc,
                                                   CryptoKeyInfo pubKeySig) throws StatementModuleException
Performs the key exchange using the indicated method and stores it in the archive. Server side.
Parameters:
my_address - is the address of the responder (not used in this module)
servicePoint - is the service point on which the server expects a communication request
method_id - identifies the key exchange method
convAlg - describes the conventional algorithm for which a key is needed
options - gives security options of the communication channel
secKeyEnc - is the secret decryption key of the responder
secKeySig - is the secret signature key of the responder
pubKeyEnc - is the public encryption key of the originator
pubKeySig - is the public signature key of the originator
Returns:
handle to the exchanged key (which in later versions is archived)
Throws: StatementModuleException
if the key exchange fails
See Also:
originatorExchangeKey

All Packages  Class Hierarchy  This Package  Previous  Next  Index