Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

gnu.javax.crypto.key.srp6
Class SRP6TLSClient  view SRP6TLSClient download SRP6TLSClient.java

java.lang.Object
  extended bygnu.javax.crypto.key.BaseKeyAgreementParty
      extended bygnu.javax.crypto.key.srp6.SRP6KeyAgreement
          extended bygnu.javax.crypto.key.srp6.SRP6TLSClient
All Implemented Interfaces:
gnu.javax.crypto.key.IKeyAgreementParty
Direct Known Subclasses:
SRP6SaslClient

public class SRP6TLSClient
extends SRP6KeyAgreement

A variation of the SRP6 key agreement protocol, for the client-side as proposed in Using SRP for TLS Authentication. The only difference between it and the SASL variant is that the shared secret is the entity S and not H(S).


Field Summary
private  java.lang.String I
          The user's identity.
private  byte[] p
          The user's cleartext password.
private  java.security.KeyPair userKeyPair
          The user's ephemeral key pair.
 
Fields inherited from class gnu.javax.crypto.key.srp6.SRP6KeyAgreement
g, GENERATOR, HASH_FUNCTION, HOST_PASSWORD_DB, K, N, SHARED_MODULUS, SOURCE_OF_RANDOMNESS, srp, THREE, USER_IDENTITY, USER_PASSWORD
 
Fields inherited from class gnu.javax.crypto.key.BaseKeyAgreementParty
complete, initialised, irnd, name, rnd, step, TWO
 
Constructor Summary
SRP6TLSClient()
           
 
Method Summary
protected  gnu.javax.crypto.key.OutgoingMessage computeSharedSecret(gnu.javax.crypto.key.IncomingMessage in)
           
protected  void engineInit(java.util.Map attributes)
           
protected  gnu.javax.crypto.key.OutgoingMessage engineProcessMessage(gnu.javax.crypto.key.IncomingMessage in)
           
protected  void engineReset()
           
private  gnu.javax.crypto.key.OutgoingMessage sendIdentity(gnu.javax.crypto.key.IncomingMessage in)
           
 
Methods inherited from class gnu.javax.crypto.key.srp6.SRP6KeyAgreement
engineSharedSecret, uValue
 
Methods inherited from class gnu.javax.crypto.key.BaseKeyAgreementParty
getSharedSecret, init, isComplete, name, nextRandomBytes, processMessage, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

I

private java.lang.String I
The user's identity.


p

private byte[] p
The user's cleartext password.


userKeyPair

private java.security.KeyPair userKeyPair
The user's ephemeral key pair.

Constructor Detail

SRP6TLSClient

public SRP6TLSClient()
Method Detail

engineInit

protected void engineInit(java.util.Map attributes)
                   throws gnu.javax.crypto.key.KeyAgreementException

engineProcessMessage

protected gnu.javax.crypto.key.OutgoingMessage engineProcessMessage(gnu.javax.crypto.key.IncomingMessage in)
                                                             throws gnu.javax.crypto.key.KeyAgreementException

engineReset

protected void engineReset()
Overrides:
engineReset in class SRP6KeyAgreement

sendIdentity

private gnu.javax.crypto.key.OutgoingMessage sendIdentity(gnu.javax.crypto.key.IncomingMessage in)
                                                   throws gnu.javax.crypto.key.KeyAgreementException

computeSharedSecret

protected gnu.javax.crypto.key.OutgoingMessage computeSharedSecret(gnu.javax.crypto.key.IncomingMessage in)
                                                            throws gnu.javax.crypto.key.KeyAgreementException