EC J-PAKE context structure.

J-PAKE is a symmetric protocol, except for the identifiers used in Zero-Knowledge Proofs, and the serialization of the second message (KeyExchange) as defined by the Thread spec.

In order to benefit from this symmetry, we choose a different naming convetion from the Thread v1.0 spec. Correspondance is indicated in the description as a pair C: client name, S: server name

Definition at line 63 of file ecjpake_alt.h.

#include <ecjpake_alt.h>

Data Fields

uint32_t curve_flags
mbedtls_ecjpake_role role
int point_format
char pwd [33]
size_t pwd_len
uint8_t r [32]
uint8_t Xm1 [64]
uint8_t Xm2 [64]
uint8_t Xp1 [64]
uint8_t Xp2 [64]
uint8_t Xp [64]

Field Documentation

uint32_t mbedtls_ecjpake_context::curve_flags

Curve flags to use

Definition at line 64 of file ecjpake_alt.h.

int mbedtls_ecjpake_context::point_format

Format for point export

Definition at line 66 of file ecjpake_alt.h.

char mbedtls_ecjpake_context::pwd[33]

J-PAKE password

Definition at line 68 of file ecjpake_alt.h.

size_t mbedtls_ecjpake_context::pwd_len

J-PAKE password length

Definition at line 69 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::r[32]

Random scalar for exchange

Definition at line 71 of file ecjpake_alt.h.

mbedtls_ecjpake_role mbedtls_ecjpake_context::role

Are we client or server?

Definition at line 65 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::Xm1[64]

Our point 1 (round 1)

Definition at line 72 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::Xm2[64]

Our point 2 (round 1)

Definition at line 73 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::Xp[64]

Their point (round 2)

Definition at line 76 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::Xp1[64]

Their point 1 (round 1)

Definition at line 74 of file ecjpake_alt.h.

uint8_t mbedtls_ecjpake_context::Xp2[64]

Their point 2 (round 1)

Definition at line 75 of file ecjpake_alt.h.

The documentation for this struct was generated from the following file:
  • ecjpake_alt.h