pub struct Sas { /* private fields */ }
Expand description
A struct representing a short auth string verification object.
This object can be used to establish a shared secret to perform the short auth string based key verification.
Implementations
sourceimpl Sas
impl Sas
sourcepub fn new() -> Self
pub fn new() -> Self
Create a new random verification object
This creates an ephemeral curve25519 keypair that can be used to establish a shared secret.
sourcepub fn public_key(&self) -> Curve25519PublicKey
pub fn public_key(&self) -> Curve25519PublicKey
Get the public key that can be used to establish a shared secret.
sourcepub fn diffie_hellman(
self,
their_public_key: Curve25519PublicKey
) -> Result<EstablishedSas, KeyError>
pub fn diffie_hellman(
self,
their_public_key: Curve25519PublicKey
) -> Result<EstablishedSas, KeyError>
Establishes a SAS secret by performing a DH handshake with another public key.
Returns an EstablishedSas
object which can be used to generate
SasBytes
if the given public key was valid, otherwise None
.
sourcepub fn diffie_hellman_with_raw(
self,
other_public_key: &str
) -> Result<EstablishedSas, KeyError>
pub fn diffie_hellman_with_raw(
self,
other_public_key: &str
) -> Result<EstablishedSas, KeyError>
Establishes a SAS secret by performing a DH handshake with another public key in “raw”, base64-encoded form.
Returns an EstablishedSas
object which can be used to generate
SasBytes
if the received public key is valid, otherwise None
.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Sas
impl Send for Sas
impl Sync for Sas
impl Unpin for Sas
impl UnwindSafe for Sas
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more