Package com.github.glusk.srp6_variables
A collection of SRP-6 Variables that can be used to implement
the SRP-6 protocol.
Here is a full list:
N A large safe prime (N = 2q+1, where q is prime)
All arithmetic is done modulo N.
g A generator modulo N
k Multiplier parameter (k = H(N, g) in SRP-6a, k = 3 for legacy SRP-6)
s User's salt
u Random scrambling parameter
a,b Ephemeral private keys, generated randomly and not publicly revealed
A,B Corresponding public keys
x Private key derived from the password and salt
v Password verifier
---
M1,M2 Proofs of session key
S Shared secret (also "premaster secret")
K Session key
We can roughly divide the variables into 2 groups:
SRP6IntegerVariables- plain
Bytes
-
Interface Summary Interface Description SRP6IntegerVariable An SRP-6 Integer Variable. -
Class Summary Class Description SRP6ClientPublicKey SRP-6 Client Public Key (A).SRP6ClientSessionProof SRP-6 Client Session Proof (M1).SRP6ClientSharedSecret SRP-6 Client Shared Secret (S).SRP6CustomIntegerVariable A Custom SRP-6 Integer Variable.SRP6Multiplier SRP-6 Multiplier Parameter (k).SRP6PrivateKey SRP-6 Private Key (x).SRP6RandomEphemeral SRP-6 Random Ephemeral (a, b).SRP6ScramblingParameter SRP-6 Random Scrambling Parameter (u).SRP6ServerPublicKey SRP-6 Server Public Key (B).SRP6ServerSessionProof SRP-6 Server Session Proof (M2).SRP6ServerSharedSecret SRP-6 Server Shared Secret (S).SRP6SessionKey SRP-6 Session Key (K).SRP6Verifier SRP-6 Verifier (v). -
Exception Summary Exception Description SRP6Exception An SRP-6 Exception.SRP6PaddingException An SRP-6 Padding Exception.SRP6SecurityException An SRP-6 Security Exception.