summaryrefslogtreecommitdiffstats
path: root/3rd_party/libsrp6a-sha512/README.md
blob: 4affe4a1884855c0b8bbd5419dc5fcf7ac6372b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# SRP6a-sha512 library

## About

This library is based on Stanford's Secure Remote Password (SRP) protocol
implementation, or more precise on the `libsrp` part thereof.
The entire source code for the SRP project can be obtained from [here](https://github.com/secure-remote-password/stanford-srp).

It has been adapted to the needs of the libimobiledevice project, and
contains just a part of the original code; it only supports the SRP6a
client method which has been modified to use SHA512 instead of SHA1.
The only supported SRP method is `SRP6a_sha512_client_method()`.
Besides that, support for MbedTLS has been added.

Also, all server-side code has been removed, and the client-side code
has been reduced to a minimum, so that basically only the following
functions remain operational:

- `SRP_initialize_library`
- `SRP_new`
- `SRP_free`
- `SRP_set_user_raw`
- `SRP_set_params`
- `SRP_set_auth_password`
- `SRP_gen_pub`
- `SRP_compute_key`
- `SRP_respond`
- `SRP_verify`

Anything else has not been tested and must be considered non-functional.

## License

The license of the original work does still apply and can be found in the
LICENSE file that comes with the code.