My Project
Loading...
Searching...
No Matches
srp.h
Go to the documentation of this file.
1
33int wc_SrpInit(Srp* srp, SrpType type, SrpSide side);
34
54void wc_SrpTerm(Srp* srp);
55
89int wc_SrpSetUsername(Srp* srp, const byte* username, word32 size);
90
136int wc_SrpSetParams(Srp* srp, const byte* N, word32 nSz,
137 const byte* g, word32 gSz,
138 const byte* salt, word32 saltSz);
139
187int wc_SrpSetPassword(Srp* srp, const byte* password, word32 size);
188
230int wc_SrpSetVerifier(Srp* srp, const byte* verifier, word32 size);
231
281int wc_SrpGetVerifier(Srp* srp, byte* verifier, word32* size);
282
331int wc_SrpSetPrivate(Srp* srp, const byte* priv, word32 size);
332
386int wc_SrpGetPublic(Srp* srp, byte* pub, word32* size);
387
437int wc_SrpComputeKey(Srp* srp,
438 byte* clientPubKey, word32 clientPubKeySz,
439 byte* serverPubKey, word32 serverPubKeySz);
440
471int wc_SrpGetProof(Srp* srp, byte* proof, word32* size);
472
507int 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.