Package de.bsvrz.sys.funclib.srp6
package de.bsvrz.sys.funclib.srp6
Secure Remote Password (SRP-6a) protocol implementation.
Features:
- Convenient client and server-side session classes, with tracking of the current authentication state.
- Convenient verifier 'v' generator.
- Allows selection of preferred 'N' and 'g' crypto parameters, hash function 'H' and session timeouts.
- Includes a set of pre-computed safe primes 'N' of various bitsizes (256-bit, 512-bit, etc.)
- Interfaces to allow definition of custom routines for the password key 'x', the server evidence message 'M1' and the client evidence message 'M2'.
- No external package dependencies.
The routines for computing the various SRP-6a variables and messages are
described in SRP6Routines
.
This product uses the 'Secure Remote Password' cryptographic authentication system developed by Tom Wu (tjw@CS.Stanford.EDU).
-
ClassDescriptionHexadecimal encoding and decoding utility.Custom routine interface for computing the client evidence message 'M1'.Custom routine interface for computing the server evidence message 'M2'.The SRP-6a client credentials sent to the server at
step two
.Immutable snapshot of the SRP-6a client session variables to be used in aClientEvidenceRoutine
.Stateful client-side Secure Remote Password (SRP-6a) authentication session.Enumerates the states of a client-side SRP-6a authentication session.The crypto parameters for the SRP-6a protocol.Secure Remote Password (SRP-6a) exception.SRP-6a exception causes.Secure Remote Password (SRP-6a) routines for computing the various protocol variables and messages.Immutable snapshot of SRP-6a server session variables to be used in aServerEvidenceRoutine
.Stateful server-side Secure Remote Password (SRP-6a) authentication session.Enumerates the states of a server-side SRP-6a authentication session.The base abstract class for client and server-side Secure Remote Password (SRP-6a) authentication sessions.Generator of password verifier 'v' values.Custom routine interface for computing 'u' as 'H(A | B)'.Immutable snapshot of the SRP-6a client session variables to be used in aURoutine
.Custom routine interface for computing the password key 'x'.Alternative routine for computing a password key x = H(s | H(I | ":" | P))