My Project
srp.h
Go to the documentation of this file.
1 
33 int wc_SrpInit(Srp* srp, SrpType type, SrpSide side);
34 
54 void wc_SrpTerm(Srp* srp);
55 
89 int wc_SrpSetUsername(Srp* srp, const byte* username, word32 size);
90 
136 int wc_SrpSetParams(Srp* srp, const byte* N, word32 nSz,
137  const byte* g, word32 gSz,
138  const byte* salt, word32 saltSz);
139 
187 int wc_SrpSetPassword(Srp* srp, const byte* password, word32 size);
188 
230 int wc_SrpSetVerifier(Srp* srp, const byte* verifier, word32 size);
231 
281 int wc_SrpGetVerifier(Srp* srp, byte* verifier, word32* size);
282 
331 int wc_SrpSetPrivate(Srp* srp, const byte* priv, word32 size);
332 
386 int wc_SrpGetPublic(Srp* srp, byte* pub, word32* size);
387 
437 int wc_SrpComputeKey(Srp* srp,
438  byte* clientPubKey, word32 clientPubKeySz,
439  byte* serverPubKey, word32 serverPubKeySz);
440 
471 int wc_SrpGetProof(Srp* srp, byte* proof, word32* size);
472 
507 int wc_SrpVerifyPeersProof(Srp* srp, byte* proof, word32 size);
int wc_SrpComputeKey(Srp *srp, byte *clientPubKey, word32 clientPubKeySz, byte *serverPubKey, word32 serverPubKeySz)
Computes the session key. The key can be accessed at srp->key after success.
int wc_SrpSetParams(Srp *srp, const byte *N, word32 nSz, const byte *g, word32 gSz, const byte *salt, word32 saltSz)
Sets the srp parameters based on the username.. Must be called after wc_SrpSetUsername.
int wc_SrpGetVerifier(Srp *srp, byte *verifier, word32 *size)
Gets the verifier. The client calculates the verifier with v = g ^ x % N. This function MAY be called...
int wc_SrpSetPrivate(Srp *srp, const byte *priv, word32 size)
Sets the private ephemeral value. The private ephemeral value is known as: a at the client side....
int wc_SrpGetPublic(Srp *srp, byte *pub, word32 *size)
Gets the public ephemeral value. The public ephemeral value is known as: A at the client side....
int wc_SrpVerifyPeersProof(Srp *srp, byte *proof, word32 size)
Verifies the peers proof. This function MUST be called before wc_SrpGetSessionKey.
int wc_SrpSetVerifier(Srp *srp, const byte *verifier, word32 size)
Sets the verifier. This function MUST be called after wc_SrpSetParams and is SERVER SIDE ONLY.
void wc_SrpTerm(Srp *srp)
Releases the Srp struct resources after usage.
int wc_SrpSetUsername(Srp *srp, const byte *username, word32 size)
Sets the username. This function MUST be called after wc_SrpInit.
int wc_SrpSetPassword(Srp *srp, const byte *password, word32 size)
Sets the password. Setting the password does not persists the clear password data in the srp structur...
int wc_SrpGetProof(Srp *srp, byte *proof, word32 *size)
Gets the proof. This function MUST be called after wc_SrpComputeKey.
int wc_SrpInit(Srp *srp, SrpType type, SrpSide side)
Initializes the Srp struct for usage.