Struct ClientRegistrationWorkflow

Source
pub struct ClientRegistrationWorkflow<'c, D: Digest> { /* private fields */ }
Expand description

Workflow for generating the salt and the verifier for the server

In SRP6a, the server stores as salt and a verifier. The salt is a random binary value that will be sent to the client during authentication. The verifier will be stored secretly on the server and used to derive the common secret key during authentication.

Implementations§

Source§

impl<'c, D: Digest> ClientRegistrationWorkflow<'c, D>

Source

pub fn new(group: &'c SrpGroup) -> Self

Create a new instance

group specifies the group (safe prime n and generator g) used for SRP.

Source

pub fn generate_verifier( &self, params: GenerateVerifierParams, ) -> Result<Verifier>

Generates the verifier

If None is provided as salt, a new random salt value is generated. A verifier is then generated from the given user credentials username and password.

Auto Trait Implementations§

§

impl<'c, D> Freeze for ClientRegistrationWorkflow<'c, D>

§

impl<'c, D> RefUnwindSafe for ClientRegistrationWorkflow<'c, D>
where D: RefUnwindSafe,

§

impl<'c, D> Send for ClientRegistrationWorkflow<'c, D>
where D: Send,

§

impl<'c, D> Sync for ClientRegistrationWorkflow<'c, D>
where D: Sync,

§

impl<'c, D> Unpin for ClientRegistrationWorkflow<'c, D>
where D: Unpin,

§

impl<'c, D> UnwindSafe for ClientRegistrationWorkflow<'c, D>
where D: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.