public class SimulatedTlsSRPIdentityManager extends java.lang.Object implements TlsSRPIdentityManager
TlsSRPIdentityManager that simulates the existence of "unknown" identities
to obscure the fact that there is no verifier for them.| Modifier and Type | Field and Description |
|---|---|
protected SRP6GroupParameters |
group |
protected Mac |
mac |
protected SRP6VerifierGenerator |
verifierGenerator |
| Constructor and Description |
|---|
SimulatedTlsSRPIdentityManager(SRP6GroupParameters group,
SRP6VerifierGenerator verifierGenerator,
Mac mac) |
| Modifier and Type | Method and Description |
|---|---|
TlsSRPLoginParameters |
getLoginParameters(byte[] identity)
Lookup the
TlsSRPLoginParameters corresponding to the specified identity. |
static SimulatedTlsSRPIdentityManager |
getRFC5054Default(SRP6GroupParameters group,
byte[] seedKey)
Create a
SimulatedTlsSRPIdentityManager that implements the algorithm from RFC 5054 2.5.1.3 |
protected SRP6GroupParameters group
protected SRP6VerifierGenerator verifierGenerator
protected Mac mac
public SimulatedTlsSRPIdentityManager(SRP6GroupParameters group, SRP6VerifierGenerator verifierGenerator, Mac mac)
public static SimulatedTlsSRPIdentityManager getRFC5054Default(SRP6GroupParameters group, byte[] seedKey)
SimulatedTlsSRPIdentityManager that implements the algorithm from RFC 5054 2.5.1.3group - the SRP6GroupParameters defining the group that SRP is operating inseedKey - the secret "seed key" referred to in RFC 5054 2.5.1.3SimulatedTlsSRPIdentityManagerpublic TlsSRPLoginParameters getLoginParameters(byte[] identity)
TlsSRPIdentityManagerTlsSRPLoginParameters 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.getLoginParameters in interface TlsSRPIdentityManageridentity - the SRP identity sent by the connecting clientTlsSRPLoginParameters for the specified identity, or else 'simulated'
parameters if the identity is not recognized. A null value is also allowed, but not
recommended.