Struct esp_idf_sys::mbedtls_ecjpake_context
source · #[repr(C)]pub struct mbedtls_ecjpake_context {
pub private_md_type: mbedtls_md_type_t,
pub private_grp: mbedtls_ecp_group,
pub private_role: mbedtls_ecjpake_role,
pub private_point_format: c_int,
pub private_Xm1: mbedtls_ecp_point,
pub private_Xm2: mbedtls_ecp_point,
pub private_Xp1: mbedtls_ecp_point,
pub private_Xp2: mbedtls_ecp_point,
pub private_Xp: mbedtls_ecp_point,
pub private_xm1: mbedtls_mpi,
pub private_xm2: mbedtls_mpi,
pub private_s: mbedtls_mpi,
}
Expand 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 convention from the Thread v1.0 spec. Correspondence is indicated in the description as a pair C: client name, S: server name
Fields§
§private_md_type: mbedtls_md_type_t
< Hash to use
private_grp: mbedtls_ecp_group
< Elliptic curve
private_role: mbedtls_ecjpake_role
< Are we client or server?
private_point_format: c_int
< Format for point export
private_Xm1: mbedtls_ecp_point
< My public key 1 C: X1, S: X3
private_Xm2: mbedtls_ecp_point
< My public key 2 C: X2, S: X4
private_Xp1: mbedtls_ecp_point
< Peer public key 1 C: X3, S: X1
private_Xp2: mbedtls_ecp_point
< Peer public key 2 C: X4, S: X2
private_Xp: mbedtls_ecp_point
< Peer public key C: Xs, S: Xc
private_xm1: mbedtls_mpi
< My private key 1 C: x1, S: x3
private_xm2: mbedtls_mpi
< My private key 2 C: x2, S: x4
private_s: mbedtls_mpi
< Pre-shared secret (passphrase)
Trait Implementations§
source§impl Clone for mbedtls_ecjpake_context
impl Clone for mbedtls_ecjpake_context
source§fn clone(&self) -> mbedtls_ecjpake_context
fn clone(&self) -> mbedtls_ecjpake_context
Returns a copy of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for mbedtls_ecjpake_context
impl Debug for mbedtls_ecjpake_context
source§impl Default for mbedtls_ecjpake_context
impl Default for mbedtls_ecjpake_context
impl Copy for mbedtls_ecjpake_context
Auto Trait Implementations§
impl Freeze for mbedtls_ecjpake_context
impl RefUnwindSafe for mbedtls_ecjpake_context
impl !Send for mbedtls_ecjpake_context
impl !Sync for mbedtls_ecjpake_context
impl Unpin for mbedtls_ecjpake_context
impl UnwindSafe for mbedtls_ecjpake_context
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)