Expand description

default prime modulus and generator numbers taken from RFC5054 Appendix A, so they can be treated as vetted and safe.

Usage:

use srp6::{Srp6_4096, HostAPI};

let srp = Srp6_4096::default();
let (_salt_s, _verifier_v) = srp.generate_new_user_secrets("Bob", "secret-password");

then you can alias a type for a convienice e.g.:

use srp6::{Srp6, Generator, TryInto};

pub type MyCustomSrp6 = Srp6<2, 2>;
pub fn my_custom_srp6_new() -> MyCustomSrp6 {
    MyCustomSrp6::new(
        Generator::from(5),
        "FE27".try_into().unwrap(),
    ).unwrap()
}

let my_srp = my_custom_srp6_new();

Type Definitions

length of PrimeModulus N and Salt s is 2048 bit / 256 byte. taken from the 2048-bit group at RFC5054 Appendix A

length of PrimeModulus N and Salt s is 4096 bit / 512 byte. taken from the 4096-bit group at RFC5054 Appendix A