Top Description Fields Constructors Methods
org.bouncycastle.tls

public Class SimulatedTlsSRPIdentityManager

extends Object
implements TlsSRPIdentityManager
Class Inheritance
All Implemented Interfaces
org.bouncycastle.tls.TlsSRPIdentityManager
Imports
java.io.IOException, java.math.BigInteger, org.bouncycastle.tls.crypto.SRP6Group, .TlsCrypto, .TlsMAC, .TlsSRP6VerifierGenerator, .TlsSRPConfig, org.bouncycastle.util.Strings

An implementation of TlsSRPIdentityManager that simulates the existence of "unknown" identities to obscure the fact that there is no verifier for them.

Field Summary

Modifier and TypeField and Description
protected SRP6Group
protected TlsMAC
private static final byte[]
private static final byte[]
protected TlsSRP6VerifierGenerator

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public TlsSRPLoginParameters
getLoginParameters(byte[]
the SRP identity sent by the connecting client
identity
)

Implements org.bouncycastle.tls.TlsSRPIdentityManager.getLoginParameters.

Lookup the TlsSRPLoginParameters corresponding to the specified identity.
public static SimulatedTlsSRPIdentityManager

Returns:

an instance of SimulatedTlsSRPIdentityManager
getRFC5054Default
(TlsCrypto crypto, SRP6Group
the SRP6Group defining the group that SRP is operating in
group
,
byte[]
the secret "seed key" referred to in RFC 5054 2.5.1.3
seedKey
)

Create a SimulatedTlsSRPIdentityManager that implements the algorithm from RFC 5054 2.5.1.3

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

groupback to summary
protected SRP6Group group
macback to summary
protected TlsMAC mac
PREFIX_PASSWORDback to summary
private static final byte[] PREFIX_PASSWORD
PREFIX_SALTback to summary
private static final byte[] PREFIX_SALT
verifierGeneratorback to summary
protected TlsSRP6VerifierGenerator verifierGenerator

Constructor Detail

SimulatedTlsSRPIdentityManagerback to summary
public SimulatedTlsSRPIdentityManager(SRP6Group group, TlsSRP6VerifierGenerator verifierGenerator, TlsMAC mac)

Method Detail

getLoginParametersback to summary
public TlsSRPLoginParameters getLoginParameters(byte[] identity)

Implements org.bouncycastle.tls.TlsSRPIdentityManager.getLoginParameters.

Doc from org.bouncycastle.tls.TlsSRPIdentityManager.getLoginParameters.

Lookup the TlsSRPLoginParameters corresponding to the specified identity.

Note

To avoid "identity probing", unknown identities SHOULD be handled as recommended in RFC 5054 2.5.1.3. SimulatedTlsSRPIdentityManager is provided for this purpose.

Parameters
identity:byte[]

the SRP identity sent by the connecting client

Returns:TlsSRPLoginParameters

the TlsSRPLoginParameters for the specified identity, or else 'simulated' parameters if the identity is not recognized. A null value is also allowed, but not recommended.

getRFC5054Defaultback to summary
public static SimulatedTlsSRPIdentityManager getRFC5054Default(TlsCrypto crypto, SRP6Group group, byte[] seedKey) throws IOException

Create a SimulatedTlsSRPIdentityManager that implements the algorithm from RFC 5054 2.5.1.3

Parameters
group:SRP6Group

the SRP6Group defining the group that SRP is operating in

seedKey:byte[]

the secret "seed key" referred to in RFC 5054 2.5.1.3

Returns:SimulatedTlsSRPIdentityManager

an instance of SimulatedTlsSRPIdentityManager