1 # RustCrypto: PAKEs [![Build Status](https://travis-ci.org/RustCrypto/PAKEs.svg?branch=master)](https://travis-ci.org/RustCrypto/PAKEs)
2 [Password-Authenticated Key Agreement][1] protocols implementation.
4 [![dependency status](https://deps.rs/repo/github/RustCrypto/PAKEs/status.svg)](https://deps.rs/repo/github/RustCrypto/PAKEs)
8 Crates in this repository have not yet received any formal cryptographic and
11 No efforts were yet taken in regards of [blinding][3] or erasing secrets from
14 **USE AT YOUR OWN RISK.**
16 ## Supported algorithms
18 | Name | Crates.io | Documentation |
19 | --------- |:----------:| :-----:|
20 | [SRP][2] | [![crates.io](https://img.shields.io/crates/v/srp.svg)](https://crates.io/crates/srp) | [![Documentation](https://docs.rs/srp/badge.svg)](https://docs.rs/srp) |
21 | [spake2][4] | [![crates.io](https://img.shields.io/crates/v/spake2.svg)](https://crates.io/crates/spake2) | [![Documentation](https://docs.rs/spake2/badge.svg)](https://docs.rs/spake2) |
23 ## Rust version requirements
25 The MSRV (Minimum Supported Rust Version) is 1.32.0 . If/when this changes,
26 it will be noted in the changelog, and the crate semver will be updated. So
27 downstream projects should depend upon e.g. `spake2 = "0.2"` to avoid picking
28 up new versions that would require a newer compiler.
30 SRP-v0.4.1 actually works with rustc-1.31.1, but this will probably be
31 changed in the next release.
33 SPAKE2 required rustc-1.32 beginning with spake2-v0.2.0 .
35 Our CI scripts check all builds against a pinned version of rustc to test the
36 intended MSRV. Sometimes upstream dependencies make surprising changes that
37 could require a newer version of rustc, without changes to the source code in
38 this repository, but hopefully this won't happen very frequently.
42 All crates are licensed under either of
44 * [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
45 * [MIT license](http://opensource.org/licenses/MIT)
51 Unless you explicitly state otherwise, any contribution intentionally submitted
52 for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
53 dual licensed as above, without any additional terms or conditions.
55 [1]: https://en.wikipedia.org/wiki/Password-authenticated_key_agreement
56 [2]: https://en.wikipedia.org/wiki/Secure_Remote_Password_protocol
57 [3]: https://en.wikipedia.org/wiki/Blinding_(cryptography)
58 [4]: https://www.di.ens.fr/~mabdalla/papers/AbPo05a-letter.pdf