mbedtls_ecjpake_context Struct Reference

EC J-PAKE context structure. More...

`#include <ecjpake.h>`

Collaboration diagram for mbedtls_ecjpake_context:
[legend]

## Data Fields

const mbedtls_md_info_t * | md_info
| Hash to use. More...
mbedtls_ecp_group | grp
| Elliptic curve. More...
mbedtls_ecjpake_role | role
| Are we client or server? More...
int | point_format
| Format for point export. More...
mbedtls_ecp_point | Xm1
| My public key 1 C: X1, S: X3. More...
mbedtls_ecp_point | Xm2
| My public key 2 C: X2, S: X4. More...
mbedtls_ecp_point | Xp1
| Peer public key 1 C: X3, S: X1. More...
mbedtls_ecp_point | Xp2
| Peer public key 2 C: X4, S: X2. More...
mbedtls_ecp_point | Xp
| Peer public key C: Xs, S: Xc. More...
mbedtls_mpi | xm1
| My private key 1 C: x1, S: x3. More...
mbedtls_mpi | xm2
| My private key 2 C: x2, S: x4. More...
mbedtls_mpi | s
| Pre-shared secret (passphrase) More...

## Detailed Description

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 69 of file ecjpake.h.

## Field Documentation

mbedtls_ecp_group mbedtls_ecjpake_context::grp

Elliptic curve.

Definition at line 72 of file ecjpake.h.

const mbedtls_md_info_t* mbedtls_ecjpake_context::md_info

Hash to use.

Definition at line 71 of file ecjpake.h.

int mbedtls_ecjpake_context::point_format

Format for point export.

Definition at line 74 of file ecjpake.h.

mbedtls_ecjpake_role mbedtls_ecjpake_context::role

Are we client or server?

Definition at line 73 of file ecjpake.h.

mbedtls_mpi mbedtls_ecjpake_context::s

Pre-shared secret (passphrase)

Definition at line 85 of file ecjpake.h.

mbedtls_ecp_point mbedtls_ecjpake_context::Xm1

My public key 1 C: X1, S: X3.

Definition at line 76 of file ecjpake.h.

mbedtls_mpi mbedtls_ecjpake_context::xm1

My private key 1 C: x1, S: x3.

Definition at line 82 of file ecjpake.h.

mbedtls_ecp_point mbedtls_ecjpake_context::Xm2

My public key 2 C: X2, S: X4.

Definition at line 77 of file ecjpake.h.

mbedtls_mpi mbedtls_ecjpake_context::xm2

My private key 2 C: x2, S: x4.

Definition at line 83 of file ecjpake.h.

mbedtls_ecp_point mbedtls_ecjpake_context::Xp

Peer public key C: Xs, S: Xc.

Definition at line 80 of file ecjpake.h.

mbedtls_ecp_point mbedtls_ecjpake_context::Xp1

Peer public key 1 C: X3, S: X1.

Definition at line 78 of file ecjpake.h.

mbedtls_ecp_point mbedtls_ecjpake_context::Xp2

Peer public key 2 C: X4, S: X2.

Definition at line 79 of file ecjpake.h.

The documentation for this struct was generated from the following file:

- ecjpake.h