sl_se_ecjpake_context_t Struct Reference
EC J-PAKE context structure.
#include <sl_se_manager_types.h>
Data Fields |
|
| sl_se_command_context_t * | cmd_ctx |
|
Pointer to command context object.
|
|
| uint32_t | curve_flags |
|
Curve flags to use.
|
|
| sl_se_ecjpake_role_t | role |
|
Are we client or server?
|
|
| char | pwd [32] |
|
J-PAKE password.
|
|
| size_t | pwd_len |
|
J-PAKE password length.
|
|
| uint8_t | r [32] |
|
Random scalar for exchange.
|
|
| uint8_t | Xm1 [64] |
|
Our point 1 (round 1)
|
|
| uint8_t | Xm2 [64] |
|
Our point 2 (round 1)
|
|
| uint8_t | Xp1 [64] |
|
Their point 1 (round 1)
|
|
| uint8_t | Xp2 [64] |
|
Their point 2 (round 1)
|
|
| uint8_t | Xp [64] |
|
Their point (round 2)
|
|
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 convention from the Thread v1.0 spec. Correspondance is indicated in the description as a pair C: client name, S: server name
Field Documentation
◆ cmd_ctx
| sl_se_command_context_t * sl_se_ecjpake_context_t::cmd_ctx |
Pointer to command context object.
◆ curve_flags
| uint32_t sl_se_ecjpake_context_t::curve_flags |
Curve flags to use.
◆ role
| sl_se_ecjpake_role_t sl_se_ecjpake_context_t::role |
Are we client or server?
◆ pwd
| char sl_se_ecjpake_context_t::pwd[32] |
J-PAKE password.
◆ pwd_len
| size_t sl_se_ecjpake_context_t::pwd_len |
J-PAKE password length.
◆ r
| uint8_t sl_se_ecjpake_context_t::r[32] |
Random scalar for exchange.
◆ Xm1
| uint8_t sl_se_ecjpake_context_t::Xm1[64] |
Our point 1 (round 1)
◆ Xm2
| uint8_t sl_se_ecjpake_context_t::Xm2[64] |
Our point 2 (round 1)
◆ Xp1
| uint8_t sl_se_ecjpake_context_t::Xp1[64] |
Their point 1 (round 1)
◆ Xp2
| uint8_t sl_se_ecjpake_context_t::Xp2[64] |
Their point 2 (round 1)
◆ Xp
| uint8_t sl_se_ecjpake_context_t::Xp[64] |
Their point (round 2)